]> gitweb.factorcode.org Git - factor.git/blob - basis/atk/Atk-1.0.gir
vm: fix arm files
[factor.git] / basis / atk / Atk-1.0.gir
1 <?xml version="1.0"?>
2 <!-- This file was automatically generated from C sources - DO NOT EDIT!
3 To affect the contents of this file, edit the original C definitions,
4 and/or use gtk-doc annotations.  -->
5 <repository version="1.2"
6             xmlns="http://www.gtk.org/introspection/core/1.0"
7             xmlns:c="http://www.gtk.org/introspection/c/1.0"
8             xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
9   <include name="GLib" version="2.0"/>
10   <include name="GObject" version="2.0"/>
11   <package name="atk"/>
12   <namespace name="Atk"
13              version="1.0"
14              shared-library="libatk-1.0.so.0"
15              c:identifier-prefixes="Atk"
16              c:symbol-prefixes="atk">
17     <alias name="AttributeSet">
18       <doc xml:whitespace="preserve">This is a singly-linked list (a #GSList) of #AtkAttribute. It is
19 used by atk_text_get_run_attributes(), atk_text_get_default_attributes()
20 and atk_editable_text_set_run_attributes()</doc>
21       <type name="gpointer" c:type="gpointer"/>
22     </alias>
23     <alias name="State" c:type="AtkState">
24       <type name="guint64" c:type="guint64"/>
25     </alias>
26     <interface name="Action"
27                c:symbol-prefix="action"
28                c:type="AtkAction"
29                glib:type-name="AtkAction"
30                glib:get-type="atk_action_get_type"
31                glib:type-struct="ActionIface">
32       <virtual-method name="do_action" invoker="do_action">
33         <doc xml:whitespace="preserve">Perform the specified action on the object.</doc>
34         <return-value transfer-ownership="none">
35           <doc xml:whitespace="preserve">%TRUE if success, %FALSE otherwise</doc>
36           <type name="gboolean" c:type="gboolean"/>
37         </return-value>
38         <parameters>
39           <parameter name="i" transfer-ownership="none">
40             <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
41             <type name="gint" c:type="gint"/>
42           </parameter>
43         </parameters>
44       </virtual-method>
45       <virtual-method name="get_description" invoker="get_description">
46         <doc xml:whitespace="preserve">Returns a description of the specified action of the object.
47 Returns a description string, or %NULL
48 if @action does not implement this interface.</doc>
49         <return-value transfer-ownership="none">
50           <type name="utf8" c:type="gchar*"/>
51         </return-value>
52         <parameters>
53           <parameter name="i" transfer-ownership="none">
54             <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
55             <type name="gint" c:type="gint"/>
56           </parameter>
57         </parameters>
58       </virtual-method>
59       <virtual-method name="get_keybinding" invoker="get_keybinding">
60         <doc xml:whitespace="preserve">Returns a keybinding associated with this action, if one exists.
61 The returned string is in the format "&lt;a&gt;;&lt;b&gt;;&lt;c&gt;"
62 (i.e. semicolon-delimited), where &lt;a&gt; is the keybinding which
63 activates the object if it is presently enabled onscreen, 
64 &lt;b&gt; corresponds to the keybinding or sequence of keys
65 which invokes the action even if the relevant element is not
66 currently posted on screen (for instance, for a menu item it
67 posts the parent menus before invoking).  The last token in the
68 above string, if non-empty, represents a keyboard shortcut which
69 invokes the same action without posting the component or its
70 enclosing menus or dialogs. 
71 Returns a string representing the available keybindings, or %NULL
72 if there is no keybinding for this action.</doc>
73         <return-value transfer-ownership="none">
74           <type name="utf8" c:type="gchar*"/>
75         </return-value>
76         <parameters>
77           <parameter name="i" transfer-ownership="none">
78             <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
79             <type name="gint" c:type="gint"/>
80           </parameter>
81         </parameters>
82       </virtual-method>
83       <virtual-method name="get_localized_name" invoker="get_localized_name">
84         <doc xml:whitespace="preserve">Returns the localized name of the specified action of the object.
85 Returns a name string, or %NULL
86 if @action does not implement this interface.</doc>
87         <return-value transfer-ownership="none">
88           <type name="utf8" c:type="gchar*"/>
89         </return-value>
90         <parameters>
91           <parameter name="i" transfer-ownership="none">
92             <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
93             <type name="gint" c:type="gint"/>
94           </parameter>
95         </parameters>
96       </virtual-method>
97       <virtual-method name="get_n_actions" invoker="get_n_actions">
98         <doc xml:whitespace="preserve">Gets the number of accessible actions available on the object.
99 If there are more than one, the first one is considered the
100 "default" action of the object.
101 implement this interface.</doc>
102         <return-value transfer-ownership="none">
103           <doc xml:whitespace="preserve">a the number of actions, or 0 if @action does not</doc>
104           <type name="gint" c:type="gint"/>
105         </return-value>
106       </virtual-method>
107       <virtual-method name="get_name" invoker="get_name">
108         <doc xml:whitespace="preserve">Returns a non-localized string naming the specified action of the 
109 object. This name is generally not descriptive of the end result 
110 of the action, but instead names the 'interaction type' which the 
111 object supports. By convention, the above strings should be used to 
112 represent the actions which correspond to the common point-and-click 
113 "click", "press", "release", "drag", "drop", "popup", etc.
114 The "popup" action should be used to pop up a context menu for the 
115 object, if one exists.
116 For technical reasons, some toolkits cannot guarantee that the 
117 reported action is actually 'bound' to a nontrivial user event;
118 i.e. the result of some actions via atk_action_do_action() may be
119 NIL.
120 Returns a name string, or %NULL
121 if @action does not implement this interface.</doc>
122         <return-value transfer-ownership="none">
123           <type name="utf8" c:type="gchar*"/>
124         </return-value>
125         <parameters>
126           <parameter name="i" transfer-ownership="none">
127             <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
128             <type name="gint" c:type="gint"/>
129           </parameter>
130         </parameters>
131       </virtual-method>
132       <virtual-method name="set_description" invoker="set_description">
133         <doc xml:whitespace="preserve">Sets a description of the specified action of the object.</doc>
134         <return-value transfer-ownership="none">
135           <doc xml:whitespace="preserve">a gboolean representing if the description was successfully set;</doc>
136           <type name="gboolean" c:type="gboolean"/>
137         </return-value>
138         <parameters>
139           <parameter name="i" transfer-ownership="none">
140             <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
141             <type name="gint" c:type="gint"/>
142           </parameter>
143           <parameter name="desc" transfer-ownership="none">
144             <doc xml:whitespace="preserve">the description to be assigned to this action</doc>
145             <type name="utf8" c:type="gchar*"/>
146           </parameter>
147         </parameters>
148       </virtual-method>
149       <method name="do_action" c:identifier="atk_action_do_action">
150         <doc xml:whitespace="preserve">Perform the specified action on the object.</doc>
151         <return-value transfer-ownership="none">
152           <doc xml:whitespace="preserve">%TRUE if success, %FALSE otherwise</doc>
153           <type name="gboolean" c:type="gboolean"/>
154         </return-value>
155         <parameters>
156           <parameter name="i" transfer-ownership="none">
157             <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
158             <type name="gint" c:type="gint"/>
159           </parameter>
160         </parameters>
161       </method>
162       <method name="get_description" c:identifier="atk_action_get_description">
163         <doc xml:whitespace="preserve">Returns a description of the specified action of the object.
164 Returns a description string, or %NULL
165 if @action does not implement this interface.</doc>
166         <return-value transfer-ownership="none">
167           <type name="utf8" c:type="gchar*"/>
168         </return-value>
169         <parameters>
170           <parameter name="i" transfer-ownership="none">
171             <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
172             <type name="gint" c:type="gint"/>
173           </parameter>
174         </parameters>
175       </method>
176       <method name="get_keybinding" c:identifier="atk_action_get_keybinding">
177         <doc xml:whitespace="preserve">Returns a keybinding associated with this action, if one exists.
178 The returned string is in the format "&lt;a&gt;;&lt;b&gt;;&lt;c&gt;"
179 (i.e. semicolon-delimited), where &lt;a&gt; is the keybinding which
180 activates the object if it is presently enabled onscreen, 
181 &lt;b&gt; corresponds to the keybinding or sequence of keys
182 which invokes the action even if the relevant element is not
183 currently posted on screen (for instance, for a menu item it
184 posts the parent menus before invoking).  The last token in the
185 above string, if non-empty, represents a keyboard shortcut which
186 invokes the same action without posting the component or its
187 enclosing menus or dialogs. 
188 Returns a string representing the available keybindings, or %NULL
189 if there is no keybinding for this action.</doc>
190         <return-value transfer-ownership="none">
191           <type name="utf8" c:type="gchar*"/>
192         </return-value>
193         <parameters>
194           <parameter name="i" transfer-ownership="none">
195             <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
196             <type name="gint" c:type="gint"/>
197           </parameter>
198         </parameters>
199       </method>
200       <method name="get_localized_name"
201               c:identifier="atk_action_get_localized_name">
202         <doc xml:whitespace="preserve">Returns the localized name of the specified action of the object.
203 Returns a name string, or %NULL
204 if @action does not implement this interface.</doc>
205         <return-value transfer-ownership="none">
206           <type name="utf8" c:type="gchar*"/>
207         </return-value>
208         <parameters>
209           <parameter name="i" transfer-ownership="none">
210             <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
211             <type name="gint" c:type="gint"/>
212           </parameter>
213         </parameters>
214       </method>
215       <method name="get_n_actions" c:identifier="atk_action_get_n_actions">
216         <doc xml:whitespace="preserve">Gets the number of accessible actions available on the object.
217 If there are more than one, the first one is considered the
218 "default" action of the object.
219 implement this interface.</doc>
220         <return-value transfer-ownership="none">
221           <doc xml:whitespace="preserve">a the number of actions, or 0 if @action does not</doc>
222           <type name="gint" c:type="gint"/>
223         </return-value>
224       </method>
225       <method name="get_name" c:identifier="atk_action_get_name">
226         <doc xml:whitespace="preserve">Returns a non-localized string naming the specified action of the 
227 object. This name is generally not descriptive of the end result 
228 of the action, but instead names the 'interaction type' which the 
229 object supports. By convention, the above strings should be used to 
230 represent the actions which correspond to the common point-and-click 
231 "click", "press", "release", "drag", "drop", "popup", etc.
232 The "popup" action should be used to pop up a context menu for the 
233 object, if one exists.
234 For technical reasons, some toolkits cannot guarantee that the 
235 reported action is actually 'bound' to a nontrivial user event;
236 i.e. the result of some actions via atk_action_do_action() may be
237 NIL.
238 Returns a name string, or %NULL
239 if @action does not implement this interface.</doc>
240         <return-value transfer-ownership="none">
241           <type name="utf8" c:type="gchar*"/>
242         </return-value>
243         <parameters>
244           <parameter name="i" transfer-ownership="none">
245             <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
246             <type name="gint" c:type="gint"/>
247           </parameter>
248         </parameters>
249       </method>
250       <method name="set_description" c:identifier="atk_action_set_description">
251         <doc xml:whitespace="preserve">Sets a description of the specified action of the object.</doc>
252         <return-value transfer-ownership="none">
253           <doc xml:whitespace="preserve">a gboolean representing if the description was successfully set;</doc>
254           <type name="gboolean" c:type="gboolean"/>
255         </return-value>
256         <parameters>
257           <parameter name="i" transfer-ownership="none">
258             <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
259             <type name="gint" c:type="gint"/>
260           </parameter>
261           <parameter name="desc" transfer-ownership="none">
262             <doc xml:whitespace="preserve">the description to be assigned to this action</doc>
263             <type name="utf8" c:type="gchar*"/>
264           </parameter>
265         </parameters>
266       </method>
267     </interface>
268     <record name="ActionIface"
269             c:type="AtkActionIface"
270             glib:is-gtype-struct-for="Action">
271       <field name="parent">
272         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
273       </field>
274       <field name="do_action">
275         <callback name="do_action">
276           <return-value transfer-ownership="none">
277             <doc xml:whitespace="preserve">%TRUE if success, %FALSE otherwise</doc>
278             <type name="gboolean" c:type="gboolean"/>
279           </return-value>
280           <parameters>
281             <parameter name="action" transfer-ownership="none">
282               <type name="Action" c:type="AtkAction*"/>
283             </parameter>
284             <parameter name="i" transfer-ownership="none">
285               <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
286               <type name="gint" c:type="gint"/>
287             </parameter>
288           </parameters>
289         </callback>
290       </field>
291       <field name="get_n_actions">
292         <callback name="get_n_actions">
293           <return-value transfer-ownership="none">
294             <doc xml:whitespace="preserve">a the number of actions, or 0 if @action does not</doc>
295             <type name="gint" c:type="gint"/>
296           </return-value>
297           <parameters>
298             <parameter name="action" transfer-ownership="none">
299               <type name="Action" c:type="AtkAction*"/>
300             </parameter>
301           </parameters>
302         </callback>
303       </field>
304       <field name="get_description">
305         <callback name="get_description">
306           <return-value transfer-ownership="none">
307             <type name="utf8" c:type="gchar*"/>
308           </return-value>
309           <parameters>
310             <parameter name="action" transfer-ownership="none">
311               <type name="Action" c:type="AtkAction*"/>
312             </parameter>
313             <parameter name="i" transfer-ownership="none">
314               <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
315               <type name="gint" c:type="gint"/>
316             </parameter>
317           </parameters>
318         </callback>
319       </field>
320       <field name="get_name">
321         <callback name="get_name">
322           <return-value transfer-ownership="none">
323             <type name="utf8" c:type="gchar*"/>
324           </return-value>
325           <parameters>
326             <parameter name="action" transfer-ownership="none">
327               <type name="Action" c:type="AtkAction*"/>
328             </parameter>
329             <parameter name="i" transfer-ownership="none">
330               <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
331               <type name="gint" c:type="gint"/>
332             </parameter>
333           </parameters>
334         </callback>
335       </field>
336       <field name="get_keybinding">
337         <callback name="get_keybinding">
338           <return-value transfer-ownership="none">
339             <type name="utf8" c:type="gchar*"/>
340           </return-value>
341           <parameters>
342             <parameter name="action" transfer-ownership="none">
343               <type name="Action" c:type="AtkAction*"/>
344             </parameter>
345             <parameter name="i" transfer-ownership="none">
346               <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
347               <type name="gint" c:type="gint"/>
348             </parameter>
349           </parameters>
350         </callback>
351       </field>
352       <field name="set_description">
353         <callback name="set_description">
354           <return-value transfer-ownership="none">
355             <doc xml:whitespace="preserve">a gboolean representing if the description was successfully set;</doc>
356             <type name="gboolean" c:type="gboolean"/>
357           </return-value>
358           <parameters>
359             <parameter name="action" transfer-ownership="none">
360               <type name="Action" c:type="AtkAction*"/>
361             </parameter>
362             <parameter name="i" transfer-ownership="none">
363               <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
364               <type name="gint" c:type="gint"/>
365             </parameter>
366             <parameter name="desc" transfer-ownership="none">
367               <doc xml:whitespace="preserve">the description to be assigned to this action</doc>
368               <type name="utf8" c:type="gchar*"/>
369             </parameter>
370           </parameters>
371         </callback>
372       </field>
373       <field name="get_localized_name">
374         <callback name="get_localized_name">
375           <return-value transfer-ownership="none">
376             <type name="utf8" c:type="gchar*"/>
377           </return-value>
378           <parameters>
379             <parameter name="action" transfer-ownership="none">
380               <type name="Action" c:type="AtkAction*"/>
381             </parameter>
382             <parameter name="i" transfer-ownership="none">
383               <doc xml:whitespace="preserve">the action index corresponding to the action to be performed</doc>
384               <type name="gint" c:type="gint"/>
385             </parameter>
386           </parameters>
387         </callback>
388       </field>
389       <field name="pad2">
390         <type name="Function" c:type="AtkFunction"/>
391       </field>
392     </record>
393     <record name="Attribute" c:type="AtkAttribute">
394       <doc xml:whitespace="preserve">A string name/value pair representing a text attribute.</doc>
395       <field name="name" writable="1">
396         <type name="utf8" c:type="gchar*"/>
397       </field>
398       <field name="value" writable="1">
399         <type name="utf8" c:type="gchar*"/>
400       </field>
401     </record>
402     <interface name="Component"
403                c:symbol-prefix="component"
404                c:type="AtkComponent"
405                glib:type-name="AtkComponent"
406                glib:get-type="atk_component_get_type"
407                glib:type-struct="ComponentIface">
408       <virtual-method name="add_focus_handler"
409                       invoker="add_focus_handler"
410                       introspectable="0">
411         <doc xml:whitespace="preserve">Add the specified handler to the set of functions to be called 
412 when this object receives focus events (in or out). If the handler is
413 already added it is not added again
414 or zero if the handler was already added.</doc>
415         <return-value transfer-ownership="none">
416           <doc xml:whitespace="preserve">a handler id which can be used in atk_component_remove_focus_handler</doc>
417           <type name="guint" c:type="guint"/>
418         </return-value>
419         <parameters>
420           <parameter name="handler" transfer-ownership="none">
421             <doc xml:whitespace="preserve">The #AtkFocusHandler to be attached to @component</doc>
422             <type name="FocusHandler" c:type="AtkFocusHandler"/>
423           </parameter>
424         </parameters>
425       </virtual-method>
426       <virtual-method name="contains" invoker="contains">
427         <doc xml:whitespace="preserve">Checks whether the specified point is within the extent of the @component.
428 the extent of the @component or not</doc>
429         <return-value transfer-ownership="none">
430           <doc xml:whitespace="preserve">%TRUE or %FALSE indicating whether the specified point is within</doc>
431           <type name="gboolean" c:type="gboolean"/>
432         </return-value>
433         <parameters>
434           <parameter name="x" transfer-ownership="none">
435             <doc xml:whitespace="preserve">x coordinate</doc>
436             <type name="gint" c:type="gint"/>
437           </parameter>
438           <parameter name="y" transfer-ownership="none">
439             <doc xml:whitespace="preserve">y coordinate</doc>
440             <type name="gint" c:type="gint"/>
441           </parameter>
442           <parameter name="coord_type" transfer-ownership="none">
443             <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
444             <type name="CoordType" c:type="AtkCoordType"/>
445           </parameter>
446         </parameters>
447       </virtual-method>
448       <virtual-method name="get_alpha" invoker="get_alpha" version="1.12">
449         <doc xml:whitespace="preserve">Returns the alpha value (i.e. the opacity) for this
450 (fully opaque).</doc>
451         <return-value transfer-ownership="none">
452           <doc xml:whitespace="preserve">An alpha value from 0 to 1.0, inclusive.</doc>
453           <type name="gdouble" c:type="gdouble"/>
454         </return-value>
455       </virtual-method>
456       <virtual-method name="get_extents" invoker="get_extents">
457         <doc xml:whitespace="preserve">Gets the rectangle which gives the extent of the @component.</doc>
458         <return-value transfer-ownership="none">
459           <type name="none" c:type="void"/>
460         </return-value>
461         <parameters>
462           <parameter name="x" transfer-ownership="none">
463             <doc xml:whitespace="preserve">address of #gint to put x coordinate</doc>
464             <type name="gint" c:type="gint*"/>
465           </parameter>
466           <parameter name="y" transfer-ownership="none">
467             <doc xml:whitespace="preserve">address of #gint to put y coordinate</doc>
468             <type name="gint" c:type="gint*"/>
469           </parameter>
470           <parameter name="width" transfer-ownership="none">
471             <doc xml:whitespace="preserve">address of #gint to put width</doc>
472             <type name="gint" c:type="gint*"/>
473           </parameter>
474           <parameter name="height" transfer-ownership="none">
475             <doc xml:whitespace="preserve">address of #gint to put height</doc>
476             <type name="gint" c:type="gint*"/>
477           </parameter>
478           <parameter name="coord_type" transfer-ownership="none">
479             <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
480             <type name="CoordType" c:type="AtkCoordType"/>
481           </parameter>
482         </parameters>
483       </virtual-method>
484       <virtual-method name="get_layer" invoker="get_layer">
485         <doc xml:whitespace="preserve">Gets the layer of the component.</doc>
486         <return-value transfer-ownership="none">
487           <doc xml:whitespace="preserve">an #AtkLayer which is the layer of the component</doc>
488           <type name="Layer" c:type="AtkLayer"/>
489         </return-value>
490       </virtual-method>
491       <virtual-method name="get_mdi_zorder" invoker="get_mdi_zorder">
492         <doc xml:whitespace="preserve">Gets the zorder of the component. The value G_MININT will be returned 
493 if the layer of the component is not ATK_LAYER_MDI or ATK_LAYER_WINDOW.
494 which the component is shown in relation to other components in the same 
495 container.</doc>
496         <return-value transfer-ownership="none">
497           <doc xml:whitespace="preserve">a gint which is the zorder of the component, i.e. the depth at</doc>
498           <type name="gint" c:type="gint"/>
499         </return-value>
500       </virtual-method>
501       <virtual-method name="get_position" invoker="get_position">
502         <doc xml:whitespace="preserve">Gets the position of @component in the form of 
503 a point specifying @component's top-left corner.</doc>
504         <return-value transfer-ownership="none">
505           <type name="none" c:type="void"/>
506         </return-value>
507         <parameters>
508           <parameter name="x" transfer-ownership="none">
509             <doc xml:whitespace="preserve">address of #gint to put x coordinate position</doc>
510             <type name="gint" c:type="gint*"/>
511           </parameter>
512           <parameter name="y" transfer-ownership="none">
513             <doc xml:whitespace="preserve">address of #gint to put y coordinate position</doc>
514             <type name="gint" c:type="gint*"/>
515           </parameter>
516           <parameter name="coord_type" transfer-ownership="none">
517             <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
518             <type name="CoordType" c:type="AtkCoordType"/>
519           </parameter>
520         </parameters>
521       </virtual-method>
522       <virtual-method name="get_size" invoker="get_size">
523         <doc xml:whitespace="preserve">Gets the size of the @component in terms of width and height.</doc>
524         <return-value transfer-ownership="none">
525           <type name="none" c:type="void"/>
526         </return-value>
527         <parameters>
528           <parameter name="width" transfer-ownership="none">
529             <doc xml:whitespace="preserve">address of #gint to put width of @component</doc>
530             <type name="gint" c:type="gint*"/>
531           </parameter>
532           <parameter name="height" transfer-ownership="none">
533             <doc xml:whitespace="preserve">address of #gint to put height of @component</doc>
534             <type name="gint" c:type="gint*"/>
535           </parameter>
536         </parameters>
537       </virtual-method>
538       <virtual-method name="grab_focus" invoker="grab_focus">
539         <doc xml:whitespace="preserve">Grabs focus for this @component.</doc>
540         <return-value transfer-ownership="none">
541           <doc xml:whitespace="preserve">%TRUE if successful, %FALSE otherwise.</doc>
542           <type name="gboolean" c:type="gboolean"/>
543         </return-value>
544       </virtual-method>
545       <virtual-method name="ref_accessible_at_point"
546                       invoker="ref_accessible_at_point"
547                       introspectable="0">
548         <doc xml:whitespace="preserve">Gets a reference to the accessible child, if one exists, at the
549 coordinate point specified by @x and @y.</doc>
550         <return-value>
551           <doc xml:whitespace="preserve">a reference to the accessible child, if one exists</doc>
552           <type name="Object" c:type="AtkObject*"/>
553         </return-value>
554         <parameters>
555           <parameter name="x" transfer-ownership="none">
556             <doc xml:whitespace="preserve">x coordinate</doc>
557             <type name="gint" c:type="gint"/>
558           </parameter>
559           <parameter name="y" transfer-ownership="none">
560             <doc xml:whitespace="preserve">y coordinate</doc>
561             <type name="gint" c:type="gint"/>
562           </parameter>
563           <parameter name="coord_type" transfer-ownership="none">
564             <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
565             <type name="CoordType" c:type="AtkCoordType"/>
566           </parameter>
567         </parameters>
568       </virtual-method>
569       <virtual-method name="remove_focus_handler"
570                       invoker="remove_focus_handler">
571         <doc xml:whitespace="preserve">Remove the handler specified by @handler_id from the list of
572 functions to be executed when this object receives focus events 
573 (in or out).</doc>
574         <return-value transfer-ownership="none">
575           <type name="none" c:type="void"/>
576         </return-value>
577         <parameters>
578           <parameter name="handler_id" transfer-ownership="none">
579             <doc xml:whitespace="preserve">the handler id of the focus handler to be removed from @component</doc>
580             <type name="guint" c:type="guint"/>
581           </parameter>
582         </parameters>
583       </virtual-method>
584       <virtual-method name="set_extents" invoker="set_extents">
585         <doc xml:whitespace="preserve">Sets the extents of @component.</doc>
586         <return-value transfer-ownership="none">
587           <doc xml:whitespace="preserve">%TRUE or %FALSE whether the extents were set or not</doc>
588           <type name="gboolean" c:type="gboolean"/>
589         </return-value>
590         <parameters>
591           <parameter name="x" transfer-ownership="none">
592             <doc xml:whitespace="preserve">x coordinate</doc>
593             <type name="gint" c:type="gint"/>
594           </parameter>
595           <parameter name="y" transfer-ownership="none">
596             <doc xml:whitespace="preserve">y coordinate</doc>
597             <type name="gint" c:type="gint"/>
598           </parameter>
599           <parameter name="width" transfer-ownership="none">
600             <doc xml:whitespace="preserve">width to set for @component</doc>
601             <type name="gint" c:type="gint"/>
602           </parameter>
603           <parameter name="height" transfer-ownership="none">
604             <doc xml:whitespace="preserve">height to set for @component</doc>
605             <type name="gint" c:type="gint"/>
606           </parameter>
607           <parameter name="coord_type" transfer-ownership="none">
608             <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
609             <type name="CoordType" c:type="AtkCoordType"/>
610           </parameter>
611         </parameters>
612       </virtual-method>
613       <virtual-method name="set_position" invoker="set_position">
614         <doc xml:whitespace="preserve">Sets the postition of @component.</doc>
615         <return-value transfer-ownership="none">
616           <doc xml:whitespace="preserve">%TRUE or %FALSE whether or not the position was set or not</doc>
617           <type name="gboolean" c:type="gboolean"/>
618         </return-value>
619         <parameters>
620           <parameter name="x" transfer-ownership="none">
621             <doc xml:whitespace="preserve">x coordinate</doc>
622             <type name="gint" c:type="gint"/>
623           </parameter>
624           <parameter name="y" transfer-ownership="none">
625             <doc xml:whitespace="preserve">y coordinate</doc>
626             <type name="gint" c:type="gint"/>
627           </parameter>
628           <parameter name="coord_type" transfer-ownership="none">
629             <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
630             <type name="CoordType" c:type="AtkCoordType"/>
631           </parameter>
632         </parameters>
633       </virtual-method>
634       <virtual-method name="set_size" invoker="set_size">
635         <doc xml:whitespace="preserve">Set the size of the @component in terms of width and height.</doc>
636         <return-value transfer-ownership="none">
637           <doc xml:whitespace="preserve">%TRUE or %FALSE whether the size was set or not</doc>
638           <type name="gboolean" c:type="gboolean"/>
639         </return-value>
640         <parameters>
641           <parameter name="width" transfer-ownership="none">
642             <doc xml:whitespace="preserve">width to set for @component</doc>
643             <type name="gint" c:type="gint"/>
644           </parameter>
645           <parameter name="height" transfer-ownership="none">
646             <doc xml:whitespace="preserve">height to set for @component</doc>
647             <type name="gint" c:type="gint"/>
648           </parameter>
649         </parameters>
650       </virtual-method>
651       <method name="add_focus_handler"
652               c:identifier="atk_component_add_focus_handler"
653               introspectable="0">
654         <doc xml:whitespace="preserve">Add the specified handler to the set of functions to be called 
655 when this object receives focus events (in or out). If the handler is
656 already added it is not added again
657 or zero if the handler was already added.</doc>
658         <return-value transfer-ownership="none">
659           <doc xml:whitespace="preserve">a handler id which can be used in atk_component_remove_focus_handler</doc>
660           <type name="guint" c:type="guint"/>
661         </return-value>
662         <parameters>
663           <parameter name="handler" transfer-ownership="none">
664             <doc xml:whitespace="preserve">The #AtkFocusHandler to be attached to @component</doc>
665             <type name="FocusHandler" c:type="AtkFocusHandler"/>
666           </parameter>
667         </parameters>
668       </method>
669       <method name="contains" c:identifier="atk_component_contains">
670         <doc xml:whitespace="preserve">Checks whether the specified point is within the extent of the @component.
671 the extent of the @component or not</doc>
672         <return-value transfer-ownership="none">
673           <doc xml:whitespace="preserve">%TRUE or %FALSE indicating whether the specified point is within</doc>
674           <type name="gboolean" c:type="gboolean"/>
675         </return-value>
676         <parameters>
677           <parameter name="x" transfer-ownership="none">
678             <doc xml:whitespace="preserve">x coordinate</doc>
679             <type name="gint" c:type="gint"/>
680           </parameter>
681           <parameter name="y" transfer-ownership="none">
682             <doc xml:whitespace="preserve">y coordinate</doc>
683             <type name="gint" c:type="gint"/>
684           </parameter>
685           <parameter name="coord_type" transfer-ownership="none">
686             <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
687             <type name="CoordType" c:type="AtkCoordType"/>
688           </parameter>
689         </parameters>
690       </method>
691       <method name="get_alpha"
692               c:identifier="atk_component_get_alpha"
693               version="1.12">
694         <doc xml:whitespace="preserve">Returns the alpha value (i.e. the opacity) for this
695 (fully opaque).</doc>
696         <return-value transfer-ownership="none">
697           <doc xml:whitespace="preserve">An alpha value from 0 to 1.0, inclusive.</doc>
698           <type name="gdouble" c:type="gdouble"/>
699         </return-value>
700       </method>
701       <method name="get_extents" c:identifier="atk_component_get_extents">
702         <doc xml:whitespace="preserve">Gets the rectangle which gives the extent of the @component.</doc>
703         <return-value transfer-ownership="none">
704           <type name="none" c:type="void"/>
705         </return-value>
706         <parameters>
707           <parameter name="x" transfer-ownership="none">
708             <doc xml:whitespace="preserve">address of #gint to put x coordinate</doc>
709             <type name="gint" c:type="gint*"/>
710           </parameter>
711           <parameter name="y" transfer-ownership="none">
712             <doc xml:whitespace="preserve">address of #gint to put y coordinate</doc>
713             <type name="gint" c:type="gint*"/>
714           </parameter>
715           <parameter name="width" transfer-ownership="none">
716             <doc xml:whitespace="preserve">address of #gint to put width</doc>
717             <type name="gint" c:type="gint*"/>
718           </parameter>
719           <parameter name="height" transfer-ownership="none">
720             <doc xml:whitespace="preserve">address of #gint to put height</doc>
721             <type name="gint" c:type="gint*"/>
722           </parameter>
723           <parameter name="coord_type" transfer-ownership="none">
724             <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
725             <type name="CoordType" c:type="AtkCoordType"/>
726           </parameter>
727         </parameters>
728       </method>
729       <method name="get_layer" c:identifier="atk_component_get_layer">
730         <doc xml:whitespace="preserve">Gets the layer of the component.</doc>
731         <return-value transfer-ownership="none">
732           <doc xml:whitespace="preserve">an #AtkLayer which is the layer of the component</doc>
733           <type name="Layer" c:type="AtkLayer"/>
734         </return-value>
735       </method>
736       <method name="get_mdi_zorder"
737               c:identifier="atk_component_get_mdi_zorder">
738         <doc xml:whitespace="preserve">Gets the zorder of the component. The value G_MININT will be returned 
739 if the layer of the component is not ATK_LAYER_MDI or ATK_LAYER_WINDOW.
740 which the component is shown in relation to other components in the same 
741 container.</doc>
742         <return-value transfer-ownership="none">
743           <doc xml:whitespace="preserve">a gint which is the zorder of the component, i.e. the depth at</doc>
744           <type name="gint" c:type="gint"/>
745         </return-value>
746       </method>
747       <method name="get_position" c:identifier="atk_component_get_position">
748         <doc xml:whitespace="preserve">Gets the position of @component in the form of 
749 a point specifying @component's top-left corner.</doc>
750         <return-value transfer-ownership="none">
751           <type name="none" c:type="void"/>
752         </return-value>
753         <parameters>
754           <parameter name="x" transfer-ownership="none">
755             <doc xml:whitespace="preserve">address of #gint to put x coordinate position</doc>
756             <type name="gint" c:type="gint*"/>
757           </parameter>
758           <parameter name="y" transfer-ownership="none">
759             <doc xml:whitespace="preserve">address of #gint to put y coordinate position</doc>
760             <type name="gint" c:type="gint*"/>
761           </parameter>
762           <parameter name="coord_type" transfer-ownership="none">
763             <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
764             <type name="CoordType" c:type="AtkCoordType"/>
765           </parameter>
766         </parameters>
767       </method>
768       <method name="get_size" c:identifier="atk_component_get_size">
769         <doc xml:whitespace="preserve">Gets the size of the @component in terms of width and height.</doc>
770         <return-value transfer-ownership="none">
771           <type name="none" c:type="void"/>
772         </return-value>
773         <parameters>
774           <parameter name="width" transfer-ownership="none">
775             <doc xml:whitespace="preserve">address of #gint to put width of @component</doc>
776             <type name="gint" c:type="gint*"/>
777           </parameter>
778           <parameter name="height" transfer-ownership="none">
779             <doc xml:whitespace="preserve">address of #gint to put height of @component</doc>
780             <type name="gint" c:type="gint*"/>
781           </parameter>
782         </parameters>
783       </method>
784       <method name="grab_focus" c:identifier="atk_component_grab_focus">
785         <doc xml:whitespace="preserve">Grabs focus for this @component.</doc>
786         <return-value transfer-ownership="none">
787           <doc xml:whitespace="preserve">%TRUE if successful, %FALSE otherwise.</doc>
788           <type name="gboolean" c:type="gboolean"/>
789         </return-value>
790       </method>
791       <method name="ref_accessible_at_point"
792               c:identifier="atk_component_ref_accessible_at_point"
793               introspectable="0">
794         <doc xml:whitespace="preserve">Gets a reference to the accessible child, if one exists, at the
795 coordinate point specified by @x and @y.</doc>
796         <return-value>
797           <doc xml:whitespace="preserve">a reference to the accessible child, if one exists</doc>
798           <type name="Object" c:type="AtkObject*"/>
799         </return-value>
800         <parameters>
801           <parameter name="x" transfer-ownership="none">
802             <doc xml:whitespace="preserve">x coordinate</doc>
803             <type name="gint" c:type="gint"/>
804           </parameter>
805           <parameter name="y" transfer-ownership="none">
806             <doc xml:whitespace="preserve">y coordinate</doc>
807             <type name="gint" c:type="gint"/>
808           </parameter>
809           <parameter name="coord_type" transfer-ownership="none">
810             <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
811             <type name="CoordType" c:type="AtkCoordType"/>
812           </parameter>
813         </parameters>
814       </method>
815       <method name="remove_focus_handler"
816               c:identifier="atk_component_remove_focus_handler">
817         <doc xml:whitespace="preserve">Remove the handler specified by @handler_id from the list of
818 functions to be executed when this object receives focus events 
819 (in or out).</doc>
820         <return-value transfer-ownership="none">
821           <type name="none" c:type="void"/>
822         </return-value>
823         <parameters>
824           <parameter name="handler_id" transfer-ownership="none">
825             <doc xml:whitespace="preserve">the handler id of the focus handler to be removed from @component</doc>
826             <type name="guint" c:type="guint"/>
827           </parameter>
828         </parameters>
829       </method>
830       <method name="set_extents" c:identifier="atk_component_set_extents">
831         <doc xml:whitespace="preserve">Sets the extents of @component.</doc>
832         <return-value transfer-ownership="none">
833           <doc xml:whitespace="preserve">%TRUE or %FALSE whether the extents were set or not</doc>
834           <type name="gboolean" c:type="gboolean"/>
835         </return-value>
836         <parameters>
837           <parameter name="x" transfer-ownership="none">
838             <doc xml:whitespace="preserve">x coordinate</doc>
839             <type name="gint" c:type="gint"/>
840           </parameter>
841           <parameter name="y" transfer-ownership="none">
842             <doc xml:whitespace="preserve">y coordinate</doc>
843             <type name="gint" c:type="gint"/>
844           </parameter>
845           <parameter name="width" transfer-ownership="none">
846             <doc xml:whitespace="preserve">width to set for @component</doc>
847             <type name="gint" c:type="gint"/>
848           </parameter>
849           <parameter name="height" transfer-ownership="none">
850             <doc xml:whitespace="preserve">height to set for @component</doc>
851             <type name="gint" c:type="gint"/>
852           </parameter>
853           <parameter name="coord_type" transfer-ownership="none">
854             <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
855             <type name="CoordType" c:type="AtkCoordType"/>
856           </parameter>
857         </parameters>
858       </method>
859       <method name="set_position" c:identifier="atk_component_set_position">
860         <doc xml:whitespace="preserve">Sets the postition of @component.</doc>
861         <return-value transfer-ownership="none">
862           <doc xml:whitespace="preserve">%TRUE or %FALSE whether or not the position was set or not</doc>
863           <type name="gboolean" c:type="gboolean"/>
864         </return-value>
865         <parameters>
866           <parameter name="x" transfer-ownership="none">
867             <doc xml:whitespace="preserve">x coordinate</doc>
868             <type name="gint" c:type="gint"/>
869           </parameter>
870           <parameter name="y" transfer-ownership="none">
871             <doc xml:whitespace="preserve">y coordinate</doc>
872             <type name="gint" c:type="gint"/>
873           </parameter>
874           <parameter name="coord_type" transfer-ownership="none">
875             <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
876             <type name="CoordType" c:type="AtkCoordType"/>
877           </parameter>
878         </parameters>
879       </method>
880       <method name="set_size" c:identifier="atk_component_set_size">
881         <doc xml:whitespace="preserve">Set the size of the @component in terms of width and height.</doc>
882         <return-value transfer-ownership="none">
883           <doc xml:whitespace="preserve">%TRUE or %FALSE whether the size was set or not</doc>
884           <type name="gboolean" c:type="gboolean"/>
885         </return-value>
886         <parameters>
887           <parameter name="width" transfer-ownership="none">
888             <doc xml:whitespace="preserve">width to set for @component</doc>
889             <type name="gint" c:type="gint"/>
890           </parameter>
891           <parameter name="height" transfer-ownership="none">
892             <doc xml:whitespace="preserve">height to set for @component</doc>
893             <type name="gint" c:type="gint"/>
894           </parameter>
895         </parameters>
896       </method>
897       <glib:signal name="bounds-changed">
898         <return-value transfer-ownership="none">
899           <type name="none"/>
900         </return-value>
901         <parameters>
902           <parameter name="object" transfer-ownership="none">
903             <type name="Rectangle"/>
904           </parameter>
905         </parameters>
906       </glib:signal>
907     </interface>
908     <record name="ComponentIface"
909             c:type="AtkComponentIface"
910             glib:is-gtype-struct-for="Component">
911       <field name="parent">
912         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
913       </field>
914       <field name="add_focus_handler" introspectable="0">
915         <callback name="add_focus_handler" introspectable="0">
916           <return-value transfer-ownership="none">
917             <doc xml:whitespace="preserve">a handler id which can be used in atk_component_remove_focus_handler</doc>
918             <type name="guint" c:type="guint"/>
919           </return-value>
920           <parameters>
921             <parameter name="component" transfer-ownership="none">
922               <type name="Component" c:type="AtkComponent*"/>
923             </parameter>
924             <parameter name="handler" transfer-ownership="none">
925               <doc xml:whitespace="preserve">The #AtkFocusHandler to be attached to @component</doc>
926               <type name="FocusHandler" c:type="AtkFocusHandler"/>
927             </parameter>
928           </parameters>
929         </callback>
930       </field>
931       <field name="contains">
932         <callback name="contains">
933           <return-value transfer-ownership="none">
934             <doc xml:whitespace="preserve">%TRUE or %FALSE indicating whether the specified point is within</doc>
935             <type name="gboolean" c:type="gboolean"/>
936           </return-value>
937           <parameters>
938             <parameter name="component" transfer-ownership="none">
939               <type name="Component" c:type="AtkComponent*"/>
940             </parameter>
941             <parameter name="x" transfer-ownership="none">
942               <doc xml:whitespace="preserve">x coordinate</doc>
943               <type name="gint" c:type="gint"/>
944             </parameter>
945             <parameter name="y" transfer-ownership="none">
946               <doc xml:whitespace="preserve">y coordinate</doc>
947               <type name="gint" c:type="gint"/>
948             </parameter>
949             <parameter name="coord_type" transfer-ownership="none">
950               <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
951               <type name="CoordType" c:type="AtkCoordType"/>
952             </parameter>
953           </parameters>
954         </callback>
955       </field>
956       <field name="ref_accessible_at_point" introspectable="0">
957         <callback name="ref_accessible_at_point" introspectable="0">
958           <return-value>
959             <doc xml:whitespace="preserve">a reference to the accessible child, if one exists</doc>
960             <type name="Object" c:type="AtkObject*"/>
961           </return-value>
962           <parameters>
963             <parameter name="component" transfer-ownership="none">
964               <type name="Component" c:type="AtkComponent*"/>
965             </parameter>
966             <parameter name="x" transfer-ownership="none">
967               <doc xml:whitespace="preserve">x coordinate</doc>
968               <type name="gint" c:type="gint"/>
969             </parameter>
970             <parameter name="y" transfer-ownership="none">
971               <doc xml:whitespace="preserve">y coordinate</doc>
972               <type name="gint" c:type="gint"/>
973             </parameter>
974             <parameter name="coord_type" transfer-ownership="none">
975               <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
976               <type name="CoordType" c:type="AtkCoordType"/>
977             </parameter>
978           </parameters>
979         </callback>
980       </field>
981       <field name="get_extents">
982         <callback name="get_extents">
983           <return-value transfer-ownership="none">
984             <type name="none" c:type="void"/>
985           </return-value>
986           <parameters>
987             <parameter name="component" transfer-ownership="none">
988               <type name="Component" c:type="AtkComponent*"/>
989             </parameter>
990             <parameter name="x" transfer-ownership="none">
991               <doc xml:whitespace="preserve">address of #gint to put x coordinate</doc>
992               <type name="gint" c:type="gint*"/>
993             </parameter>
994             <parameter name="y" transfer-ownership="none">
995               <doc xml:whitespace="preserve">address of #gint to put y coordinate</doc>
996               <type name="gint" c:type="gint*"/>
997             </parameter>
998             <parameter name="width" transfer-ownership="none">
999               <doc xml:whitespace="preserve">address of #gint to put width</doc>
1000               <type name="gint" c:type="gint*"/>
1001             </parameter>
1002             <parameter name="height" transfer-ownership="none">
1003               <doc xml:whitespace="preserve">address of #gint to put height</doc>
1004               <type name="gint" c:type="gint*"/>
1005             </parameter>
1006             <parameter name="coord_type" transfer-ownership="none">
1007               <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
1008               <type name="CoordType" c:type="AtkCoordType"/>
1009             </parameter>
1010           </parameters>
1011         </callback>
1012       </field>
1013       <field name="get_position">
1014         <callback name="get_position">
1015           <return-value transfer-ownership="none">
1016             <type name="none" c:type="void"/>
1017           </return-value>
1018           <parameters>
1019             <parameter name="component" transfer-ownership="none">
1020               <type name="Component" c:type="AtkComponent*"/>
1021             </parameter>
1022             <parameter name="x" transfer-ownership="none">
1023               <doc xml:whitespace="preserve">address of #gint to put x coordinate position</doc>
1024               <type name="gint" c:type="gint*"/>
1025             </parameter>
1026             <parameter name="y" transfer-ownership="none">
1027               <doc xml:whitespace="preserve">address of #gint to put y coordinate position</doc>
1028               <type name="gint" c:type="gint*"/>
1029             </parameter>
1030             <parameter name="coord_type" transfer-ownership="none">
1031               <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
1032               <type name="CoordType" c:type="AtkCoordType"/>
1033             </parameter>
1034           </parameters>
1035         </callback>
1036       </field>
1037       <field name="get_size">
1038         <callback name="get_size">
1039           <return-value transfer-ownership="none">
1040             <type name="none" c:type="void"/>
1041           </return-value>
1042           <parameters>
1043             <parameter name="component" transfer-ownership="none">
1044               <type name="Component" c:type="AtkComponent*"/>
1045             </parameter>
1046             <parameter name="width" transfer-ownership="none">
1047               <doc xml:whitespace="preserve">address of #gint to put width of @component</doc>
1048               <type name="gint" c:type="gint*"/>
1049             </parameter>
1050             <parameter name="height" transfer-ownership="none">
1051               <doc xml:whitespace="preserve">address of #gint to put height of @component</doc>
1052               <type name="gint" c:type="gint*"/>
1053             </parameter>
1054           </parameters>
1055         </callback>
1056       </field>
1057       <field name="grab_focus">
1058         <callback name="grab_focus">
1059           <return-value transfer-ownership="none">
1060             <doc xml:whitespace="preserve">%TRUE if successful, %FALSE otherwise.</doc>
1061             <type name="gboolean" c:type="gboolean"/>
1062           </return-value>
1063           <parameters>
1064             <parameter name="component" transfer-ownership="none">
1065               <type name="Component" c:type="AtkComponent*"/>
1066             </parameter>
1067           </parameters>
1068         </callback>
1069       </field>
1070       <field name="remove_focus_handler">
1071         <callback name="remove_focus_handler">
1072           <return-value transfer-ownership="none">
1073             <type name="none" c:type="void"/>
1074           </return-value>
1075           <parameters>
1076             <parameter name="component" transfer-ownership="none">
1077               <type name="Component" c:type="AtkComponent*"/>
1078             </parameter>
1079             <parameter name="handler_id" transfer-ownership="none">
1080               <doc xml:whitespace="preserve">the handler id of the focus handler to be removed from @component</doc>
1081               <type name="guint" c:type="guint"/>
1082             </parameter>
1083           </parameters>
1084         </callback>
1085       </field>
1086       <field name="set_extents">
1087         <callback name="set_extents">
1088           <return-value transfer-ownership="none">
1089             <doc xml:whitespace="preserve">%TRUE or %FALSE whether the extents were set or not</doc>
1090             <type name="gboolean" c:type="gboolean"/>
1091           </return-value>
1092           <parameters>
1093             <parameter name="component" transfer-ownership="none">
1094               <type name="Component" c:type="AtkComponent*"/>
1095             </parameter>
1096             <parameter name="x" transfer-ownership="none">
1097               <doc xml:whitespace="preserve">x coordinate</doc>
1098               <type name="gint" c:type="gint"/>
1099             </parameter>
1100             <parameter name="y" transfer-ownership="none">
1101               <doc xml:whitespace="preserve">y coordinate</doc>
1102               <type name="gint" c:type="gint"/>
1103             </parameter>
1104             <parameter name="width" transfer-ownership="none">
1105               <doc xml:whitespace="preserve">width to set for @component</doc>
1106               <type name="gint" c:type="gint"/>
1107             </parameter>
1108             <parameter name="height" transfer-ownership="none">
1109               <doc xml:whitespace="preserve">height to set for @component</doc>
1110               <type name="gint" c:type="gint"/>
1111             </parameter>
1112             <parameter name="coord_type" transfer-ownership="none">
1113               <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
1114               <type name="CoordType" c:type="AtkCoordType"/>
1115             </parameter>
1116           </parameters>
1117         </callback>
1118       </field>
1119       <field name="set_position">
1120         <callback name="set_position">
1121           <return-value transfer-ownership="none">
1122             <doc xml:whitespace="preserve">%TRUE or %FALSE whether or not the position was set or not</doc>
1123             <type name="gboolean" c:type="gboolean"/>
1124           </return-value>
1125           <parameters>
1126             <parameter name="component" transfer-ownership="none">
1127               <type name="Component" c:type="AtkComponent*"/>
1128             </parameter>
1129             <parameter name="x" transfer-ownership="none">
1130               <doc xml:whitespace="preserve">x coordinate</doc>
1131               <type name="gint" c:type="gint"/>
1132             </parameter>
1133             <parameter name="y" transfer-ownership="none">
1134               <doc xml:whitespace="preserve">y coordinate</doc>
1135               <type name="gint" c:type="gint"/>
1136             </parameter>
1137             <parameter name="coord_type" transfer-ownership="none">
1138               <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
1139               <type name="CoordType" c:type="AtkCoordType"/>
1140             </parameter>
1141           </parameters>
1142         </callback>
1143       </field>
1144       <field name="set_size">
1145         <callback name="set_size">
1146           <return-value transfer-ownership="none">
1147             <doc xml:whitespace="preserve">%TRUE or %FALSE whether the size was set or not</doc>
1148             <type name="gboolean" c:type="gboolean"/>
1149           </return-value>
1150           <parameters>
1151             <parameter name="component" transfer-ownership="none">
1152               <type name="Component" c:type="AtkComponent*"/>
1153             </parameter>
1154             <parameter name="width" transfer-ownership="none">
1155               <doc xml:whitespace="preserve">width to set for @component</doc>
1156               <type name="gint" c:type="gint"/>
1157             </parameter>
1158             <parameter name="height" transfer-ownership="none">
1159               <doc xml:whitespace="preserve">height to set for @component</doc>
1160               <type name="gint" c:type="gint"/>
1161             </parameter>
1162           </parameters>
1163         </callback>
1164       </field>
1165       <field name="get_layer">
1166         <callback name="get_layer">
1167           <return-value transfer-ownership="none">
1168             <doc xml:whitespace="preserve">an #AtkLayer which is the layer of the component</doc>
1169             <type name="Layer" c:type="AtkLayer"/>
1170           </return-value>
1171           <parameters>
1172             <parameter name="component" transfer-ownership="none">
1173               <type name="Component" c:type="AtkComponent*"/>
1174             </parameter>
1175           </parameters>
1176         </callback>
1177       </field>
1178       <field name="get_mdi_zorder">
1179         <callback name="get_mdi_zorder">
1180           <return-value transfer-ownership="none">
1181             <doc xml:whitespace="preserve">a gint which is the zorder of the component, i.e. the depth at</doc>
1182             <type name="gint" c:type="gint"/>
1183           </return-value>
1184           <parameters>
1185             <parameter name="component" transfer-ownership="none">
1186               <type name="Component" c:type="AtkComponent*"/>
1187             </parameter>
1188           </parameters>
1189         </callback>
1190       </field>
1191       <field name="bounds_changed">
1192         <callback name="bounds_changed">
1193           <return-value transfer-ownership="none">
1194             <type name="none" c:type="void"/>
1195           </return-value>
1196           <parameters>
1197             <parameter name="component" transfer-ownership="none">
1198               <type name="Component" c:type="AtkComponent*"/>
1199             </parameter>
1200             <parameter name="bounds" transfer-ownership="none">
1201               <type name="Rectangle" c:type="AtkRectangle*"/>
1202             </parameter>
1203           </parameters>
1204         </callback>
1205       </field>
1206       <field name="get_alpha">
1207         <callback name="get_alpha">
1208           <return-value transfer-ownership="none">
1209             <doc xml:whitespace="preserve">An alpha value from 0 to 1.0, inclusive.</doc>
1210             <type name="gdouble" c:type="gdouble"/>
1211           </return-value>
1212           <parameters>
1213             <parameter name="component" transfer-ownership="none">
1214               <type name="Component" c:type="AtkComponent*"/>
1215             </parameter>
1216           </parameters>
1217         </callback>
1218       </field>
1219     </record>
1220     <enumeration name="CoordType"
1221                  glib:type-name="AtkCoordType"
1222                  glib:get-type="atk_coord_type_get_type"
1223                  c:type="AtkCoordType">
1224       <member name="screen"
1225               value="0"
1226               c:identifier="ATK_XY_SCREEN"
1227               glib:nick="screen"/>
1228       <member name="window"
1229               value="1"
1230               c:identifier="ATK_XY_WINDOW"
1231               glib:nick="window"/>
1232     </enumeration>
1233     <interface name="Document"
1234                c:symbol-prefix="document"
1235                c:type="AtkDocument"
1236                glib:type-name="AtkDocument"
1237                glib:get-type="atk_document_get_type"
1238                glib:type-struct="DocumentIface">
1239       <virtual-method name="get_document"
1240                       invoker="get_document"
1241                       introspectable="0">
1242         <doc xml:whitespace="preserve">Gets a %gpointer that points to an instance of the DOM.  It is
1243 up to the caller to check atk_document_get_type to determine
1244 how to cast this pointer.</doc>
1245         <return-value>
1246           <doc xml:whitespace="preserve">a %gpointer that points to an instance of the DOM.</doc>
1247           <type name="gpointer" c:type="gpointer"/>
1248         </return-value>
1249       </virtual-method>
1250       <virtual-method name="get_document_attribute_value">
1251         <return-value transfer-ownership="none">
1252           <type name="utf8" c:type="gchar*"/>
1253         </return-value>
1254         <parameters>
1255           <parameter name="attribute_name" transfer-ownership="none">
1256             <type name="utf8" c:type="gchar*"/>
1257           </parameter>
1258         </parameters>
1259       </virtual-method>
1260       <virtual-method name="get_document_attributes" introspectable="0">
1261         <return-value>
1262           <type name="AttributeSet" c:type="AtkAttributeSet*"/>
1263         </return-value>
1264       </virtual-method>
1265       <virtual-method name="get_document_locale">
1266         <return-value transfer-ownership="none">
1267           <type name="utf8" c:type="gchar*"/>
1268         </return-value>
1269       </virtual-method>
1270       <virtual-method name="get_document_type" invoker="get_document_type">
1271         <doc xml:whitespace="preserve">Gets a string indicating the document type.</doc>
1272         <return-value transfer-ownership="none">
1273           <doc xml:whitespace="preserve">a string indicating the document type</doc>
1274           <type name="utf8" c:type="gchar*"/>
1275         </return-value>
1276       </virtual-method>
1277       <virtual-method name="set_document_attribute">
1278         <return-value transfer-ownership="none">
1279           <type name="gboolean" c:type="gboolean"/>
1280         </return-value>
1281         <parameters>
1282           <parameter name="attribute_name" transfer-ownership="none">
1283             <type name="utf8" c:type="gchar*"/>
1284           </parameter>
1285           <parameter name="attribute_value" transfer-ownership="none">
1286             <type name="utf8" c:type="gchar*"/>
1287           </parameter>
1288         </parameters>
1289       </virtual-method>
1290       <method name="get_attribute_value"
1291               c:identifier="atk_document_get_attribute_value"
1292               version="1.12">
1293         <doc xml:whitespace="preserve">document, or NULL if a value for #attribute_name has not been specified
1294 for this document.</doc>
1295         <return-value transfer-ownership="none">
1296           <doc xml:whitespace="preserve">a string value associated with the named attribute for this</doc>
1297           <type name="utf8" c:type="gchar*"/>
1298         </return-value>
1299         <parameters>
1300           <parameter name="attribute_name" transfer-ownership="none">
1301             <doc xml:whitespace="preserve">a character string representing the name of the attribute whose value is being queried.</doc>
1302             <type name="utf8" c:type="gchar*"/>
1303           </parameter>
1304         </parameters>
1305       </method>
1306       <method name="get_attributes"
1307               c:identifier="atk_document_get_attributes"
1308               version="1.12"
1309               introspectable="0">
1310         <doc xml:whitespace="preserve">Gets an AtkAttributeSet which describes document-wide
1311 attributes as name-value pairs.
1312 set name-value-pair attributes associated with this document
1313 as a whole.</doc>
1314         <return-value>
1315           <doc xml:whitespace="preserve">An AtkAttributeSet containing the explicitly</doc>
1316           <type name="AttributeSet" c:type="AtkAttributeSet*"/>
1317         </return-value>
1318       </method>
1319       <method name="get_document"
1320               c:identifier="atk_document_get_document"
1321               introspectable="0">
1322         <doc xml:whitespace="preserve">Gets a %gpointer that points to an instance of the DOM.  It is
1323 up to the caller to check atk_document_get_type to determine
1324 how to cast this pointer.</doc>
1325         <return-value>
1326           <doc xml:whitespace="preserve">a %gpointer that points to an instance of the DOM.</doc>
1327           <type name="gpointer" c:type="gpointer"/>
1328         </return-value>
1329       </method>
1330       <method name="get_document_type"
1331               c:identifier="atk_document_get_document_type">
1332         <doc xml:whitespace="preserve">Gets a string indicating the document type.</doc>
1333         <return-value transfer-ownership="none">
1334           <doc xml:whitespace="preserve">a string indicating the document type</doc>
1335           <type name="utf8" c:type="gchar*"/>
1336         </return-value>
1337       </method>
1338       <method name="get_locale" c:identifier="atk_document_get_locale">
1339         <doc xml:whitespace="preserve">Gets a UTF-8 string indicating the POSIX-style LC_MESSAGES locale
1340 of the content of this document instance.  Individual
1341 text substrings or images within this document may have
1342 a different locale, see atk_text_get_attributes and
1343 atk_image_get_image_locale.
1344 locale of the document content as a whole, or NULL if
1345 the document content does not specify a locale.</doc>
1346         <return-value transfer-ownership="none">
1347           <doc xml:whitespace="preserve">a UTF-8 string indicating the POSIX-style LC_MESSAGES</doc>
1348           <type name="utf8" c:type="gchar*"/>
1349         </return-value>
1350       </method>
1351       <method name="set_attribute_value"
1352               c:identifier="atk_document_set_attribute_value"
1353               version="1.12">
1354         <doc xml:whitespace="preserve">for this document, FALSE otherwise (e.g. if the document does not
1355 allow the attribute to be modified).</doc>
1356         <return-value transfer-ownership="none">
1357           <doc xml:whitespace="preserve">TRUE if #value is successfully associated with #attribute_name</doc>
1358           <type name="gboolean" c:type="gboolean"/>
1359         </return-value>
1360         <parameters>
1361           <parameter name="attribute_name" transfer-ownership="none">
1362             <doc xml:whitespace="preserve">a character string representing the name of the attribute whose value is being set.</doc>
1363             <type name="utf8" c:type="gchar*"/>
1364           </parameter>
1365           <parameter name="attribute_value" transfer-ownership="none">
1366             <doc xml:whitespace="preserve">a string value to be associated with #attribute_name.</doc>
1367             <type name="utf8" c:type="gchar*"/>
1368           </parameter>
1369         </parameters>
1370       </method>
1371       <glib:signal name="load-complete">
1372         <return-value transfer-ownership="none">
1373           <type name="none"/>
1374         </return-value>
1375       </glib:signal>
1376       <glib:signal name="load-stopped">
1377         <return-value transfer-ownership="none">
1378           <type name="none"/>
1379         </return-value>
1380       </glib:signal>
1381       <glib:signal name="reload">
1382         <return-value transfer-ownership="none">
1383           <type name="none"/>
1384         </return-value>
1385       </glib:signal>
1386     </interface>
1387     <record name="DocumentIface"
1388             c:type="AtkDocumentIface"
1389             glib:is-gtype-struct-for="Document">
1390       <field name="parent">
1391         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
1392       </field>
1393       <field name="get_document_type">
1394         <callback name="get_document_type">
1395           <return-value transfer-ownership="none">
1396             <doc xml:whitespace="preserve">a string indicating the document type</doc>
1397             <type name="utf8" c:type="gchar*"/>
1398           </return-value>
1399           <parameters>
1400             <parameter name="document" transfer-ownership="none">
1401               <type name="Document" c:type="AtkDocument*"/>
1402             </parameter>
1403           </parameters>
1404         </callback>
1405       </field>
1406       <field name="get_document" introspectable="0">
1407         <callback name="get_document" introspectable="0">
1408           <return-value>
1409             <doc xml:whitespace="preserve">a %gpointer that points to an instance of the DOM.</doc>
1410             <type name="gpointer" c:type="gpointer"/>
1411           </return-value>
1412           <parameters>
1413             <parameter name="document" transfer-ownership="none">
1414               <type name="Document" c:type="AtkDocument*"/>
1415             </parameter>
1416           </parameters>
1417         </callback>
1418       </field>
1419       <field name="get_document_locale">
1420         <callback name="get_document_locale">
1421           <return-value transfer-ownership="none">
1422             <type name="utf8" c:type="gchar*"/>
1423           </return-value>
1424           <parameters>
1425             <parameter name="document" transfer-ownership="none">
1426               <type name="Document" c:type="AtkDocument*"/>
1427             </parameter>
1428           </parameters>
1429         </callback>
1430       </field>
1431       <field name="get_document_attributes" introspectable="0">
1432         <callback name="get_document_attributes" introspectable="0">
1433           <return-value>
1434             <type name="AttributeSet" c:type="AtkAttributeSet*"/>
1435           </return-value>
1436           <parameters>
1437             <parameter name="document" transfer-ownership="none">
1438               <type name="Document" c:type="AtkDocument*"/>
1439             </parameter>
1440           </parameters>
1441         </callback>
1442       </field>
1443       <field name="get_document_attribute_value">
1444         <callback name="get_document_attribute_value">
1445           <return-value transfer-ownership="none">
1446             <type name="utf8" c:type="gchar*"/>
1447           </return-value>
1448           <parameters>
1449             <parameter name="document" transfer-ownership="none">
1450               <type name="Document" c:type="AtkDocument*"/>
1451             </parameter>
1452             <parameter name="attribute_name" transfer-ownership="none">
1453               <type name="utf8" c:type="gchar*"/>
1454             </parameter>
1455           </parameters>
1456         </callback>
1457       </field>
1458       <field name="set_document_attribute">
1459         <callback name="set_document_attribute">
1460           <return-value transfer-ownership="none">
1461             <type name="gboolean" c:type="gboolean"/>
1462           </return-value>
1463           <parameters>
1464             <parameter name="document" transfer-ownership="none">
1465               <type name="Document" c:type="AtkDocument*"/>
1466             </parameter>
1467             <parameter name="attribute_name" transfer-ownership="none">
1468               <type name="utf8" c:type="gchar*"/>
1469             </parameter>
1470             <parameter name="attribute_value" transfer-ownership="none">
1471               <type name="utf8" c:type="gchar*"/>
1472             </parameter>
1473           </parameters>
1474         </callback>
1475       </field>
1476       <field name="pad1">
1477         <type name="Function" c:type="AtkFunction"/>
1478       </field>
1479       <field name="pad2">
1480         <type name="Function" c:type="AtkFunction"/>
1481       </field>
1482       <field name="pad3">
1483         <type name="Function" c:type="AtkFunction"/>
1484       </field>
1485       <field name="pad4">
1486         <type name="Function" c:type="AtkFunction"/>
1487       </field>
1488     </record>
1489     <interface name="EditableText"
1490                c:symbol-prefix="editable_text"
1491                c:type="AtkEditableText"
1492                glib:type-name="AtkEditableText"
1493                glib:get-type="atk_editable_text_get_type"
1494                glib:type-struct="EditableTextIface">
1495       <virtual-method name="copy_text" invoker="copy_text">
1496         <doc xml:whitespace="preserve">Copy text from @start_pos up to, but not including @end_pos 
1497 to the clipboard.</doc>
1498         <return-value transfer-ownership="none">
1499           <type name="none" c:type="void"/>
1500         </return-value>
1501         <parameters>
1502           <parameter name="start_pos" transfer-ownership="none">
1503             <doc xml:whitespace="preserve">start position</doc>
1504             <type name="gint" c:type="gint"/>
1505           </parameter>
1506           <parameter name="end_pos" transfer-ownership="none">
1507             <doc xml:whitespace="preserve">end position</doc>
1508             <type name="gint" c:type="gint"/>
1509           </parameter>
1510         </parameters>
1511       </virtual-method>
1512       <virtual-method name="cut_text" invoker="cut_text">
1513         <doc xml:whitespace="preserve">Copy text from @start_pos up to, but not including @end_pos
1514 to the clipboard and then delete from the widget.</doc>
1515         <return-value transfer-ownership="none">
1516           <type name="none" c:type="void"/>
1517         </return-value>
1518         <parameters>
1519           <parameter name="start_pos" transfer-ownership="none">
1520             <doc xml:whitespace="preserve">start position</doc>
1521             <type name="gint" c:type="gint"/>
1522           </parameter>
1523           <parameter name="end_pos" transfer-ownership="none">
1524             <doc xml:whitespace="preserve">end position</doc>
1525             <type name="gint" c:type="gint"/>
1526           </parameter>
1527         </parameters>
1528       </virtual-method>
1529       <virtual-method name="delete_text" invoker="delete_text">
1530         <doc xml:whitespace="preserve">Delete text @start_pos up to, but not including @end_pos.</doc>
1531         <return-value transfer-ownership="none">
1532           <type name="none" c:type="void"/>
1533         </return-value>
1534         <parameters>
1535           <parameter name="start_pos" transfer-ownership="none">
1536             <doc xml:whitespace="preserve">start position</doc>
1537             <type name="gint" c:type="gint"/>
1538           </parameter>
1539           <parameter name="end_pos" transfer-ownership="none">
1540             <doc xml:whitespace="preserve">end position</doc>
1541             <type name="gint" c:type="gint"/>
1542           </parameter>
1543         </parameters>
1544       </virtual-method>
1545       <virtual-method name="insert_text" invoker="insert_text">
1546         <doc xml:whitespace="preserve">Insert text at a given position.</doc>
1547         <return-value transfer-ownership="none">
1548           <type name="none" c:type="void"/>
1549         </return-value>
1550         <parameters>
1551           <parameter name="string" transfer-ownership="none">
1552             <doc xml:whitespace="preserve">the text to insert</doc>
1553             <type name="utf8" c:type="gchar*"/>
1554           </parameter>
1555           <parameter name="length" transfer-ownership="none">
1556             <doc xml:whitespace="preserve">the length of text to insert, in bytes</doc>
1557             <type name="gint" c:type="gint"/>
1558           </parameter>
1559           <parameter name="position" transfer-ownership="none">
1560             <doc xml:whitespace="preserve">The caller initializes this to the position at which to insert the text. After the call it points at the position after the newly inserted text.</doc>
1561             <type name="gint" c:type="gint*"/>
1562           </parameter>
1563         </parameters>
1564       </virtual-method>
1565       <virtual-method name="paste_text" invoker="paste_text">
1566         <doc xml:whitespace="preserve">Paste text from clipboard to specified @position.</doc>
1567         <return-value transfer-ownership="none">
1568           <type name="none" c:type="void"/>
1569         </return-value>
1570         <parameters>
1571           <parameter name="position" transfer-ownership="none">
1572             <doc xml:whitespace="preserve">position to paste</doc>
1573             <type name="gint" c:type="gint"/>
1574           </parameter>
1575         </parameters>
1576       </virtual-method>
1577       <virtual-method name="set_run_attributes" invoker="set_run_attributes">
1578         <return-value transfer-ownership="none">
1579           <type name="gboolean" c:type="gboolean"/>
1580         </return-value>
1581         <parameters>
1582           <parameter name="attrib_set" transfer-ownership="none">
1583             <type name="AttributeSet" c:type="AtkAttributeSet*"/>
1584           </parameter>
1585           <parameter name="start_offset" transfer-ownership="none">
1586             <type name="gint" c:type="gint"/>
1587           </parameter>
1588           <parameter name="end_offset" transfer-ownership="none">
1589             <type name="gint" c:type="gint"/>
1590           </parameter>
1591         </parameters>
1592       </virtual-method>
1593       <virtual-method name="set_text_contents" invoker="set_text_contents">
1594         <doc xml:whitespace="preserve">Set text contents of @text.</doc>
1595         <return-value transfer-ownership="none">
1596           <type name="none" c:type="void"/>
1597         </return-value>
1598         <parameters>
1599           <parameter name="string" transfer-ownership="none">
1600             <doc xml:whitespace="preserve">string to set for text contents of @text</doc>
1601             <type name="utf8" c:type="gchar*"/>
1602           </parameter>
1603         </parameters>
1604       </virtual-method>
1605       <method name="copy_text" c:identifier="atk_editable_text_copy_text">
1606         <doc xml:whitespace="preserve">Copy text from @start_pos up to, but not including @end_pos 
1607 to the clipboard.</doc>
1608         <return-value transfer-ownership="none">
1609           <type name="none" c:type="void"/>
1610         </return-value>
1611         <parameters>
1612           <parameter name="start_pos" transfer-ownership="none">
1613             <doc xml:whitespace="preserve">start position</doc>
1614             <type name="gint" c:type="gint"/>
1615           </parameter>
1616           <parameter name="end_pos" transfer-ownership="none">
1617             <doc xml:whitespace="preserve">end position</doc>
1618             <type name="gint" c:type="gint"/>
1619           </parameter>
1620         </parameters>
1621       </method>
1622       <method name="cut_text" c:identifier="atk_editable_text_cut_text">
1623         <doc xml:whitespace="preserve">Copy text from @start_pos up to, but not including @end_pos
1624 to the clipboard and then delete from the widget.</doc>
1625         <return-value transfer-ownership="none">
1626           <type name="none" c:type="void"/>
1627         </return-value>
1628         <parameters>
1629           <parameter name="start_pos" transfer-ownership="none">
1630             <doc xml:whitespace="preserve">start position</doc>
1631             <type name="gint" c:type="gint"/>
1632           </parameter>
1633           <parameter name="end_pos" transfer-ownership="none">
1634             <doc xml:whitespace="preserve">end position</doc>
1635             <type name="gint" c:type="gint"/>
1636           </parameter>
1637         </parameters>
1638       </method>
1639       <method name="delete_text" c:identifier="atk_editable_text_delete_text">
1640         <doc xml:whitespace="preserve">Delete text @start_pos up to, but not including @end_pos.</doc>
1641         <return-value transfer-ownership="none">
1642           <type name="none" c:type="void"/>
1643         </return-value>
1644         <parameters>
1645           <parameter name="start_pos" transfer-ownership="none">
1646             <doc xml:whitespace="preserve">start position</doc>
1647             <type name="gint" c:type="gint"/>
1648           </parameter>
1649           <parameter name="end_pos" transfer-ownership="none">
1650             <doc xml:whitespace="preserve">end position</doc>
1651             <type name="gint" c:type="gint"/>
1652           </parameter>
1653         </parameters>
1654       </method>
1655       <method name="insert_text" c:identifier="atk_editable_text_insert_text">
1656         <doc xml:whitespace="preserve">Insert text at a given position.</doc>
1657         <return-value transfer-ownership="none">
1658           <type name="none" c:type="void"/>
1659         </return-value>
1660         <parameters>
1661           <parameter name="string" transfer-ownership="none">
1662             <doc xml:whitespace="preserve">the text to insert</doc>
1663             <type name="utf8" c:type="gchar*"/>
1664           </parameter>
1665           <parameter name="length" transfer-ownership="none">
1666             <doc xml:whitespace="preserve">the length of text to insert, in bytes</doc>
1667             <type name="gint" c:type="gint"/>
1668           </parameter>
1669           <parameter name="position" transfer-ownership="none">
1670             <doc xml:whitespace="preserve">The caller initializes this to the position at which to insert the text. After the call it points at the position after the newly inserted text.</doc>
1671             <type name="gint" c:type="gint*"/>
1672           </parameter>
1673         </parameters>
1674       </method>
1675       <method name="paste_text" c:identifier="atk_editable_text_paste_text">
1676         <doc xml:whitespace="preserve">Paste text from clipboard to specified @position.</doc>
1677         <return-value transfer-ownership="none">
1678           <type name="none" c:type="void"/>
1679         </return-value>
1680         <parameters>
1681           <parameter name="position" transfer-ownership="none">
1682             <doc xml:whitespace="preserve">position to paste</doc>
1683             <type name="gint" c:type="gint"/>
1684           </parameter>
1685         </parameters>
1686       </method>
1687       <method name="set_run_attributes"
1688               c:identifier="atk_editable_text_set_run_attributes">
1689         <return-value transfer-ownership="none">
1690           <type name="gboolean" c:type="gboolean"/>
1691         </return-value>
1692         <parameters>
1693           <parameter name="attrib_set" transfer-ownership="none">
1694             <type name="AttributeSet" c:type="AtkAttributeSet*"/>
1695           </parameter>
1696           <parameter name="start_offset" transfer-ownership="none">
1697             <type name="gint" c:type="gint"/>
1698           </parameter>
1699           <parameter name="end_offset" transfer-ownership="none">
1700             <type name="gint" c:type="gint"/>
1701           </parameter>
1702         </parameters>
1703       </method>
1704       <method name="set_text_contents"
1705               c:identifier="atk_editable_text_set_text_contents">
1706         <doc xml:whitespace="preserve">Set text contents of @text.</doc>
1707         <return-value transfer-ownership="none">
1708           <type name="none" c:type="void"/>
1709         </return-value>
1710         <parameters>
1711           <parameter name="string" transfer-ownership="none">
1712             <doc xml:whitespace="preserve">string to set for text contents of @text</doc>
1713             <type name="utf8" c:type="gchar*"/>
1714           </parameter>
1715         </parameters>
1716       </method>
1717     </interface>
1718     <record name="EditableTextIface"
1719             c:type="AtkEditableTextIface"
1720             glib:is-gtype-struct-for="EditableText">
1721       <field name="parent_interface">
1722         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
1723       </field>
1724       <field name="set_run_attributes">
1725         <callback name="set_run_attributes">
1726           <return-value transfer-ownership="none">
1727             <type name="gboolean" c:type="gboolean"/>
1728           </return-value>
1729           <parameters>
1730             <parameter name="text" transfer-ownership="none">
1731               <type name="EditableText" c:type="AtkEditableText*"/>
1732             </parameter>
1733             <parameter name="attrib_set" transfer-ownership="none">
1734               <type name="AttributeSet" c:type="AtkAttributeSet*"/>
1735             </parameter>
1736             <parameter name="start_offset" transfer-ownership="none">
1737               <type name="gint" c:type="gint"/>
1738             </parameter>
1739             <parameter name="end_offset" transfer-ownership="none">
1740               <type name="gint" c:type="gint"/>
1741             </parameter>
1742           </parameters>
1743         </callback>
1744       </field>
1745       <field name="set_text_contents">
1746         <callback name="set_text_contents">
1747           <return-value transfer-ownership="none">
1748             <type name="none" c:type="void"/>
1749           </return-value>
1750           <parameters>
1751             <parameter name="text" transfer-ownership="none">
1752               <type name="EditableText" c:type="AtkEditableText*"/>
1753             </parameter>
1754             <parameter name="string" transfer-ownership="none">
1755               <doc xml:whitespace="preserve">string to set for text contents of @text</doc>
1756               <type name="utf8" c:type="gchar*"/>
1757             </parameter>
1758           </parameters>
1759         </callback>
1760       </field>
1761       <field name="insert_text">
1762         <callback name="insert_text">
1763           <return-value transfer-ownership="none">
1764             <type name="none" c:type="void"/>
1765           </return-value>
1766           <parameters>
1767             <parameter name="text" transfer-ownership="none">
1768               <type name="EditableText" c:type="AtkEditableText*"/>
1769             </parameter>
1770             <parameter name="string" transfer-ownership="none">
1771               <doc xml:whitespace="preserve">the text to insert</doc>
1772               <type name="utf8" c:type="gchar*"/>
1773             </parameter>
1774             <parameter name="length" transfer-ownership="none">
1775               <doc xml:whitespace="preserve">the length of text to insert, in bytes</doc>
1776               <type name="gint" c:type="gint"/>
1777             </parameter>
1778             <parameter name="position" transfer-ownership="none">
1779               <doc xml:whitespace="preserve">The caller initializes this to the position at which to insert the text. After the call it points at the position after the newly inserted text.</doc>
1780               <type name="gint" c:type="gint*"/>
1781             </parameter>
1782           </parameters>
1783         </callback>
1784       </field>
1785       <field name="copy_text">
1786         <callback name="copy_text">
1787           <return-value transfer-ownership="none">
1788             <type name="none" c:type="void"/>
1789           </return-value>
1790           <parameters>
1791             <parameter name="text" transfer-ownership="none">
1792               <type name="EditableText" c:type="AtkEditableText*"/>
1793             </parameter>
1794             <parameter name="start_pos" transfer-ownership="none">
1795               <doc xml:whitespace="preserve">start position</doc>
1796               <type name="gint" c:type="gint"/>
1797             </parameter>
1798             <parameter name="end_pos" transfer-ownership="none">
1799               <doc xml:whitespace="preserve">end position</doc>
1800               <type name="gint" c:type="gint"/>
1801             </parameter>
1802           </parameters>
1803         </callback>
1804       </field>
1805       <field name="cut_text">
1806         <callback name="cut_text">
1807           <return-value transfer-ownership="none">
1808             <type name="none" c:type="void"/>
1809           </return-value>
1810           <parameters>
1811             <parameter name="text" transfer-ownership="none">
1812               <type name="EditableText" c:type="AtkEditableText*"/>
1813             </parameter>
1814             <parameter name="start_pos" transfer-ownership="none">
1815               <doc xml:whitespace="preserve">start position</doc>
1816               <type name="gint" c:type="gint"/>
1817             </parameter>
1818             <parameter name="end_pos" transfer-ownership="none">
1819               <doc xml:whitespace="preserve">end position</doc>
1820               <type name="gint" c:type="gint"/>
1821             </parameter>
1822           </parameters>
1823         </callback>
1824       </field>
1825       <field name="delete_text">
1826         <callback name="delete_text">
1827           <return-value transfer-ownership="none">
1828             <type name="none" c:type="void"/>
1829           </return-value>
1830           <parameters>
1831             <parameter name="text" transfer-ownership="none">
1832               <type name="EditableText" c:type="AtkEditableText*"/>
1833             </parameter>
1834             <parameter name="start_pos" transfer-ownership="none">
1835               <doc xml:whitespace="preserve">start position</doc>
1836               <type name="gint" c:type="gint"/>
1837             </parameter>
1838             <parameter name="end_pos" transfer-ownership="none">
1839               <doc xml:whitespace="preserve">end position</doc>
1840               <type name="gint" c:type="gint"/>
1841             </parameter>
1842           </parameters>
1843         </callback>
1844       </field>
1845       <field name="paste_text">
1846         <callback name="paste_text">
1847           <return-value transfer-ownership="none">
1848             <type name="none" c:type="void"/>
1849           </return-value>
1850           <parameters>
1851             <parameter name="text" transfer-ownership="none">
1852               <type name="EditableText" c:type="AtkEditableText*"/>
1853             </parameter>
1854             <parameter name="position" transfer-ownership="none">
1855               <doc xml:whitespace="preserve">position to paste</doc>
1856               <type name="gint" c:type="gint"/>
1857             </parameter>
1858           </parameters>
1859         </callback>
1860       </field>
1861       <field name="pad1">
1862         <type name="Function" c:type="AtkFunction"/>
1863       </field>
1864       <field name="pad2">
1865         <type name="Function" c:type="AtkFunction"/>
1866       </field>
1867     </record>
1868     <callback name="EventListener" c:type="AtkEventListener">
1869       <doc xml:whitespace="preserve">A function which is called when an object emits a matching event,
1870 as used in #atk_add_focus_tracker.
1871 Currently the only events for which object-specific handlers are
1872 supported are events of type "focus:".  Most clients of ATK will prefer to 
1873 attach signal handlers for the various ATK signals instead.</doc>
1874       <return-value transfer-ownership="none">
1875         <type name="none" c:type="void"/>
1876       </return-value>
1877       <parameters>
1878         <parameter name="obj" transfer-ownership="none">
1879           <doc xml:whitespace="preserve">An #AtkObject instance for whom the callback will be called when the specified event (e.g. 'focus:') takes place.</doc>
1880           <type name="Object" c:type="AtkObject*"/>
1881         </parameter>
1882       </parameters>
1883     </callback>
1884     <callback name="EventListenerInit" c:type="AtkEventListenerInit">
1885       <doc xml:whitespace="preserve">An #AtkEventListenerInit function is a special function that is
1886 called in order to initialize the per-object event registration system
1887 used by #AtkEventListener, if any preparation is required.</doc>
1888       <return-value transfer-ownership="none">
1889         <type name="none" c:type="void"/>
1890       </return-value>
1891     </callback>
1892     <callback name="FocusHandler" c:type="AtkFocusHandler">
1893       <return-value transfer-ownership="none">
1894         <type name="none" c:type="void"/>
1895       </return-value>
1896       <parameters>
1897         <parameter transfer-ownership="none">
1898           <type name="Object" c:type="AtkObject*"/>
1899         </parameter>
1900         <parameter transfer-ownership="none">
1901           <type name="gboolean" c:type="gboolean"/>
1902         </parameter>
1903       </parameters>
1904     </callback>
1905     <callback name="Function" c:type="AtkFunction">
1906       <return-value transfer-ownership="none">
1907         <type name="gboolean" c:type="gboolean"/>
1908       </return-value>
1909       <parameters>
1910         <parameter name="data" transfer-ownership="none">
1911           <type name="gpointer" c:type="gpointer"/>
1912         </parameter>
1913       </parameters>
1914     </callback>
1915     <class name="GObjectAccessible"
1916            c:symbol-prefix="gobject_accessible"
1917            c:type="AtkGObjectAccessible"
1918            parent="Object"
1919            glib:type-name="AtkGObjectAccessible"
1920            glib:get-type="atk_gobject_accessible_get_type"
1921            glib:type-struct="GObjectAccessibleClass">
1922       <function name="for_object"
1923                 c:identifier="atk_gobject_accessible_for_object"
1924                 introspectable="0">
1925         <doc xml:whitespace="preserve">Gets the accessible object for the specified @obj.</doc>
1926         <return-value>
1927           <doc xml:whitespace="preserve">a #AtkObject which is the accessible object for the @obj</doc>
1928           <type name="Object" c:type="AtkObject*"/>
1929         </return-value>
1930         <parameters>
1931           <parameter name="obj" transfer-ownership="none">
1932             <doc xml:whitespace="preserve">a #GObject</doc>
1933             <type name="GObject.Object" c:type="GObject*"/>
1934           </parameter>
1935         </parameters>
1936       </function>
1937       <method name="get_object"
1938               c:identifier="atk_gobject_accessible_get_object"
1939               introspectable="0">
1940         <doc xml:whitespace="preserve">Gets the GObject for which @obj is the accessible object.</doc>
1941         <return-value>
1942           <doc xml:whitespace="preserve">a #GObject which is the object for which @obj is the accessible object</doc>
1943           <type name="GObject.Object" c:type="GObject*"/>
1944         </return-value>
1945       </method>
1946       <field name="parent">
1947         <type name="Object" c:type="AtkObject"/>
1948       </field>
1949     </class>
1950     <record name="GObjectAccessibleClass"
1951             c:type="AtkGObjectAccessibleClass"
1952             glib:is-gtype-struct-for="GObjectAccessible">
1953       <field name="parent_class">
1954         <type name="ObjectClass" c:type="AtkObjectClass"/>
1955       </field>
1956       <field name="pad1">
1957         <type name="Function" c:type="AtkFunction"/>
1958       </field>
1959       <field name="pad2">
1960         <type name="Function" c:type="AtkFunction"/>
1961       </field>
1962     </record>
1963     <class name="Hyperlink"
1964            c:symbol-prefix="hyperlink"
1965            c:type="AtkHyperlink"
1966            parent="GObject.Object"
1967            glib:type-name="AtkHyperlink"
1968            glib:get-type="atk_hyperlink_get_type"
1969            glib:type-struct="HyperlinkClass">
1970       <implements name="Action"/>
1971       <virtual-method name="get_end_index" invoker="get_end_index">
1972         <doc xml:whitespace="preserve">Gets the index with the hypertext document at which this link ends.</doc>
1973         <return-value transfer-ownership="none">
1974           <doc xml:whitespace="preserve">the index with the hypertext document at which this link ends</doc>
1975           <type name="gint" c:type="gint"/>
1976         </return-value>
1977       </virtual-method>
1978       <virtual-method name="get_n_anchors" invoker="get_n_anchors">
1979         <doc xml:whitespace="preserve">Gets the number of anchors associated with this hyperlink.</doc>
1980         <return-value transfer-ownership="none">
1981           <doc xml:whitespace="preserve">the number of anchors associated with this hyperlink</doc>
1982           <type name="gint" c:type="gint"/>
1983         </return-value>
1984       </virtual-method>
1985       <virtual-method name="get_object"
1986                       invoker="get_object"
1987                       introspectable="0">
1988         <doc xml:whitespace="preserve">Returns the item associated with this hyperlinks nth anchor.
1989 For instance, the returned #AtkObject will implement #AtkText
1990 if @link_ is a text hyperlink, #AtkImage if @link_ is an image
1991 hyperlink etc. 
1992 Multiple anchors are primarily used by client-side image maps.</doc>
1993         <return-value>
1994           <doc xml:whitespace="preserve">an #AtkObject associated with this hyperlinks i-th anchor</doc>
1995           <type name="Object" c:type="AtkObject*"/>
1996         </return-value>
1997         <parameters>
1998           <parameter name="i" transfer-ownership="none">
1999             <doc xml:whitespace="preserve">a (zero-index) integer specifying the desired anchor</doc>
2000             <type name="gint" c:type="gint"/>
2001           </parameter>
2002         </parameters>
2003       </virtual-method>
2004       <virtual-method name="get_start_index" invoker="get_start_index">
2005         <doc xml:whitespace="preserve">Gets the index with the hypertext document at which this link begins.</doc>
2006         <return-value transfer-ownership="none">
2007           <doc xml:whitespace="preserve">the index with the hypertext document at which this link begins</doc>
2008           <type name="gint" c:type="gint"/>
2009         </return-value>
2010       </virtual-method>
2011       <virtual-method name="get_uri" invoker="get_uri">
2012         <doc xml:whitespace="preserve">Get a the URI associated with the anchor specified 
2013 by @i of @link_. 
2014 Multiple anchors are primarily used by client-side image maps.</doc>
2015         <return-value transfer-ownership="full">
2016           <doc xml:whitespace="preserve">a string specifying the URI</doc>
2017           <type name="utf8" c:type="gchar*"/>
2018         </return-value>
2019         <parameters>
2020           <parameter name="i" transfer-ownership="none">
2021             <doc xml:whitespace="preserve">a (zero-index) integer specifying the desired anchor</doc>
2022             <type name="gint" c:type="gint"/>
2023           </parameter>
2024         </parameters>
2025       </virtual-method>
2026       <virtual-method name="is_selected_link">
2027         <return-value transfer-ownership="none">
2028           <type name="gboolean" c:type="gboolean"/>
2029         </return-value>
2030       </virtual-method>
2031       <virtual-method name="is_valid" invoker="is_valid">
2032         <doc xml:whitespace="preserve">Since the document that a link is associated with may have changed
2033 this method returns %TRUE if the link is still valid (with
2034 respect to the document it references) and %FALSE otherwise.</doc>
2035         <return-value transfer-ownership="none">
2036           <doc xml:whitespace="preserve">whether or not this link is still valid</doc>
2037           <type name="gboolean" c:type="gboolean"/>
2038         </return-value>
2039       </virtual-method>
2040       <virtual-method name="link_state">
2041         <return-value transfer-ownership="none">
2042           <type name="guint" c:type="guint"/>
2043         </return-value>
2044       </virtual-method>
2045       <method name="get_end_index" c:identifier="atk_hyperlink_get_end_index">
2046         <doc xml:whitespace="preserve">Gets the index with the hypertext document at which this link ends.</doc>
2047         <return-value transfer-ownership="none">
2048           <doc xml:whitespace="preserve">the index with the hypertext document at which this link ends</doc>
2049           <type name="gint" c:type="gint"/>
2050         </return-value>
2051       </method>
2052       <method name="get_n_anchors" c:identifier="atk_hyperlink_get_n_anchors">
2053         <doc xml:whitespace="preserve">Gets the number of anchors associated with this hyperlink.</doc>
2054         <return-value transfer-ownership="none">
2055           <doc xml:whitespace="preserve">the number of anchors associated with this hyperlink</doc>
2056           <type name="gint" c:type="gint"/>
2057         </return-value>
2058       </method>
2059       <method name="get_object"
2060               c:identifier="atk_hyperlink_get_object"
2061               introspectable="0">
2062         <doc xml:whitespace="preserve">Returns the item associated with this hyperlinks nth anchor.
2063 For instance, the returned #AtkObject will implement #AtkText
2064 if @link_ is a text hyperlink, #AtkImage if @link_ is an image
2065 hyperlink etc. 
2066 Multiple anchors are primarily used by client-side image maps.</doc>
2067         <return-value>
2068           <doc xml:whitespace="preserve">an #AtkObject associated with this hyperlinks i-th anchor</doc>
2069           <type name="Object" c:type="AtkObject*"/>
2070         </return-value>
2071         <parameters>
2072           <parameter name="i" transfer-ownership="none">
2073             <doc xml:whitespace="preserve">a (zero-index) integer specifying the desired anchor</doc>
2074             <type name="gint" c:type="gint"/>
2075           </parameter>
2076         </parameters>
2077       </method>
2078       <method name="get_start_index"
2079               c:identifier="atk_hyperlink_get_start_index">
2080         <doc xml:whitespace="preserve">Gets the index with the hypertext document at which this link begins.</doc>
2081         <return-value transfer-ownership="none">
2082           <doc xml:whitespace="preserve">the index with the hypertext document at which this link begins</doc>
2083           <type name="gint" c:type="gint"/>
2084         </return-value>
2085       </method>
2086       <method name="get_uri" c:identifier="atk_hyperlink_get_uri">
2087         <doc xml:whitespace="preserve">Get a the URI associated with the anchor specified 
2088 by @i of @link_. 
2089 Multiple anchors are primarily used by client-side image maps.</doc>
2090         <return-value transfer-ownership="full">
2091           <doc xml:whitespace="preserve">a string specifying the URI</doc>
2092           <type name="utf8" c:type="gchar*"/>
2093         </return-value>
2094         <parameters>
2095           <parameter name="i" transfer-ownership="none">
2096             <doc xml:whitespace="preserve">a (zero-index) integer specifying the desired anchor</doc>
2097             <type name="gint" c:type="gint"/>
2098           </parameter>
2099         </parameters>
2100       </method>
2101       <method name="is_inline" c:identifier="atk_hyperlink_is_inline">
2102         <doc xml:whitespace="preserve">Indicates whether the link currently displays some or all of its
2103 content inline.  Ordinary HTML links will usually return
2104 %FALSE, but an inline &amp;lt;src&amp;gt; HTML element will return
2105 %TRUE.</doc>
2106         <return-value transfer-ownership="none">
2107           <doc xml:whitespace="preserve">whether or not this link displays its content inline.</doc>
2108           <type name="gboolean" c:type="gboolean"/>
2109         </return-value>
2110       </method>
2111       <method name="is_valid" c:identifier="atk_hyperlink_is_valid">
2112         <doc xml:whitespace="preserve">Since the document that a link is associated with may have changed
2113 this method returns %TRUE if the link is still valid (with
2114 respect to the document it references) and %FALSE otherwise.</doc>
2115         <return-value transfer-ownership="none">
2116           <doc xml:whitespace="preserve">whether or not this link is still valid</doc>
2117           <type name="gboolean" c:type="gboolean"/>
2118         </return-value>
2119       </method>
2120       <property name="end-index" transfer-ownership="none">
2121         <type name="gint"/>
2122       </property>
2123       <property name="number-of-anchors" transfer-ownership="none">
2124         <type name="gint"/>
2125       </property>
2126       <property name="selected-link" transfer-ownership="none">
2127         <type name="gboolean"/>
2128       </property>
2129       <property name="start-index" transfer-ownership="none">
2130         <type name="gint"/>
2131       </property>
2132       <field name="parent">
2133         <type name="GObject.Object" c:type="GObject"/>
2134       </field>
2135       <glib:signal name="link-activated">
2136         <return-value transfer-ownership="none">
2137           <type name="none"/>
2138         </return-value>
2139       </glib:signal>
2140     </class>
2141     <record name="HyperlinkClass"
2142             c:type="AtkHyperlinkClass"
2143             glib:is-gtype-struct-for="Hyperlink">
2144       <field name="parent">
2145         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
2146       </field>
2147       <field name="get_uri">
2148         <callback name="get_uri">
2149           <return-value transfer-ownership="full">
2150             <doc xml:whitespace="preserve">a string specifying the URI</doc>
2151             <type name="utf8" c:type="gchar*"/>
2152           </return-value>
2153           <parameters>
2154             <parameter name="link_" transfer-ownership="none">
2155               <type name="Hyperlink" c:type="AtkHyperlink*"/>
2156             </parameter>
2157             <parameter name="i" transfer-ownership="none">
2158               <doc xml:whitespace="preserve">a (zero-index) integer specifying the desired anchor</doc>
2159               <type name="gint" c:type="gint"/>
2160             </parameter>
2161           </parameters>
2162         </callback>
2163       </field>
2164       <field name="get_object" introspectable="0">
2165         <callback name="get_object" introspectable="0">
2166           <return-value>
2167             <doc xml:whitespace="preserve">an #AtkObject associated with this hyperlinks i-th anchor</doc>
2168             <type name="Object" c:type="AtkObject*"/>
2169           </return-value>
2170           <parameters>
2171             <parameter name="link_" transfer-ownership="none">
2172               <type name="Hyperlink" c:type="AtkHyperlink*"/>
2173             </parameter>
2174             <parameter name="i" transfer-ownership="none">
2175               <doc xml:whitespace="preserve">a (zero-index) integer specifying the desired anchor</doc>
2176               <type name="gint" c:type="gint"/>
2177             </parameter>
2178           </parameters>
2179         </callback>
2180       </field>
2181       <field name="get_end_index">
2182         <callback name="get_end_index">
2183           <return-value transfer-ownership="none">
2184             <doc xml:whitespace="preserve">the index with the hypertext document at which this link ends</doc>
2185             <type name="gint" c:type="gint"/>
2186           </return-value>
2187           <parameters>
2188             <parameter name="link_" transfer-ownership="none">
2189               <type name="Hyperlink" c:type="AtkHyperlink*"/>
2190             </parameter>
2191           </parameters>
2192         </callback>
2193       </field>
2194       <field name="get_start_index">
2195         <callback name="get_start_index">
2196           <return-value transfer-ownership="none">
2197             <doc xml:whitespace="preserve">the index with the hypertext document at which this link begins</doc>
2198             <type name="gint" c:type="gint"/>
2199           </return-value>
2200           <parameters>
2201             <parameter name="link_" transfer-ownership="none">
2202               <type name="Hyperlink" c:type="AtkHyperlink*"/>
2203             </parameter>
2204           </parameters>
2205         </callback>
2206       </field>
2207       <field name="is_valid">
2208         <callback name="is_valid">
2209           <return-value transfer-ownership="none">
2210             <doc xml:whitespace="preserve">whether or not this link is still valid</doc>
2211             <type name="gboolean" c:type="gboolean"/>
2212           </return-value>
2213           <parameters>
2214             <parameter name="link_" transfer-ownership="none">
2215               <type name="Hyperlink" c:type="AtkHyperlink*"/>
2216             </parameter>
2217           </parameters>
2218         </callback>
2219       </field>
2220       <field name="get_n_anchors">
2221         <callback name="get_n_anchors">
2222           <return-value transfer-ownership="none">
2223             <doc xml:whitespace="preserve">the number of anchors associated with this hyperlink</doc>
2224             <type name="gint" c:type="gint"/>
2225           </return-value>
2226           <parameters>
2227             <parameter name="link_" transfer-ownership="none">
2228               <type name="Hyperlink" c:type="AtkHyperlink*"/>
2229             </parameter>
2230           </parameters>
2231         </callback>
2232       </field>
2233       <field name="link_state">
2234         <callback name="link_state">
2235           <return-value transfer-ownership="none">
2236             <type name="guint" c:type="guint"/>
2237           </return-value>
2238           <parameters>
2239             <parameter name="link_" transfer-ownership="none">
2240               <type name="Hyperlink" c:type="AtkHyperlink*"/>
2241             </parameter>
2242           </parameters>
2243         </callback>
2244       </field>
2245       <field name="is_selected_link">
2246         <callback name="is_selected_link">
2247           <return-value transfer-ownership="none">
2248             <type name="gboolean" c:type="gboolean"/>
2249           </return-value>
2250           <parameters>
2251             <parameter name="link_" transfer-ownership="none">
2252               <type name="Hyperlink" c:type="AtkHyperlink*"/>
2253             </parameter>
2254           </parameters>
2255         </callback>
2256       </field>
2257       <field name="link_activated">
2258         <callback name="link_activated">
2259           <return-value transfer-ownership="none">
2260             <type name="none" c:type="void"/>
2261           </return-value>
2262           <parameters>
2263             <parameter name="link_" transfer-ownership="none">
2264               <type name="Hyperlink" c:type="AtkHyperlink*"/>
2265             </parameter>
2266           </parameters>
2267         </callback>
2268       </field>
2269       <field name="pad1">
2270         <type name="Function" c:type="AtkFunction"/>
2271       </field>
2272     </record>
2273     <interface name="HyperlinkImpl"
2274                c:symbol-prefix="hyperlink_impl"
2275                c:type="AtkHyperlinkImpl"
2276                glib:type-name="AtkHyperlinkImpl"
2277                glib:get-type="atk_hyperlink_impl_get_type"
2278                glib:type-struct="HyperlinkImplIface">
2279       <virtual-method name="get_hyperlink"
2280                       invoker="get_hyperlink"
2281                       version="1.12"
2282                       introspectable="0">
2283         <doc xml:whitespace="preserve">Gets the hyperlink associated with this object.
2284 Returns an AtkHyperlink object which points to this implementing AtkObject.</doc>
2285         <return-value>
2286           <type name="Hyperlink" c:type="AtkHyperlink*"/>
2287         </return-value>
2288       </virtual-method>
2289       <method name="get_hyperlink"
2290               c:identifier="atk_hyperlink_impl_get_hyperlink"
2291               version="1.12"
2292               introspectable="0">
2293         <doc xml:whitespace="preserve">Gets the hyperlink associated with this object.
2294 Returns an AtkHyperlink object which points to this implementing AtkObject.</doc>
2295         <return-value>
2296           <type name="Hyperlink" c:type="AtkHyperlink*"/>
2297         </return-value>
2298       </method>
2299     </interface>
2300     <record name="HyperlinkImplIface"
2301             c:type="AtkHyperlinkImplIface"
2302             glib:is-gtype-struct-for="HyperlinkImpl">
2303       <field name="parent">
2304         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
2305       </field>
2306       <field name="get_hyperlink" introspectable="0">
2307         <callback name="get_hyperlink" introspectable="0">
2308           <return-value>
2309             <type name="Hyperlink" c:type="AtkHyperlink*"/>
2310           </return-value>
2311           <parameters>
2312             <parameter name="impl" transfer-ownership="none">
2313               <type name="HyperlinkImpl" c:type="AtkHyperlinkImpl*"/>
2314             </parameter>
2315           </parameters>
2316         </callback>
2317       </field>
2318       <field name="pad1">
2319         <type name="Function" c:type="AtkFunction"/>
2320       </field>
2321     </record>
2322     <bitfield name="HyperlinkStateFlags"
2323               glib:type-name="AtkHyperlinkStateFlags"
2324               glib:get-type="atk_hyperlink_state_flags_get_type"
2325               c:type="AtkHyperlinkStateFlags">
2326       <member name="inline"
2327               value="1"
2328               c:identifier="ATK_HYPERLINK_IS_INLINE"
2329               glib:nick="inline"/>
2330     </bitfield>
2331     <interface name="Hypertext"
2332                c:symbol-prefix="hypertext"
2333                c:type="AtkHypertext"
2334                glib:type-name="AtkHypertext"
2335                glib:get-type="atk_hypertext_get_type"
2336                glib:type-struct="HypertextIface">
2337       <virtual-method name="get_link" invoker="get_link" introspectable="0">
2338         <doc xml:whitespace="preserve">Gets the link in this hypertext document at index 
2339 index @link_index</doc>
2340         <return-value>
2341           <doc xml:whitespace="preserve">the link in this hypertext document at</doc>
2342           <type name="Hyperlink" c:type="AtkHyperlink*"/>
2343         </return-value>
2344         <parameters>
2345           <parameter name="link_index" transfer-ownership="none">
2346             <doc xml:whitespace="preserve">an integer specifying the desired link</doc>
2347             <type name="gint" c:type="gint"/>
2348           </parameter>
2349         </parameters>
2350       </virtual-method>
2351       <virtual-method name="get_link_index" invoker="get_link_index">
2352         <doc xml:whitespace="preserve">Gets the index into the array of hyperlinks that is associated with
2353 the character specified by @char_index.
2354 or -1 if there is no hyperlink associated with this character.</doc>
2355         <return-value transfer-ownership="none">
2356           <doc xml:whitespace="preserve">an index into the array of hyperlinks in @hypertext,</doc>
2357           <type name="gint" c:type="gint"/>
2358         </return-value>
2359         <parameters>
2360           <parameter name="char_index" transfer-ownership="none">
2361             <doc xml:whitespace="preserve">a character index</doc>
2362             <type name="gint" c:type="gint"/>
2363           </parameter>
2364         </parameters>
2365       </virtual-method>
2366       <virtual-method name="get_n_links" invoker="get_n_links">
2367         <doc xml:whitespace="preserve">Gets the number of links within this hypertext document.</doc>
2368         <return-value transfer-ownership="none">
2369           <doc xml:whitespace="preserve">the number of links within this hypertext document</doc>
2370           <type name="gint" c:type="gint"/>
2371         </return-value>
2372       </virtual-method>
2373       <method name="get_link"
2374               c:identifier="atk_hypertext_get_link"
2375               introspectable="0">
2376         <doc xml:whitespace="preserve">Gets the link in this hypertext document at index 
2377 index @link_index</doc>
2378         <return-value>
2379           <doc xml:whitespace="preserve">the link in this hypertext document at</doc>
2380           <type name="Hyperlink" c:type="AtkHyperlink*"/>
2381         </return-value>
2382         <parameters>
2383           <parameter name="link_index" transfer-ownership="none">
2384             <doc xml:whitespace="preserve">an integer specifying the desired link</doc>
2385             <type name="gint" c:type="gint"/>
2386           </parameter>
2387         </parameters>
2388       </method>
2389       <method name="get_link_index"
2390               c:identifier="atk_hypertext_get_link_index">
2391         <doc xml:whitespace="preserve">Gets the index into the array of hyperlinks that is associated with
2392 the character specified by @char_index.
2393 or -1 if there is no hyperlink associated with this character.</doc>
2394         <return-value transfer-ownership="none">
2395           <doc xml:whitespace="preserve">an index into the array of hyperlinks in @hypertext,</doc>
2396           <type name="gint" c:type="gint"/>
2397         </return-value>
2398         <parameters>
2399           <parameter name="char_index" transfer-ownership="none">
2400             <doc xml:whitespace="preserve">a character index</doc>
2401             <type name="gint" c:type="gint"/>
2402           </parameter>
2403         </parameters>
2404       </method>
2405       <method name="get_n_links" c:identifier="atk_hypertext_get_n_links">
2406         <doc xml:whitespace="preserve">Gets the number of links within this hypertext document.</doc>
2407         <return-value transfer-ownership="none">
2408           <doc xml:whitespace="preserve">the number of links within this hypertext document</doc>
2409           <type name="gint" c:type="gint"/>
2410         </return-value>
2411       </method>
2412       <glib:signal name="link-selected">
2413         <return-value transfer-ownership="none">
2414           <type name="none"/>
2415         </return-value>
2416         <parameters>
2417           <parameter name="object" transfer-ownership="none">
2418             <type name="gint"/>
2419           </parameter>
2420         </parameters>
2421       </glib:signal>
2422     </interface>
2423     <record name="HypertextIface"
2424             c:type="AtkHypertextIface"
2425             glib:is-gtype-struct-for="Hypertext">
2426       <field name="parent">
2427         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
2428       </field>
2429       <field name="get_link" introspectable="0">
2430         <callback name="get_link" introspectable="0">
2431           <return-value>
2432             <doc xml:whitespace="preserve">the link in this hypertext document at</doc>
2433             <type name="Hyperlink" c:type="AtkHyperlink*"/>
2434           </return-value>
2435           <parameters>
2436             <parameter name="hypertext" transfer-ownership="none">
2437               <type name="Hypertext" c:type="AtkHypertext*"/>
2438             </parameter>
2439             <parameter name="link_index" transfer-ownership="none">
2440               <doc xml:whitespace="preserve">an integer specifying the desired link</doc>
2441               <type name="gint" c:type="gint"/>
2442             </parameter>
2443           </parameters>
2444         </callback>
2445       </field>
2446       <field name="get_n_links">
2447         <callback name="get_n_links">
2448           <return-value transfer-ownership="none">
2449             <doc xml:whitespace="preserve">the number of links within this hypertext document</doc>
2450             <type name="gint" c:type="gint"/>
2451           </return-value>
2452           <parameters>
2453             <parameter name="hypertext" transfer-ownership="none">
2454               <type name="Hypertext" c:type="AtkHypertext*"/>
2455             </parameter>
2456           </parameters>
2457         </callback>
2458       </field>
2459       <field name="get_link_index">
2460         <callback name="get_link_index">
2461           <return-value transfer-ownership="none">
2462             <doc xml:whitespace="preserve">an index into the array of hyperlinks in @hypertext,</doc>
2463             <type name="gint" c:type="gint"/>
2464           </return-value>
2465           <parameters>
2466             <parameter name="hypertext" transfer-ownership="none">
2467               <type name="Hypertext" c:type="AtkHypertext*"/>
2468             </parameter>
2469             <parameter name="char_index" transfer-ownership="none">
2470               <doc xml:whitespace="preserve">a character index</doc>
2471               <type name="gint" c:type="gint"/>
2472             </parameter>
2473           </parameters>
2474         </callback>
2475       </field>
2476       <field name="link_selected">
2477         <callback name="link_selected">
2478           <return-value transfer-ownership="none">
2479             <type name="none" c:type="void"/>
2480           </return-value>
2481           <parameters>
2482             <parameter name="hypertext" transfer-ownership="none">
2483               <type name="Hypertext" c:type="AtkHypertext*"/>
2484             </parameter>
2485             <parameter name="link_index" transfer-ownership="none">
2486               <type name="gint" c:type="gint"/>
2487             </parameter>
2488           </parameters>
2489         </callback>
2490       </field>
2491       <field name="pad1">
2492         <type name="Function" c:type="AtkFunction"/>
2493       </field>
2494       <field name="pad2">
2495         <type name="Function" c:type="AtkFunction"/>
2496       </field>
2497       <field name="pad3">
2498         <type name="Function" c:type="AtkFunction"/>
2499       </field>
2500     </record>
2501     <interface name="Image"
2502                c:symbol-prefix="image"
2503                c:type="AtkImage"
2504                glib:type-name="AtkImage"
2505                glib:get-type="atk_image_get_type"
2506                glib:type-struct="ImageIface">
2507       <virtual-method name="get_image_description"
2508                       invoker="get_image_description">
2509         <doc xml:whitespace="preserve">Get a textual description of this image.</doc>
2510         <return-value transfer-ownership="none">
2511           <doc xml:whitespace="preserve">a string representing the image description</doc>
2512           <type name="utf8" c:type="gchar*"/>
2513         </return-value>
2514       </virtual-method>
2515       <virtual-method name="get_image_locale" invoker="get_image_locale">
2516         <doc xml:whitespace="preserve">Since ATK 1.12
2517 Returns a string corresponding to the POSIX LC_MESSAGES locale used by the image description, or NULL if the image does not specify a locale.</doc>
2518         <return-value transfer-ownership="none">
2519           <type name="utf8" c:type="gchar*"/>
2520         </return-value>
2521       </virtual-method>
2522       <virtual-method name="get_image_position" invoker="get_image_position">
2523         <doc xml:whitespace="preserve">Gets the position of the image in the form of a point specifying the
2524 images top-left corner.</doc>
2525         <return-value transfer-ownership="none">
2526           <type name="none" c:type="void"/>
2527         </return-value>
2528         <parameters>
2529           <parameter name="x" transfer-ownership="none">
2530             <doc xml:whitespace="preserve">address of #gint to put x coordinate position; otherwise, -1 if value cannot be obtained.</doc>
2531             <type name="gint" c:type="gint*"/>
2532           </parameter>
2533           <parameter name="y" transfer-ownership="none">
2534             <doc xml:whitespace="preserve">address of #gint to put y coordinate position; otherwise, -1 if value cannot be obtained.</doc>
2535             <type name="gint" c:type="gint*"/>
2536           </parameter>
2537           <parameter name="coord_type" transfer-ownership="none">
2538             <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
2539             <type name="CoordType" c:type="AtkCoordType"/>
2540           </parameter>
2541         </parameters>
2542       </virtual-method>
2543       <virtual-method name="get_image_size" invoker="get_image_size">
2544         <doc xml:whitespace="preserve">Get the width and height in pixels for the specified image.
2545 The values of @width and @height are returned as -1 if the
2546 values cannot be obtained (for instance, if the object is not onscreen).</doc>
2547         <return-value transfer-ownership="none">
2548           <type name="none" c:type="void"/>
2549         </return-value>
2550         <parameters>
2551           <parameter name="width" transfer-ownership="none">
2552             <doc xml:whitespace="preserve">filled with the image width, or -1 if the value cannot be obtained.</doc>
2553             <type name="gint" c:type="gint*"/>
2554           </parameter>
2555           <parameter name="height" transfer-ownership="none">
2556             <doc xml:whitespace="preserve">filled with the image height, or -1 if the value cannot be obtained.</doc>
2557             <type name="gint" c:type="gint*"/>
2558           </parameter>
2559         </parameters>
2560       </virtual-method>
2561       <virtual-method name="set_image_description"
2562                       invoker="set_image_description">
2563         <doc xml:whitespace="preserve">Sets the textual description for this image.
2564 not be completed.</doc>
2565         <return-value transfer-ownership="none">
2566           <doc xml:whitespace="preserve">boolean TRUE, or FALSE if operation could</doc>
2567           <type name="gboolean" c:type="gboolean"/>
2568         </return-value>
2569         <parameters>
2570           <parameter name="description" transfer-ownership="none">
2571             <doc xml:whitespace="preserve">a string description to set for @image</doc>
2572             <type name="utf8" c:type="gchar*"/>
2573           </parameter>
2574         </parameters>
2575       </virtual-method>
2576       <method name="get_image_description"
2577               c:identifier="atk_image_get_image_description">
2578         <doc xml:whitespace="preserve">Get a textual description of this image.</doc>
2579         <return-value transfer-ownership="none">
2580           <doc xml:whitespace="preserve">a string representing the image description</doc>
2581           <type name="utf8" c:type="gchar*"/>
2582         </return-value>
2583       </method>
2584       <method name="get_image_locale"
2585               c:identifier="atk_image_get_image_locale">
2586         <doc xml:whitespace="preserve">Since ATK 1.12
2587 Returns a string corresponding to the POSIX LC_MESSAGES locale used by the image description, or NULL if the image does not specify a locale.</doc>
2588         <return-value transfer-ownership="none">
2589           <type name="utf8" c:type="gchar*"/>
2590         </return-value>
2591       </method>
2592       <method name="get_image_position"
2593               c:identifier="atk_image_get_image_position">
2594         <doc xml:whitespace="preserve">Gets the position of the image in the form of a point specifying the
2595 images top-left corner.</doc>
2596         <return-value transfer-ownership="none">
2597           <type name="none" c:type="void"/>
2598         </return-value>
2599         <parameters>
2600           <parameter name="x" transfer-ownership="none">
2601             <doc xml:whitespace="preserve">address of #gint to put x coordinate position; otherwise, -1 if value cannot be obtained.</doc>
2602             <type name="gint" c:type="gint*"/>
2603           </parameter>
2604           <parameter name="y" transfer-ownership="none">
2605             <doc xml:whitespace="preserve">address of #gint to put y coordinate position; otherwise, -1 if value cannot be obtained.</doc>
2606             <type name="gint" c:type="gint*"/>
2607           </parameter>
2608           <parameter name="coord_type" transfer-ownership="none">
2609             <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
2610             <type name="CoordType" c:type="AtkCoordType"/>
2611           </parameter>
2612         </parameters>
2613       </method>
2614       <method name="get_image_size" c:identifier="atk_image_get_image_size">
2615         <doc xml:whitespace="preserve">Get the width and height in pixels for the specified image.
2616 The values of @width and @height are returned as -1 if the
2617 values cannot be obtained (for instance, if the object is not onscreen).</doc>
2618         <return-value transfer-ownership="none">
2619           <type name="none" c:type="void"/>
2620         </return-value>
2621         <parameters>
2622           <parameter name="width" transfer-ownership="none">
2623             <doc xml:whitespace="preserve">filled with the image width, or -1 if the value cannot be obtained.</doc>
2624             <type name="gint" c:type="gint*"/>
2625           </parameter>
2626           <parameter name="height" transfer-ownership="none">
2627             <doc xml:whitespace="preserve">filled with the image height, or -1 if the value cannot be obtained.</doc>
2628             <type name="gint" c:type="gint*"/>
2629           </parameter>
2630         </parameters>
2631       </method>
2632       <method name="set_image_description"
2633               c:identifier="atk_image_set_image_description">
2634         <doc xml:whitespace="preserve">Sets the textual description for this image.
2635 not be completed.</doc>
2636         <return-value transfer-ownership="none">
2637           <doc xml:whitespace="preserve">boolean TRUE, or FALSE if operation could</doc>
2638           <type name="gboolean" c:type="gboolean"/>
2639         </return-value>
2640         <parameters>
2641           <parameter name="description" transfer-ownership="none">
2642             <doc xml:whitespace="preserve">a string description to set for @image</doc>
2643             <type name="utf8" c:type="gchar*"/>
2644           </parameter>
2645         </parameters>
2646       </method>
2647     </interface>
2648     <record name="ImageIface"
2649             c:type="AtkImageIface"
2650             glib:is-gtype-struct-for="Image">
2651       <field name="parent">
2652         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
2653       </field>
2654       <field name="get_image_position">
2655         <callback name="get_image_position">
2656           <return-value transfer-ownership="none">
2657             <type name="none" c:type="void"/>
2658           </return-value>
2659           <parameters>
2660             <parameter name="image" transfer-ownership="none">
2661               <type name="Image" c:type="AtkImage*"/>
2662             </parameter>
2663             <parameter name="x" transfer-ownership="none">
2664               <doc xml:whitespace="preserve">address of #gint to put x coordinate position; otherwise, -1 if value cannot be obtained.</doc>
2665               <type name="gint" c:type="gint*"/>
2666             </parameter>
2667             <parameter name="y" transfer-ownership="none">
2668               <doc xml:whitespace="preserve">address of #gint to put y coordinate position; otherwise, -1 if value cannot be obtained.</doc>
2669               <type name="gint" c:type="gint*"/>
2670             </parameter>
2671             <parameter name="coord_type" transfer-ownership="none">
2672               <doc xml:whitespace="preserve">specifies whether the coordinates are relative to the screen or to the components top level window</doc>
2673               <type name="CoordType" c:type="AtkCoordType"/>
2674             </parameter>
2675           </parameters>
2676         </callback>
2677       </field>
2678       <field name="get_image_description">
2679         <callback name="get_image_description">
2680           <return-value transfer-ownership="none">
2681             <doc xml:whitespace="preserve">a string representing the image description</doc>
2682             <type name="utf8" c:type="gchar*"/>
2683           </return-value>
2684           <parameters>
2685             <parameter name="image" transfer-ownership="none">
2686               <type name="Image" c:type="AtkImage*"/>
2687             </parameter>
2688           </parameters>
2689         </callback>
2690       </field>
2691       <field name="get_image_size">
2692         <callback name="get_image_size">
2693           <return-value transfer-ownership="none">
2694             <type name="none" c:type="void"/>
2695           </return-value>
2696           <parameters>
2697             <parameter name="image" transfer-ownership="none">
2698               <type name="Image" c:type="AtkImage*"/>
2699             </parameter>
2700             <parameter name="width" transfer-ownership="none">
2701               <doc xml:whitespace="preserve">filled with the image width, or -1 if the value cannot be obtained.</doc>
2702               <type name="gint" c:type="gint*"/>
2703             </parameter>
2704             <parameter name="height" transfer-ownership="none">
2705               <doc xml:whitespace="preserve">filled with the image height, or -1 if the value cannot be obtained.</doc>
2706               <type name="gint" c:type="gint*"/>
2707             </parameter>
2708           </parameters>
2709         </callback>
2710       </field>
2711       <field name="set_image_description">
2712         <callback name="set_image_description">
2713           <return-value transfer-ownership="none">
2714             <doc xml:whitespace="preserve">boolean TRUE, or FALSE if operation could</doc>
2715             <type name="gboolean" c:type="gboolean"/>
2716           </return-value>
2717           <parameters>
2718             <parameter name="image" transfer-ownership="none">
2719               <type name="Image" c:type="AtkImage*"/>
2720             </parameter>
2721             <parameter name="description" transfer-ownership="none">
2722               <doc xml:whitespace="preserve">a string description to set for @image</doc>
2723               <type name="utf8" c:type="gchar*"/>
2724             </parameter>
2725           </parameters>
2726         </callback>
2727       </field>
2728       <field name="get_image_locale">
2729         <callback name="get_image_locale">
2730           <return-value transfer-ownership="none">
2731             <type name="utf8" c:type="gchar*"/>
2732           </return-value>
2733           <parameters>
2734             <parameter name="image" transfer-ownership="none">
2735               <type name="Image" c:type="AtkImage*"/>
2736             </parameter>
2737           </parameters>
2738         </callback>
2739       </field>
2740       <field name="pad1">
2741         <type name="Function" c:type="AtkFunction"/>
2742       </field>
2743     </record>
2744     <record name="Implementor" c:type="AtkImplementor" disguised="1">
2745       <method name="ref_accessible"
2746               c:identifier="atk_implementor_ref_accessible"
2747               introspectable="0">
2748         <doc xml:whitespace="preserve">Gets a reference to an object's #AtkObject implementation, if
2749 the object implements #AtkObjectIface</doc>
2750         <return-value>
2751           <doc xml:whitespace="preserve">a reference to an object's #AtkObject implementation</doc>
2752           <type name="Object" c:type="AtkObject*"/>
2753         </return-value>
2754       </method>
2755     </record>
2756     <interface name="ImplementorIface"
2757                c:symbol-prefix="implementor"
2758                c:type="AtkImplementorIface"
2759                glib:type-name="AtkImplementorIface"
2760                glib:get-type="atk_implementor_get_type">
2761     </interface>
2762     <record name="KeyEventStruct" c:type="AtkKeyEventStruct">
2763       <doc xml:whitespace="preserve">Encapsulates information about a key event.</doc>
2764       <field name="type" writable="1">
2765         <type name="gint" c:type="gint"/>
2766       </field>
2767       <field name="state" writable="1">
2768         <type name="guint" c:type="guint"/>
2769       </field>
2770       <field name="keyval" writable="1">
2771         <type name="guint" c:type="guint"/>
2772       </field>
2773       <field name="length" writable="1">
2774         <type name="gint" c:type="gint"/>
2775       </field>
2776       <field name="string" writable="1">
2777         <type name="utf8" c:type="gchar*"/>
2778       </field>
2779       <field name="keycode" writable="1">
2780         <type name="guint16" c:type="guint16"/>
2781       </field>
2782       <field name="timestamp" writable="1">
2783         <type name="guint32" c:type="guint32"/>
2784       </field>
2785     </record>
2786     <enumeration name="KeyEventType"
2787                  glib:type-name="AtkKeyEventType"
2788                  glib:get-type="atk_key_event_type_get_type"
2789                  c:type="AtkKeyEventType">
2790       <member name="press"
2791               value="0"
2792               c:identifier="ATK_KEY_EVENT_PRESS"
2793               glib:nick="press"/>
2794       <member name="release"
2795               value="1"
2796               c:identifier="ATK_KEY_EVENT_RELEASE"
2797               glib:nick="release"/>
2798       <member name="last_defined"
2799               value="2"
2800               c:identifier="ATK_KEY_EVENT_LAST_DEFINED"
2801               glib:nick="last-defined"/>
2802     </enumeration>
2803     <callback name="KeySnoopFunc" c:type="AtkKeySnoopFunc">
2804       <doc xml:whitespace="preserve">An #AtkKeySnoopFunc is a type of callback which is called whenever a key event occurs, 
2805 if registered via atk_add_key_event_listener.  It allows for pre-emptive 
2806 interception of key events via the return code as described below.
2807 discarded without being passed to the normal GUI recipient; FALSE (zero) if the 
2808 event dispatch to the client application should proceed as normal.</doc>
2809       <return-value transfer-ownership="none">
2810         <doc xml:whitespace="preserve">TRUE (nonzero) if the event emission should be stopped and the event</doc>
2811         <type name="gint" c:type="gint"/>
2812       </return-value>
2813       <parameters>
2814         <parameter name="event" transfer-ownership="none">
2815           <doc xml:whitespace="preserve">an AtkKeyEventStruct containing information about the key event for which notification is being given.</doc>
2816           <type name="KeyEventStruct" c:type="AtkKeyEventStruct*"/>
2817         </parameter>
2818         <parameter name="func_data" transfer-ownership="none">
2819           <doc xml:whitespace="preserve">a block of data which will be passed to the event listener, on notification.</doc>
2820           <type name="gpointer" c:type="gpointer"/>
2821         </parameter>
2822       </parameters>
2823     </callback>
2824     <enumeration name="Layer"
2825                  glib:type-name="AtkLayer"
2826                  glib:get-type="atk_layer_get_type"
2827                  c:type="AtkLayer">
2828       <member name="invalid"
2829               value="0"
2830               c:identifier="ATK_LAYER_INVALID"
2831               glib:nick="invalid"/>
2832       <member name="background"
2833               value="1"
2834               c:identifier="ATK_LAYER_BACKGROUND"
2835               glib:nick="background"/>
2836       <member name="canvas"
2837               value="2"
2838               c:identifier="ATK_LAYER_CANVAS"
2839               glib:nick="canvas"/>
2840       <member name="widget"
2841               value="3"
2842               c:identifier="ATK_LAYER_WIDGET"
2843               glib:nick="widget"/>
2844       <member name="mdi"
2845               value="4"
2846               c:identifier="ATK_LAYER_MDI"
2847               glib:nick="mdi"/>
2848       <member name="popup"
2849               value="5"
2850               c:identifier="ATK_LAYER_POPUP"
2851               glib:nick="popup"/>
2852       <member name="overlay"
2853               value="6"
2854               c:identifier="ATK_LAYER_OVERLAY"
2855               glib:nick="overlay"/>
2856       <member name="window"
2857               value="7"
2858               c:identifier="ATK_LAYER_WINDOW"
2859               glib:nick="window"/>
2860     </enumeration>
2861     <class name="Misc"
2862            c:symbol-prefix="misc"
2863            c:type="AtkMisc"
2864            parent="GObject.Object"
2865            glib:type-name="AtkMisc"
2866            glib:get-type="atk_misc_get_type"
2867            glib:type-struct="MiscClass">
2868       <function name="get_instance"
2869                 c:identifier="atk_misc_get_instance"
2870                 version="1.13">
2871         <doc xml:whitespace="preserve">Obtain the singleton instance of AtkMisc for this application.</doc>
2872         <return-value transfer-ownership="none">
2873           <doc xml:whitespace="preserve">The singleton instance of AtkMisc for this application.</doc>
2874           <type name="Misc" c:type="AtkMisc*"/>
2875         </return-value>
2876       </function>
2877       <virtual-method name="threads_enter"
2878                       invoker="threads_enter"
2879                       version="1.13">
2880         <doc xml:whitespace="preserve">Take the thread mutex for the GUI toolkit, 
2881 if one exists. 
2882 (This method is implemented by the toolkit ATK implementation layer;
2883 for instance, for GTK+, GAIL implements this via GDK_THREADS_ENTER).</doc>
2884         <return-value transfer-ownership="none">
2885           <type name="none" c:type="void"/>
2886         </return-value>
2887       </virtual-method>
2888       <virtual-method name="threads_leave"
2889                       invoker="threads_leave"
2890                       version="1.13">
2891         <doc xml:whitespace="preserve">Release the thread mutex for the GUI toolkit, 
2892 if one exists. This method, and atk_misc_threads_enter, 
2893 are needed in some situations by threaded application code which 
2894 services ATK requests, since fulfilling ATK requests often
2895 requires calling into the GUI toolkit.  If a long-running or
2896 potentially blocking call takes place inside such a block, it should
2897 be bracketed by atk_misc_threads_leave/atk_misc_threads_enter calls.
2898 (This method is implemented by the toolkit ATK implementation layer;
2899 for instance, for GTK+, GAIL implements this via GDK_THREADS_LEAVE).</doc>
2900         <return-value transfer-ownership="none">
2901           <type name="none" c:type="void"/>
2902         </return-value>
2903       </virtual-method>
2904       <method name="threads_enter"
2905               c:identifier="atk_misc_threads_enter"
2906               version="1.13">
2907         <doc xml:whitespace="preserve">Take the thread mutex for the GUI toolkit, 
2908 if one exists. 
2909 (This method is implemented by the toolkit ATK implementation layer;
2910 for instance, for GTK+, GAIL implements this via GDK_THREADS_ENTER).</doc>
2911         <return-value transfer-ownership="none">
2912           <type name="none" c:type="void"/>
2913         </return-value>
2914       </method>
2915       <method name="threads_leave"
2916               c:identifier="atk_misc_threads_leave"
2917               version="1.13">
2918         <doc xml:whitespace="preserve">Release the thread mutex for the GUI toolkit, 
2919 if one exists. This method, and atk_misc_threads_enter, 
2920 are needed in some situations by threaded application code which 
2921 services ATK requests, since fulfilling ATK requests often
2922 requires calling into the GUI toolkit.  If a long-running or
2923 potentially blocking call takes place inside such a block, it should
2924 be bracketed by atk_misc_threads_leave/atk_misc_threads_enter calls.
2925 (This method is implemented by the toolkit ATK implementation layer;
2926 for instance, for GTK+, GAIL implements this via GDK_THREADS_LEAVE).</doc>
2927         <return-value transfer-ownership="none">
2928           <type name="none" c:type="void"/>
2929         </return-value>
2930       </method>
2931       <field name="parent">
2932         <type name="GObject.Object" c:type="GObject"/>
2933       </field>
2934     </class>
2935     <record name="MiscClass"
2936             c:type="AtkMiscClass"
2937             glib:is-gtype-struct-for="Misc">
2938       <field name="parent">
2939         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
2940       </field>
2941       <field name="threads_enter">
2942         <callback name="threads_enter">
2943           <return-value transfer-ownership="none">
2944             <type name="none" c:type="void"/>
2945           </return-value>
2946           <parameters>
2947             <parameter name="misc" transfer-ownership="none">
2948               <type name="Misc" c:type="AtkMisc*"/>
2949             </parameter>
2950           </parameters>
2951         </callback>
2952       </field>
2953       <field name="threads_leave">
2954         <callback name="threads_leave">
2955           <return-value transfer-ownership="none">
2956             <type name="none" c:type="void"/>
2957           </return-value>
2958           <parameters>
2959             <parameter name="misc" transfer-ownership="none">
2960               <type name="Misc" c:type="AtkMisc*"/>
2961             </parameter>
2962           </parameters>
2963         </callback>
2964       </field>
2965       <field name="vfuncs">
2966         <array zero-terminated="0" c:type="gpointer" fixed-size="32">
2967           <type name="gpointer" c:type="gpointer"/>
2968         </array>
2969       </field>
2970     </record>
2971     <class name="NoOpObject"
2972            c:symbol-prefix="no_op_object"
2973            c:type="AtkNoOpObject"
2974            parent="Object"
2975            glib:type-name="AtkNoOpObject"
2976            glib:get-type="atk_no_op_object_get_type"
2977            glib:type-struct="NoOpObjectClass">
2978       <implements name="Action"/>
2979       <implements name="Component"/>
2980       <implements name="Document"/>
2981       <implements name="EditableText"/>
2982       <implements name="Hypertext"/>
2983       <implements name="Image"/>
2984       <implements name="Selection"/>
2985       <implements name="Table"/>
2986       <implements name="Text"/>
2987       <implements name="Value"/>
2988       <constructor name="new" c:identifier="atk_no_op_object_new">
2989         <doc xml:whitespace="preserve">Provides a default (non-functioning stub) #AtkObject.
2990 Application maintainers should not use this method.</doc>
2991         <return-value transfer-ownership="full">
2992           <doc xml:whitespace="preserve">a default (non-functioning stub) #AtkObject</doc>
2993           <type name="Object" c:type="AtkObject*"/>
2994         </return-value>
2995         <parameters>
2996           <parameter name="obj" transfer-ownership="none">
2997             <doc xml:whitespace="preserve">a #GObject</doc>
2998             <type name="GObject.Object" c:type="GObject*"/>
2999           </parameter>
3000         </parameters>
3001       </constructor>
3002       <field name="parent">
3003         <type name="Object" c:type="AtkObject"/>
3004       </field>
3005     </class>
3006     <record name="NoOpObjectClass"
3007             c:type="AtkNoOpObjectClass"
3008             glib:is-gtype-struct-for="NoOpObject">
3009       <field name="parent_class">
3010         <type name="ObjectClass" c:type="AtkObjectClass"/>
3011       </field>
3012     </record>
3013     <class name="NoOpObjectFactory"
3014            c:symbol-prefix="no_op_object_factory"
3015            c:type="AtkNoOpObjectFactory"
3016            parent="ObjectFactory"
3017            glib:type-name="AtkNoOpObjectFactory"
3018            glib:get-type="atk_no_op_object_factory_get_type"
3019            glib:type-struct="NoOpObjectFactoryClass">
3020       <constructor name="new" c:identifier="atk_no_op_object_factory_new">
3021         <doc xml:whitespace="preserve">Creates an instance of an #AtkObjectFactory which generates primitive
3022 (non-functioning) #AtkObjects.</doc>
3023         <return-value transfer-ownership="full">
3024           <doc xml:whitespace="preserve">an instance of an #AtkObjectFactory</doc>
3025           <type name="ObjectFactory" c:type="AtkObjectFactory*"/>
3026         </return-value>
3027       </constructor>
3028       <field name="parent">
3029         <type name="ObjectFactory" c:type="AtkObjectFactory"/>
3030       </field>
3031     </class>
3032     <record name="NoOpObjectFactoryClass"
3033             c:type="AtkNoOpObjectFactoryClass"
3034             glib:is-gtype-struct-for="NoOpObjectFactory">
3035       <field name="parent_class">
3036         <type name="ObjectFactoryClass" c:type="AtkObjectFactoryClass"/>
3037       </field>
3038     </record>
3039     <class name="Object"
3040            c:symbol-prefix="object"
3041            c:type="AtkObject"
3042            parent="GObject.Object"
3043            glib:type-name="AtkObject"
3044            glib:get-type="atk_object_get_type"
3045            glib:type-struct="ObjectClass">
3046       <virtual-method name="connect_property_change_handler"
3047                       invoker="connect_property_change_handler"
3048                       introspectable="0">
3049         <doc xml:whitespace="preserve">Specifies a function to be called when a property changes value.
3050 atk_object_remove_property_change_handler()</doc>
3051         <return-value transfer-ownership="none">
3052           <doc xml:whitespace="preserve">a #guint which is the handler id used in</doc>
3053           <type name="guint" c:type="guint"/>
3054         </return-value>
3055         <parameters>
3056           <parameter name="handler" transfer-ownership="none">
3057             <type name="PropertyChangeHandler"
3058                   c:type="AtkPropertyChangeHandler*"/>
3059           </parameter>
3060         </parameters>
3061       </virtual-method>
3062       <virtual-method name="get_attributes"
3063                       invoker="get_attributes"
3064                       version="1.12"
3065                       introspectable="0">
3066         <doc xml:whitespace="preserve">Get a list of properties applied to this object as a whole, as an #AtkAttributeSet consisting of 
3067 name-value pairs. As such these attributes may be considered weakly-typed properties or annotations, 
3068 as distinct from strongly-typed object data available via other get/set methods.
3069 Not all objects have explicit "name-value pair" #AtkAttributeSet properties.
3070 the object, or an empty set if the object has no name-value pair attributes assigned to it.</doc>
3071         <return-value>
3072           <doc xml:whitespace="preserve">an #AtkAttributeSet consisting of all explicit properties/annotations applied to</doc>
3073           <type name="AttributeSet" c:type="AtkAttributeSet*"/>
3074         </return-value>
3075       </virtual-method>
3076       <virtual-method name="get_description" invoker="get_description">
3077         <doc xml:whitespace="preserve">Gets the accessible description of the accessible.
3078 of the accessible.</doc>
3079         <return-value transfer-ownership="none">
3080           <doc xml:whitespace="preserve">a character string representing the accessible description</doc>
3081           <type name="utf8" c:type="gchar*"/>
3082         </return-value>
3083       </virtual-method>
3084       <virtual-method name="get_index_in_parent" invoker="get_index_in_parent">
3085         <doc xml:whitespace="preserve">Gets the 0-based index of this accessible in its parent; returns -1 if the
3086 accessible does not have an accessible parent.</doc>
3087         <return-value transfer-ownership="none">
3088           <doc xml:whitespace="preserve">an integer which is the index of the accessible in its parent</doc>
3089           <type name="gint" c:type="gint"/>
3090         </return-value>
3091       </virtual-method>
3092       <virtual-method name="get_layer">
3093         <return-value transfer-ownership="none">
3094           <type name="Layer" c:type="AtkLayer"/>
3095         </return-value>
3096       </virtual-method>
3097       <virtual-method name="get_mdi_zorder">
3098         <return-value transfer-ownership="none">
3099           <type name="gint" c:type="gint"/>
3100         </return-value>
3101       </virtual-method>
3102       <virtual-method name="get_n_children">
3103         <return-value transfer-ownership="none">
3104           <type name="gint" c:type="gint"/>
3105         </return-value>
3106       </virtual-method>
3107       <virtual-method name="get_name" invoker="get_name">
3108         <doc xml:whitespace="preserve">Gets the accessible name of the accessible.</doc>
3109         <return-value transfer-ownership="none">
3110           <doc xml:whitespace="preserve">a character string representing the accessible name of the object.</doc>
3111           <type name="utf8" c:type="gchar*"/>
3112         </return-value>
3113       </virtual-method>
3114       <virtual-method name="get_parent"
3115                       invoker="get_parent"
3116                       introspectable="0">
3117         <doc xml:whitespace="preserve">Gets the accessible parent of the accessible.</doc>
3118         <return-value>
3119           <doc xml:whitespace="preserve">a #AtkObject representing the accessible parent of the accessible</doc>
3120           <type name="Object" c:type="AtkObject*"/>
3121         </return-value>
3122       </virtual-method>
3123       <virtual-method name="get_role" invoker="get_role">
3124         <doc xml:whitespace="preserve">Gets the role of the accessible.</doc>
3125         <return-value transfer-ownership="none">
3126           <doc xml:whitespace="preserve">an #AtkRole which is the role of the accessible</doc>
3127           <type name="Role" c:type="AtkRole"/>
3128         </return-value>
3129       </virtual-method>
3130       <virtual-method name="initialize" invoker="initialize">
3131         <doc xml:whitespace="preserve">This function is called when implementing subclasses of #AtkObject.
3132 It does initialization required for the new object. It is intended
3133 that this function should called only in the ..._new() functions used
3134 to create an instance of a subclass of #AtkObject</doc>
3135         <return-value transfer-ownership="none">
3136           <type name="none" c:type="void"/>
3137         </return-value>
3138         <parameters>
3139           <parameter name="data" transfer-ownership="none">
3140             <doc xml:whitespace="preserve">a #gpointer which identifies the object for which the AtkObject was created.</doc>
3141             <type name="gpointer" c:type="gpointer"/>
3142           </parameter>
3143         </parameters>
3144       </virtual-method>
3145       <virtual-method name="ref_child" introspectable="0">
3146         <return-value>
3147           <type name="Object" c:type="AtkObject*"/>
3148         </return-value>
3149         <parameters>
3150           <parameter name="i" transfer-ownership="none">
3151             <type name="gint" c:type="gint"/>
3152           </parameter>
3153         </parameters>
3154       </virtual-method>
3155       <virtual-method name="ref_relation_set"
3156                       invoker="ref_relation_set"
3157                       introspectable="0">
3158         <doc xml:whitespace="preserve">Gets the #AtkRelationSet associated with the object.</doc>
3159         <return-value>
3160           <doc xml:whitespace="preserve">an #AtkRelationSet representing the relation set of the object.</doc>
3161           <type name="RelationSet" c:type="AtkRelationSet*"/>
3162         </return-value>
3163       </virtual-method>
3164       <virtual-method name="ref_state_set"
3165                       invoker="ref_state_set"
3166                       introspectable="0">
3167         <doc xml:whitespace="preserve">Gets a reference to the state set of the accessible; the caller must
3168 unreference it when it is no longer needed.
3169 set of the accessible</doc>
3170         <return-value>
3171           <doc xml:whitespace="preserve">a reference to an #AtkStateSet which is the state</doc>
3172           <type name="StateSet" c:type="AtkStateSet*"/>
3173         </return-value>
3174       </virtual-method>
3175       <virtual-method name="remove_property_change_handler"
3176                       invoker="remove_property_change_handler">
3177         <doc xml:whitespace="preserve">Removes a property change handler.</doc>
3178         <return-value transfer-ownership="none">
3179           <type name="none" c:type="void"/>
3180         </return-value>
3181         <parameters>
3182           <parameter name="handler_id" transfer-ownership="none">
3183             <type name="guint" c:type="guint"/>
3184           </parameter>
3185         </parameters>
3186       </virtual-method>
3187       <virtual-method name="set_description" invoker="set_description">
3188         <doc xml:whitespace="preserve">Sets the accessible description of the accessible.</doc>
3189         <return-value transfer-ownership="none">
3190           <type name="none" c:type="void"/>
3191         </return-value>
3192         <parameters>
3193           <parameter name="description" transfer-ownership="none">
3194             <type name="utf8" c:type="gchar*"/>
3195           </parameter>
3196         </parameters>
3197       </virtual-method>
3198       <virtual-method name="set_name" invoker="set_name">
3199         <doc xml:whitespace="preserve">Sets the accessible name of the accessible.</doc>
3200         <return-value transfer-ownership="none">
3201           <type name="none" c:type="void"/>
3202         </return-value>
3203         <parameters>
3204           <parameter name="name" transfer-ownership="none">
3205             <doc xml:whitespace="preserve">a character string to be set as the accessible name</doc>
3206             <type name="utf8" c:type="gchar*"/>
3207           </parameter>
3208         </parameters>
3209       </virtual-method>
3210       <virtual-method name="set_parent" invoker="set_parent">
3211         <doc xml:whitespace="preserve">Sets the accessible parent of the accessible.</doc>
3212         <return-value transfer-ownership="none">
3213           <type name="none" c:type="void"/>
3214         </return-value>
3215         <parameters>
3216           <parameter name="parent" transfer-ownership="none">
3217             <type name="Object" c:type="AtkObject*"/>
3218           </parameter>
3219         </parameters>
3220       </virtual-method>
3221       <virtual-method name="set_role" invoker="set_role">
3222         <doc xml:whitespace="preserve">Sets the role of the accessible.</doc>
3223         <return-value transfer-ownership="none">
3224           <type name="none" c:type="void"/>
3225         </return-value>
3226         <parameters>
3227           <parameter name="role" transfer-ownership="none">
3228             <type name="Role" c:type="AtkRole"/>
3229           </parameter>
3230         </parameters>
3231       </virtual-method>
3232       <method name="add_relationship"
3233               c:identifier="atk_object_add_relationship">
3234         <doc xml:whitespace="preserve">Adds a relationship of the specified type with the specified target.
3235 Returns TRUE if the relationship is added.</doc>
3236         <return-value transfer-ownership="none">
3237           <type name="gboolean" c:type="gboolean"/>
3238         </return-value>
3239         <parameters>
3240           <parameter name="relationship" transfer-ownership="none">
3241             <doc xml:whitespace="preserve">The #AtkRelationType of the relation</doc>
3242             <type name="RelationType" c:type="AtkRelationType"/>
3243           </parameter>
3244           <parameter name="target" transfer-ownership="none">
3245             <doc xml:whitespace="preserve">The #AtkObject which is to be the target of the relation.</doc>
3246             <type name="Object" c:type="AtkObject*"/>
3247           </parameter>
3248         </parameters>
3249       </method>
3250       <method name="connect_property_change_handler"
3251               c:identifier="atk_object_connect_property_change_handler"
3252               introspectable="0">
3253         <doc xml:whitespace="preserve">Specifies a function to be called when a property changes value.
3254 atk_object_remove_property_change_handler()</doc>
3255         <return-value transfer-ownership="none">
3256           <doc xml:whitespace="preserve">a #guint which is the handler id used in</doc>
3257           <type name="guint" c:type="guint"/>
3258         </return-value>
3259         <parameters>
3260           <parameter name="handler" transfer-ownership="none">
3261             <type name="PropertyChangeHandler"
3262                   c:type="AtkPropertyChangeHandler*"/>
3263           </parameter>
3264         </parameters>
3265       </method>
3266       <method name="get_attributes"
3267               c:identifier="atk_object_get_attributes"
3268               version="1.12"
3269               introspectable="0">
3270         <doc xml:whitespace="preserve">Get a list of properties applied to this object as a whole, as an #AtkAttributeSet consisting of 
3271 name-value pairs. As such these attributes may be considered weakly-typed properties or annotations, 
3272 as distinct from strongly-typed object data available via other get/set methods.
3273 Not all objects have explicit "name-value pair" #AtkAttributeSet properties.
3274 the object, or an empty set if the object has no name-value pair attributes assigned to it.</doc>
3275         <return-value>
3276           <doc xml:whitespace="preserve">an #AtkAttributeSet consisting of all explicit properties/annotations applied to</doc>
3277           <type name="AttributeSet" c:type="AtkAttributeSet*"/>
3278         </return-value>
3279       </method>
3280       <method name="get_description" c:identifier="atk_object_get_description">
3281         <doc xml:whitespace="preserve">Gets the accessible description of the accessible.
3282 of the accessible.</doc>
3283         <return-value transfer-ownership="none">
3284           <doc xml:whitespace="preserve">a character string representing the accessible description</doc>
3285           <type name="utf8" c:type="gchar*"/>
3286         </return-value>
3287       </method>
3288       <method name="get_index_in_parent"
3289               c:identifier="atk_object_get_index_in_parent">
3290         <doc xml:whitespace="preserve">Gets the 0-based index of this accessible in its parent; returns -1 if the
3291 accessible does not have an accessible parent.</doc>
3292         <return-value transfer-ownership="none">
3293           <doc xml:whitespace="preserve">an integer which is the index of the accessible in its parent</doc>
3294           <type name="gint" c:type="gint"/>
3295         </return-value>
3296       </method>
3297       <method name="get_n_accessible_children"
3298               c:identifier="atk_object_get_n_accessible_children">
3299         <doc xml:whitespace="preserve">Gets the number of accessible children of the accessible.
3300 of the accessible.</doc>
3301         <return-value transfer-ownership="none">
3302           <doc xml:whitespace="preserve">an integer representing the number of accessible children</doc>
3303           <type name="gint" c:type="gint"/>
3304         </return-value>
3305       </method>
3306       <method name="get_name" c:identifier="atk_object_get_name">
3307         <doc xml:whitespace="preserve">Gets the accessible name of the accessible.</doc>
3308         <return-value transfer-ownership="none">
3309           <doc xml:whitespace="preserve">a character string representing the accessible name of the object.</doc>
3310           <type name="utf8" c:type="gchar*"/>
3311         </return-value>
3312       </method>
3313       <method name="get_parent"
3314               c:identifier="atk_object_get_parent"
3315               introspectable="0">
3316         <doc xml:whitespace="preserve">Gets the accessible parent of the accessible.</doc>
3317         <return-value>
3318           <doc xml:whitespace="preserve">a #AtkObject representing the accessible parent of the accessible</doc>
3319           <type name="Object" c:type="AtkObject*"/>
3320         </return-value>
3321       </method>
3322       <method name="get_role" c:identifier="atk_object_get_role">
3323         <doc xml:whitespace="preserve">Gets the role of the accessible.</doc>
3324         <return-value transfer-ownership="none">
3325           <doc xml:whitespace="preserve">an #AtkRole which is the role of the accessible</doc>
3326           <type name="Role" c:type="AtkRole"/>
3327         </return-value>
3328       </method>
3329       <method name="initialize" c:identifier="atk_object_initialize">
3330         <doc xml:whitespace="preserve">This function is called when implementing subclasses of #AtkObject.
3331 It does initialization required for the new object. It is intended
3332 that this function should called only in the ..._new() functions used
3333 to create an instance of a subclass of #AtkObject</doc>
3334         <return-value transfer-ownership="none">
3335           <type name="none" c:type="void"/>
3336         </return-value>
3337         <parameters>
3338           <parameter name="data" transfer-ownership="none">
3339             <doc xml:whitespace="preserve">a #gpointer which identifies the object for which the AtkObject was created.</doc>
3340             <type name="gpointer" c:type="gpointer"/>
3341           </parameter>
3342         </parameters>
3343       </method>
3344       <method name="notify_state_change"
3345               c:identifier="atk_object_notify_state_change">
3346         <doc xml:whitespace="preserve">Emits a state-change signal for the specified state.</doc>
3347         <return-value transfer-ownership="none">
3348           <type name="none" c:type="void"/>
3349         </return-value>
3350         <parameters>
3351           <parameter name="state" transfer-ownership="none">
3352             <doc xml:whitespace="preserve">an #AtkState whose state is changed</doc>
3353             <type name="State" c:type="AtkState"/>
3354           </parameter>
3355           <parameter name="value" transfer-ownership="none">
3356             <type name="gboolean" c:type="gboolean"/>
3357           </parameter>
3358         </parameters>
3359       </method>
3360       <method name="ref_accessible_child"
3361               c:identifier="atk_object_ref_accessible_child"
3362               introspectable="0">
3363         <doc xml:whitespace="preserve">Gets a reference to the specified accessible child of the object.
3364 The accessible children are 0-based so the first accessible child is
3365 at index 0, the second at index 1 and so on.
3366 of the accessible.</doc>
3367         <return-value>
3368           <doc xml:whitespace="preserve">an #AtkObject representing the specified accessible child</doc>
3369           <type name="Object" c:type="AtkObject*"/>
3370         </return-value>
3371         <parameters>
3372           <parameter name="i" transfer-ownership="none">
3373             <doc xml:whitespace="preserve">a gint representing the position of the child, starting from 0</doc>
3374             <type name="gint" c:type="gint"/>
3375           </parameter>
3376         </parameters>
3377       </method>
3378       <method name="ref_relation_set"
3379               c:identifier="atk_object_ref_relation_set"
3380               introspectable="0">
3381         <doc xml:whitespace="preserve">Gets the #AtkRelationSet associated with the object.</doc>
3382         <return-value>
3383           <doc xml:whitespace="preserve">an #AtkRelationSet representing the relation set of the object.</doc>
3384           <type name="RelationSet" c:type="AtkRelationSet*"/>
3385         </return-value>
3386       </method>
3387       <method name="ref_state_set"
3388               c:identifier="atk_object_ref_state_set"
3389               introspectable="0">
3390         <doc xml:whitespace="preserve">Gets a reference to the state set of the accessible; the caller must
3391 unreference it when it is no longer needed.
3392 set of the accessible</doc>
3393         <return-value>
3394           <doc xml:whitespace="preserve">a reference to an #AtkStateSet which is the state</doc>
3395           <type name="StateSet" c:type="AtkStateSet*"/>
3396         </return-value>
3397       </method>
3398       <method name="remove_property_change_handler"
3399               c:identifier="atk_object_remove_property_change_handler">
3400         <doc xml:whitespace="preserve">Removes a property change handler.</doc>
3401         <return-value transfer-ownership="none">
3402           <type name="none" c:type="void"/>
3403         </return-value>
3404         <parameters>
3405           <parameter name="handler_id" transfer-ownership="none">
3406             <type name="guint" c:type="guint"/>
3407           </parameter>
3408         </parameters>
3409       </method>
3410       <method name="remove_relationship"
3411               c:identifier="atk_object_remove_relationship">
3412         <doc xml:whitespace="preserve">Removes a relationship of the specified type with the specified target.
3413 Returns TRUE if the relationship is removed.</doc>
3414         <return-value transfer-ownership="none">
3415           <type name="gboolean" c:type="gboolean"/>
3416         </return-value>
3417         <parameters>
3418           <parameter name="relationship" transfer-ownership="none">
3419             <doc xml:whitespace="preserve">The #AtkRelationType of the relation</doc>
3420             <type name="RelationType" c:type="AtkRelationType"/>
3421           </parameter>
3422           <parameter name="target" transfer-ownership="none">
3423             <doc xml:whitespace="preserve">The #AtkObject which is the target of the relation to be removed.</doc>
3424             <type name="Object" c:type="AtkObject*"/>
3425           </parameter>
3426         </parameters>
3427       </method>
3428       <method name="set_description" c:identifier="atk_object_set_description">
3429         <doc xml:whitespace="preserve">Sets the accessible description of the accessible.</doc>
3430         <return-value transfer-ownership="none">
3431           <type name="none" c:type="void"/>
3432         </return-value>
3433         <parameters>
3434           <parameter name="description" transfer-ownership="none">
3435             <type name="utf8" c:type="gchar*"/>
3436           </parameter>
3437         </parameters>
3438       </method>
3439       <method name="set_name" c:identifier="atk_object_set_name">
3440         <doc xml:whitespace="preserve">Sets the accessible name of the accessible.</doc>
3441         <return-value transfer-ownership="none">
3442           <type name="none" c:type="void"/>
3443         </return-value>
3444         <parameters>
3445           <parameter name="name" transfer-ownership="none">
3446             <doc xml:whitespace="preserve">a character string to be set as the accessible name</doc>
3447             <type name="utf8" c:type="gchar*"/>
3448           </parameter>
3449         </parameters>
3450       </method>
3451       <method name="set_parent" c:identifier="atk_object_set_parent">
3452         <doc xml:whitespace="preserve">Sets the accessible parent of the accessible.</doc>
3453         <return-value transfer-ownership="none">
3454           <type name="none" c:type="void"/>
3455         </return-value>
3456         <parameters>
3457           <parameter name="parent" transfer-ownership="none">
3458             <type name="Object" c:type="AtkObject*"/>
3459           </parameter>
3460         </parameters>
3461       </method>
3462       <method name="set_role" c:identifier="atk_object_set_role">
3463         <doc xml:whitespace="preserve">Sets the role of the accessible.</doc>
3464         <return-value transfer-ownership="none">
3465           <type name="none" c:type="void"/>
3466         </return-value>
3467         <parameters>
3468           <parameter name="role" transfer-ownership="none">
3469             <type name="Role" c:type="AtkRole"/>
3470           </parameter>
3471         </parameters>
3472       </method>
3473       <property name="accessible-component-layer" transfer-ownership="none">
3474         <type name="gint"/>
3475       </property>
3476       <property name="accessible-component-mdi-zorder"
3477                 transfer-ownership="none">
3478         <type name="gint"/>
3479       </property>
3480       <property name="accessible-description"
3481                 writable="1"
3482                 transfer-ownership="none">
3483         <type name="utf8"/>
3484       </property>
3485       <property name="accessible-hypertext-nlinks" transfer-ownership="none">
3486         <type name="gint"/>
3487       </property>
3488       <property name="accessible-name" writable="1" transfer-ownership="none">
3489         <type name="utf8"/>
3490       </property>
3491       <property name="accessible-parent"
3492                 writable="1"
3493                 transfer-ownership="none">
3494         <type name="Object"/>
3495       </property>
3496       <property name="accessible-role" writable="1" transfer-ownership="none">
3497         <type name="gint"/>
3498       </property>
3499       <property name="accessible-table-caption"
3500                 writable="1"
3501                 transfer-ownership="none">
3502         <type name="utf8"/>
3503       </property>
3504       <property name="accessible-table-caption-object"
3505                 writable="1"
3506                 transfer-ownership="none">
3507         <type name="Object"/>
3508       </property>
3509       <property name="accessible-table-column-description"
3510                 writable="1"
3511                 transfer-ownership="none">
3512         <type name="utf8"/>
3513       </property>
3514       <property name="accessible-table-column-header"
3515                 writable="1"
3516                 transfer-ownership="none">
3517         <type name="Object"/>
3518       </property>
3519       <property name="accessible-table-row-description"
3520                 writable="1"
3521                 transfer-ownership="none">
3522         <type name="utf8"/>
3523       </property>
3524       <property name="accessible-table-row-header"
3525                 writable="1"
3526                 transfer-ownership="none">
3527         <type name="Object"/>
3528       </property>
3529       <property name="accessible-table-summary"
3530                 writable="1"
3531                 transfer-ownership="none">
3532         <type name="Object"/>
3533       </property>
3534       <property name="accessible-value" writable="1" transfer-ownership="none">
3535         <type name="gdouble"/>
3536       </property>
3537       <field name="parent">
3538         <type name="GObject.Object" c:type="GObject"/>
3539       </field>
3540       <field name="description">
3541         <type name="utf8" c:type="gchar*"/>
3542       </field>
3543       <field name="name">
3544         <type name="utf8" c:type="gchar*"/>
3545       </field>
3546       <field name="accessible_parent">
3547         <type name="Object" c:type="AtkObject*"/>
3548       </field>
3549       <field name="role">
3550         <type name="Role" c:type="AtkRole"/>
3551       </field>
3552       <field name="relation_set">
3553         <type name="RelationSet" c:type="AtkRelationSet*"/>
3554       </field>
3555       <field name="layer">
3556         <type name="Layer" c:type="AtkLayer"/>
3557       </field>
3558       <glib:signal name="active-descendant-changed">
3559         <return-value transfer-ownership="none">
3560           <type name="none"/>
3561         </return-value>
3562         <parameters>
3563           <parameter name="object" transfer-ownership="none">
3564             <type name="gpointer"/>
3565           </parameter>
3566         </parameters>
3567       </glib:signal>
3568       <glib:signal name="children-changed">
3569         <return-value transfer-ownership="none">
3570           <type name="none"/>
3571         </return-value>
3572         <parameters>
3573           <parameter name="object" transfer-ownership="none">
3574             <type name="guint"/>
3575           </parameter>
3576           <parameter name="p0" transfer-ownership="none">
3577             <type name="gpointer"/>
3578           </parameter>
3579         </parameters>
3580       </glib:signal>
3581       <glib:signal name="focus-event">
3582         <return-value transfer-ownership="none">
3583           <type name="none"/>
3584         </return-value>
3585         <parameters>
3586           <parameter name="object" transfer-ownership="none">
3587             <type name="gboolean"/>
3588           </parameter>
3589         </parameters>
3590       </glib:signal>
3591       <glib:signal name="property-change">
3592         <return-value transfer-ownership="none">
3593           <type name="none"/>
3594         </return-value>
3595         <parameters>
3596           <parameter name="object" transfer-ownership="none">
3597             <type name="gpointer"/>
3598           </parameter>
3599         </parameters>
3600       </glib:signal>
3601       <glib:signal name="state-change">
3602         <return-value transfer-ownership="none">
3603           <type name="none"/>
3604         </return-value>
3605         <parameters>
3606           <parameter name="object" transfer-ownership="none">
3607             <type name="utf8"/>
3608           </parameter>
3609           <parameter name="p0" transfer-ownership="none">
3610             <type name="gboolean"/>
3611           </parameter>
3612         </parameters>
3613       </glib:signal>
3614       <glib:signal name="visible-data-changed">
3615         <return-value transfer-ownership="none">
3616           <type name="none"/>
3617         </return-value>
3618       </glib:signal>
3619     </class>
3620     <record name="ObjectClass"
3621             c:type="AtkObjectClass"
3622             glib:is-gtype-struct-for="Object">
3623       <field name="parent">
3624         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
3625       </field>
3626       <field name="get_name">
3627         <callback name="get_name">
3628           <return-value transfer-ownership="none">
3629             <doc xml:whitespace="preserve">a character string representing the accessible name of the object.</doc>
3630             <type name="utf8" c:type="gchar*"/>
3631           </return-value>
3632           <parameters>
3633             <parameter name="accessible" transfer-ownership="none">
3634               <type name="Object" c:type="AtkObject*"/>
3635             </parameter>
3636           </parameters>
3637         </callback>
3638       </field>
3639       <field name="get_description">
3640         <callback name="get_description">
3641           <return-value transfer-ownership="none">
3642             <doc xml:whitespace="preserve">a character string representing the accessible description</doc>
3643             <type name="utf8" c:type="gchar*"/>
3644           </return-value>
3645           <parameters>
3646             <parameter name="accessible" transfer-ownership="none">
3647               <type name="Object" c:type="AtkObject*"/>
3648             </parameter>
3649           </parameters>
3650         </callback>
3651       </field>
3652       <field name="get_parent" introspectable="0">
3653         <callback name="get_parent" introspectable="0">
3654           <return-value>
3655             <doc xml:whitespace="preserve">a #AtkObject representing the accessible parent of the accessible</doc>
3656             <type name="Object" c:type="AtkObject*"/>
3657           </return-value>
3658           <parameters>
3659             <parameter name="accessible" transfer-ownership="none">
3660               <type name="Object" c:type="AtkObject*"/>
3661             </parameter>
3662           </parameters>
3663         </callback>
3664       </field>
3665       <field name="get_n_children">
3666         <callback name="get_n_children">
3667           <return-value transfer-ownership="none">
3668             <type name="gint" c:type="gint"/>
3669           </return-value>
3670           <parameters>
3671             <parameter name="accessible" transfer-ownership="none">
3672               <type name="Object" c:type="AtkObject*"/>
3673             </parameter>
3674           </parameters>
3675         </callback>
3676       </field>
3677       <field name="ref_child" introspectable="0">
3678         <callback name="ref_child" introspectable="0">
3679           <return-value>
3680             <type name="Object" c:type="AtkObject*"/>
3681           </return-value>
3682           <parameters>
3683             <parameter name="accessible" transfer-ownership="none">
3684               <type name="Object" c:type="AtkObject*"/>
3685             </parameter>
3686             <parameter name="i" transfer-ownership="none">
3687               <type name="gint" c:type="gint"/>
3688             </parameter>
3689           </parameters>
3690         </callback>
3691       </field>
3692       <field name="get_index_in_parent">
3693         <callback name="get_index_in_parent">
3694           <return-value transfer-ownership="none">
3695             <doc xml:whitespace="preserve">an integer which is the index of the accessible in its parent</doc>
3696             <type name="gint" c:type="gint"/>
3697           </return-value>
3698           <parameters>
3699             <parameter name="accessible" transfer-ownership="none">
3700               <type name="Object" c:type="AtkObject*"/>
3701             </parameter>
3702           </parameters>
3703         </callback>
3704       </field>
3705       <field name="ref_relation_set" introspectable="0">
3706         <callback name="ref_relation_set" introspectable="0">
3707           <return-value>
3708             <doc xml:whitespace="preserve">an #AtkRelationSet representing the relation set of the object.</doc>
3709             <type name="RelationSet" c:type="AtkRelationSet*"/>
3710           </return-value>
3711           <parameters>
3712             <parameter name="accessible" transfer-ownership="none">
3713               <type name="Object" c:type="AtkObject*"/>
3714             </parameter>
3715           </parameters>
3716         </callback>
3717       </field>
3718       <field name="get_role">
3719         <callback name="get_role">
3720           <return-value transfer-ownership="none">
3721             <doc xml:whitespace="preserve">an #AtkRole which is the role of the accessible</doc>
3722             <type name="Role" c:type="AtkRole"/>
3723           </return-value>
3724           <parameters>
3725             <parameter name="accessible" transfer-ownership="none">
3726               <type name="Object" c:type="AtkObject*"/>
3727             </parameter>
3728           </parameters>
3729         </callback>
3730       </field>
3731       <field name="get_layer">
3732         <callback name="get_layer">
3733           <return-value transfer-ownership="none">
3734             <type name="Layer" c:type="AtkLayer"/>
3735           </return-value>
3736           <parameters>
3737             <parameter name="accessible" transfer-ownership="none">
3738               <type name="Object" c:type="AtkObject*"/>
3739             </parameter>
3740           </parameters>
3741         </callback>
3742       </field>
3743       <field name="get_mdi_zorder">
3744         <callback name="get_mdi_zorder">
3745           <return-value transfer-ownership="none">
3746             <type name="gint" c:type="gint"/>
3747           </return-value>
3748           <parameters>
3749             <parameter name="accessible" transfer-ownership="none">
3750               <type name="Object" c:type="AtkObject*"/>
3751             </parameter>
3752           </parameters>
3753         </callback>
3754       </field>
3755       <field name="ref_state_set" introspectable="0">
3756         <callback name="ref_state_set" introspectable="0">
3757           <return-value>
3758             <doc xml:whitespace="preserve">a reference to an #AtkStateSet which is the state</doc>
3759             <type name="StateSet" c:type="AtkStateSet*"/>
3760           </return-value>
3761           <parameters>
3762             <parameter name="accessible" transfer-ownership="none">
3763               <type name="Object" c:type="AtkObject*"/>
3764             </parameter>
3765           </parameters>
3766         </callback>
3767       </field>
3768       <field name="set_name">
3769         <callback name="set_name">
3770           <return-value transfer-ownership="none">
3771             <type name="none" c:type="void"/>
3772           </return-value>
3773           <parameters>
3774             <parameter name="accessible" transfer-ownership="none">
3775               <type name="Object" c:type="AtkObject*"/>
3776             </parameter>
3777             <parameter name="name" transfer-ownership="none">
3778               <doc xml:whitespace="preserve">a character string to be set as the accessible name</doc>
3779               <type name="utf8" c:type="gchar*"/>
3780             </parameter>
3781           </parameters>
3782         </callback>
3783       </field>
3784       <field name="set_description">
3785         <callback name="set_description">
3786           <return-value transfer-ownership="none">
3787             <type name="none" c:type="void"/>
3788           </return-value>
3789           <parameters>
3790             <parameter name="accessible" transfer-ownership="none">
3791               <type name="Object" c:type="AtkObject*"/>
3792             </parameter>
3793             <parameter name="description" transfer-ownership="none">
3794               <type name="utf8" c:type="gchar*"/>
3795             </parameter>
3796           </parameters>
3797         </callback>
3798       </field>
3799       <field name="set_parent">
3800         <callback name="set_parent">
3801           <return-value transfer-ownership="none">
3802             <type name="none" c:type="void"/>
3803           </return-value>
3804           <parameters>
3805             <parameter name="accessible" transfer-ownership="none">
3806               <type name="Object" c:type="AtkObject*"/>
3807             </parameter>
3808             <parameter name="parent" transfer-ownership="none">
3809               <type name="Object" c:type="AtkObject*"/>
3810             </parameter>
3811           </parameters>
3812         </callback>
3813       </field>
3814       <field name="set_role">
3815         <callback name="set_role">
3816           <return-value transfer-ownership="none">
3817             <type name="none" c:type="void"/>
3818           </return-value>
3819           <parameters>
3820             <parameter name="accessible" transfer-ownership="none">
3821               <type name="Object" c:type="AtkObject*"/>
3822             </parameter>
3823             <parameter name="role" transfer-ownership="none">
3824               <type name="Role" c:type="AtkRole"/>
3825             </parameter>
3826           </parameters>
3827         </callback>
3828       </field>
3829       <field name="connect_property_change_handler" introspectable="0">
3830         <callback name="connect_property_change_handler" introspectable="0">
3831           <return-value transfer-ownership="none">
3832             <doc xml:whitespace="preserve">a #guint which is the handler id used in</doc>
3833             <type name="guint" c:type="guint"/>
3834           </return-value>
3835           <parameters>
3836             <parameter name="accessible" transfer-ownership="none">
3837               <type name="Object" c:type="AtkObject*"/>
3838             </parameter>
3839             <parameter name="handler" transfer-ownership="none">
3840               <type name="PropertyChangeHandler"
3841                     c:type="AtkPropertyChangeHandler*"/>
3842             </parameter>
3843           </parameters>
3844         </callback>
3845       </field>
3846       <field name="remove_property_change_handler">
3847         <callback name="remove_property_change_handler">
3848           <return-value transfer-ownership="none">
3849             <type name="none" c:type="void"/>
3850           </return-value>
3851           <parameters>
3852             <parameter name="accessible" transfer-ownership="none">
3853               <type name="Object" c:type="AtkObject*"/>
3854             </parameter>
3855             <parameter name="handler_id" transfer-ownership="none">
3856               <type name="guint" c:type="guint"/>
3857             </parameter>
3858           </parameters>
3859         </callback>
3860       </field>
3861       <field name="initialize">
3862         <callback name="initialize">
3863           <return-value transfer-ownership="none">
3864             <type name="none" c:type="void"/>
3865           </return-value>
3866           <parameters>
3867             <parameter name="accessible" transfer-ownership="none">
3868               <type name="Object" c:type="AtkObject*"/>
3869             </parameter>
3870             <parameter name="data" transfer-ownership="none">
3871               <doc xml:whitespace="preserve">a #gpointer which identifies the object for which the AtkObject was created.</doc>
3872               <type name="gpointer" c:type="gpointer"/>
3873             </parameter>
3874           </parameters>
3875         </callback>
3876       </field>
3877       <field name="children_changed">
3878         <callback name="children_changed">
3879           <return-value transfer-ownership="none">
3880             <type name="none" c:type="void"/>
3881           </return-value>
3882           <parameters>
3883             <parameter name="accessible" transfer-ownership="none">
3884               <type name="Object" c:type="AtkObject*"/>
3885             </parameter>
3886             <parameter name="change_index" transfer-ownership="none">
3887               <type name="guint" c:type="guint"/>
3888             </parameter>
3889             <parameter name="changed_child" transfer-ownership="none">
3890               <type name="gpointer" c:type="gpointer"/>
3891             </parameter>
3892           </parameters>
3893         </callback>
3894       </field>
3895       <field name="focus_event">
3896         <callback name="focus_event">
3897           <return-value transfer-ownership="none">
3898             <type name="none" c:type="void"/>
3899           </return-value>
3900           <parameters>
3901             <parameter name="accessible" transfer-ownership="none">
3902               <type name="Object" c:type="AtkObject*"/>
3903             </parameter>
3904             <parameter name="focus_in" transfer-ownership="none">
3905               <type name="gboolean" c:type="gboolean"/>
3906             </parameter>
3907           </parameters>
3908         </callback>
3909       </field>
3910       <field name="property_change" introspectable="0">
3911         <callback name="property_change" introspectable="0">
3912           <return-value transfer-ownership="none">
3913             <type name="none" c:type="void"/>
3914           </return-value>
3915           <parameters>
3916             <parameter name="accessible" transfer-ownership="none">
3917               <type name="Object" c:type="AtkObject*"/>
3918             </parameter>
3919             <parameter name="values" transfer-ownership="none">
3920               <type c:type="AtkPropertyValues*"/>
3921             </parameter>
3922           </parameters>
3923         </callback>
3924       </field>
3925       <field name="state_change">
3926         <callback name="state_change">
3927           <return-value transfer-ownership="none">
3928             <type name="none" c:type="void"/>
3929           </return-value>
3930           <parameters>
3931             <parameter name="accessible" transfer-ownership="none">
3932               <type name="Object" c:type="AtkObject*"/>
3933             </parameter>
3934             <parameter name="name" transfer-ownership="none">
3935               <type name="utf8" c:type="gchar*"/>
3936             </parameter>
3937             <parameter name="state_set" transfer-ownership="none">
3938               <type name="gboolean" c:type="gboolean"/>
3939             </parameter>
3940           </parameters>
3941         </callback>
3942       </field>
3943       <field name="visible_data_changed">
3944         <callback name="visible_data_changed">
3945           <return-value transfer-ownership="none">
3946             <type name="none" c:type="void"/>
3947           </return-value>
3948           <parameters>
3949             <parameter name="accessible" transfer-ownership="none">
3950               <type name="Object" c:type="AtkObject*"/>
3951             </parameter>
3952           </parameters>
3953         </callback>
3954       </field>
3955       <field name="active_descendant_changed">
3956         <callback name="active_descendant_changed">
3957           <return-value transfer-ownership="none">
3958             <type name="none" c:type="void"/>
3959           </return-value>
3960           <parameters>
3961             <parameter name="accessible" transfer-ownership="none">
3962               <type name="Object" c:type="AtkObject*"/>
3963             </parameter>
3964             <parameter name="child" transfer-ownership="none">
3965               <type name="gpointer" c:type="gpointer*"/>
3966             </parameter>
3967           </parameters>
3968         </callback>
3969       </field>
3970       <field name="get_attributes" introspectable="0">
3971         <callback name="get_attributes" introspectable="0">
3972           <return-value>
3973             <doc xml:whitespace="preserve">an #AtkAttributeSet consisting of all explicit properties/annotations applied to</doc>
3974             <type name="AttributeSet" c:type="AtkAttributeSet*"/>
3975           </return-value>
3976           <parameters>
3977             <parameter name="accessible" transfer-ownership="none">
3978               <type name="Object" c:type="AtkObject*"/>
3979             </parameter>
3980           </parameters>
3981         </callback>
3982       </field>
3983       <field name="pad1">
3984         <type name="Function" c:type="AtkFunction"/>
3985       </field>
3986       <field name="pad2">
3987         <type name="Function" c:type="AtkFunction"/>
3988       </field>
3989     </record>
3990     <class name="ObjectFactory"
3991            c:symbol-prefix="object_factory"
3992            c:type="AtkObjectFactory"
3993            parent="GObject.Object"
3994            glib:type-name="AtkObjectFactory"
3995            glib:get-type="atk_object_factory_get_type"
3996            glib:type-struct="ObjectFactoryClass">
3997       <virtual-method name="invalidate" invoker="invalidate">
3998         <doc xml:whitespace="preserve">Inform @factory that it is no longer being used to create
3999 accessibles. When called, @factory may need to inform
4000 #AtkObjects which it has created that they need to be re-instantiated.
4001 in object registries.</doc>
4002         <return-value transfer-ownership="none">
4003           <type name="none" c:type="void"/>
4004         </return-value>
4005       </virtual-method>
4006       <method name="create_accessible"
4007               c:identifier="atk_object_factory_create_accessible"
4008               introspectable="0">
4009         <doc xml:whitespace="preserve">Provides an #AtkObject that implements an accessibility interface 
4010 on behalf of @obj
4011 on behalf of @obj</doc>
4012         <return-value>
4013           <doc xml:whitespace="preserve">an #AtkObject that implements an accessibility interface</doc>
4014           <type name="Object" c:type="AtkObject*"/>
4015         </return-value>
4016         <parameters>
4017           <parameter name="obj" transfer-ownership="none">
4018             <doc xml:whitespace="preserve">a #GObject</doc>
4019             <type name="GObject.Object" c:type="GObject*"/>
4020           </parameter>
4021         </parameters>
4022       </method>
4023       <method name="get_accessible_type"
4024               c:identifier="atk_object_factory_get_accessible_type">
4025         <doc xml:whitespace="preserve">Gets the GType of the accessible which is created by the factory. 
4026 The value G_TYPE_INVALID is returned if no type if found.</doc>
4027         <return-value transfer-ownership="none">
4028           <doc xml:whitespace="preserve">the type of the accessible which is created by the @factory.</doc>
4029           <type name="GType" c:type="GType"/>
4030         </return-value>
4031       </method>
4032       <method name="invalidate" c:identifier="atk_object_factory_invalidate">
4033         <doc xml:whitespace="preserve">Inform @factory that it is no longer being used to create
4034 accessibles. When called, @factory may need to inform
4035 #AtkObjects which it has created that they need to be re-instantiated.
4036 in object registries.</doc>
4037         <return-value transfer-ownership="none">
4038           <type name="none" c:type="void"/>
4039         </return-value>
4040       </method>
4041       <field name="parent">
4042         <type name="GObject.Object" c:type="GObject"/>
4043       </field>
4044     </class>
4045     <record name="ObjectFactoryClass"
4046             c:type="AtkObjectFactoryClass"
4047             glib:is-gtype-struct-for="ObjectFactory">
4048       <field name="parent_class">
4049         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
4050       </field>
4051       <field name="create_accessible" introspectable="0">
4052         <callback name="create_accessible" introspectable="0">
4053           <return-value>
4054             <type name="Object" c:type="AtkObject*"/>
4055           </return-value>
4056           <parameters>
4057             <parameter name="obj" transfer-ownership="none">
4058               <type name="GObject.Object" c:type="GObject*"/>
4059             </parameter>
4060           </parameters>
4061         </callback>
4062       </field>
4063       <field name="invalidate">
4064         <callback name="invalidate">
4065           <return-value transfer-ownership="none">
4066             <type name="none" c:type="void"/>
4067           </return-value>
4068           <parameters>
4069             <parameter name="factory" transfer-ownership="none">
4070               <type name="ObjectFactory" c:type="AtkObjectFactory*"/>
4071             </parameter>
4072           </parameters>
4073         </callback>
4074       </field>
4075       <field name="get_accessible_type">
4076         <callback name="get_accessible_type">
4077           <return-value transfer-ownership="none">
4078             <type name="GType" c:type="GType"/>
4079           </return-value>
4080         </callback>
4081       </field>
4082       <field name="pad1">
4083         <type name="Function" c:type="AtkFunction"/>
4084       </field>
4085       <field name="pad2">
4086         <type name="Function" c:type="AtkFunction"/>
4087       </field>
4088     </record>
4089     <class name="Plug"
4090            c:symbol-prefix="plug"
4091            c:type="AtkPlug"
4092            parent="Object"
4093            glib:type-name="AtkPlug"
4094            glib:get-type="atk_plug_get_type"
4095            glib:type-struct="PlugClass">
4096       <implements name="Component"/>
4097       <constructor name="new" c:identifier="atk_plug_new">
4098         <return-value transfer-ownership="full">
4099           <type name="Object" c:type="AtkObject*"/>
4100         </return-value>
4101       </constructor>
4102       <virtual-method name="get_object_id">
4103         <return-value transfer-ownership="full">
4104           <type name="utf8" c:type="gchar*"/>
4105         </return-value>
4106       </virtual-method>
4107       <method name="get_id" c:identifier="atk_plug_get_id">
4108         <return-value transfer-ownership="full">
4109           <type name="utf8" c:type="gchar*"/>
4110         </return-value>
4111       </method>
4112       <field name="parent">
4113         <type name="Object" c:type="AtkObject"/>
4114       </field>
4115     </class>
4116     <record name="PlugClass"
4117             c:type="AtkPlugClass"
4118             glib:is-gtype-struct-for="Plug">
4119       <field name="parent_class">
4120         <type name="ObjectClass" c:type="AtkObjectClass"/>
4121       </field>
4122       <field name="get_object_id">
4123         <callback name="get_object_id">
4124           <return-value transfer-ownership="full">
4125             <type name="utf8" c:type="gchar*"/>
4126           </return-value>
4127           <parameters>
4128             <parameter name="obj" transfer-ownership="none">
4129               <type name="Plug" c:type="AtkPlug*"/>
4130             </parameter>
4131           </parameters>
4132         </callback>
4133       </field>
4134     </record>
4135     <callback name="PropertyChangeHandler"
4136               c:type="AtkPropertyChangeHandler"
4137               introspectable="0">
4138       <return-value transfer-ownership="none">
4139         <type name="none" c:type="void"/>
4140       </return-value>
4141       <parameters>
4142         <parameter transfer-ownership="none">
4143           <type name="Object" c:type="AtkObject*"/>
4144         </parameter>
4145         <parameter transfer-ownership="none">
4146           <type c:type="AtkPropertyValues*"/>
4147         </parameter>
4148       </parameters>
4149     </callback>
4150     <record name="Rectangle"
4151             c:type="AtkRectangle"
4152             glib:type-name="AtkRectangle"
4153             glib:get-type="atk_rectangle_get_type"
4154             c:symbol-prefix="rectangle">
4155       <field name="x" writable="1">
4156         <type name="gint" c:type="gint"/>
4157       </field>
4158       <field name="y" writable="1">
4159         <type name="gint" c:type="gint"/>
4160       </field>
4161       <field name="width" writable="1">
4162         <type name="gint" c:type="gint"/>
4163       </field>
4164       <field name="height" writable="1">
4165         <type name="gint" c:type="gint"/>
4166       </field>
4167     </record>
4168     <class name="Registry"
4169            c:symbol-prefix="registry"
4170            parent="GObject.Object"
4171            glib:type-name="AtkRegistry"
4172            glib:get-type="atk_registry_get_type">
4173       <method name="get_factory"
4174               c:identifier="atk_registry_get_factory"
4175               introspectable="0">
4176         <doc xml:whitespace="preserve">Gets an #AtkObjectFactory appropriate for creating #AtkObjects
4177 appropriate for @type.
4178 appropriate for @type.</doc>
4179         <return-value>
4180           <doc xml:whitespace="preserve">an #AtkObjectFactory appropriate for creating #AtkObjects</doc>
4181           <type name="ObjectFactory" c:type="AtkObjectFactory*"/>
4182         </return-value>
4183         <parameters>
4184           <parameter name="type" transfer-ownership="none">
4185             <doc xml:whitespace="preserve">a #GType with which to look up the associated #AtkObjectFactory</doc>
4186             <type name="GType" c:type="GType"/>
4187           </parameter>
4188         </parameters>
4189       </method>
4190       <method name="get_factory_type"
4191               c:identifier="atk_registry_get_factory_type">
4192         <doc xml:whitespace="preserve">Provides a #GType indicating the #AtkObjectFactory subclass
4193 associated with @type.</doc>
4194         <return-value transfer-ownership="none">
4195           <doc xml:whitespace="preserve">a #GType associated with type @type</doc>
4196           <type name="GType" c:type="GType"/>
4197         </return-value>
4198         <parameters>
4199           <parameter name="type" transfer-ownership="none">
4200             <doc xml:whitespace="preserve">a #GType with which to look up the associated #AtkObjectFactory subclass</doc>
4201             <type name="GType" c:type="GType"/>
4202           </parameter>
4203         </parameters>
4204       </method>
4205       <method name="set_factory_type"
4206               c:identifier="atk_registry_set_factory_type">
4207         <doc xml:whitespace="preserve">Associate an #AtkObjectFactory subclass with a #GType. Note:
4208 The associated @factory_type will thereafter be responsible for
4209 the creation of new #AtkObject implementations for instances
4210 appropriate for @type.</doc>
4211         <return-value transfer-ownership="none">
4212           <type name="none" c:type="void"/>
4213         </return-value>
4214         <parameters>
4215           <parameter name="type" transfer-ownership="none">
4216             <doc xml:whitespace="preserve">an #AtkObject type</doc>
4217             <type name="GType" c:type="GType"/>
4218           </parameter>
4219           <parameter name="factory_type" transfer-ownership="none">
4220             <doc xml:whitespace="preserve">an #AtkObjectFactory type to associate with @type.  Must implement AtkObject appropriate for @type.</doc>
4221             <type name="GType" c:type="GType"/>
4222           </parameter>
4223         </parameters>
4224       </method>
4225     </class>
4226     <class name="Relation"
4227            c:symbol-prefix="relation"
4228            c:type="AtkRelation"
4229            parent="GObject.Object"
4230            glib:type-name="AtkRelation"
4231            glib:get-type="atk_relation_get_type"
4232            glib:type-struct="RelationClass">
4233       <constructor name="new" c:identifier="atk_relation_new">
4234         <doc xml:whitespace="preserve">Create a new relation for the specified key and the specified list
4235 of targets.  See also atk_object_add_relationship().</doc>
4236         <return-value transfer-ownership="full">
4237           <doc xml:whitespace="preserve">a pointer to a new #AtkRelation</doc>
4238           <type name="Relation" c:type="AtkRelation*"/>
4239         </return-value>
4240         <parameters>
4241           <parameter name="targets" transfer-ownership="none">
4242             <doc xml:whitespace="preserve">an array of pointers to #AtkObjects</doc>
4243             <type name="Object" c:type="AtkObject**"/>
4244           </parameter>
4245           <parameter name="n_targets" transfer-ownership="none">
4246             <doc xml:whitespace="preserve">number of #AtkObjects pointed to by @targets</doc>
4247             <type name="gint" c:type="gint"/>
4248           </parameter>
4249           <parameter name="relationship" transfer-ownership="none">
4250             <doc xml:whitespace="preserve">an #AtkRelationType with which to create the new #AtkRelation</doc>
4251             <type name="RelationType" c:type="AtkRelationType"/>
4252           </parameter>
4253         </parameters>
4254       </constructor>
4255       <method name="add_target"
4256               c:identifier="atk_relation_add_target"
4257               version="1.9">
4258         <doc xml:whitespace="preserve">Adds the specified AtkObject to the target for the relation, if it is
4259 not already present.  See also atk_object_add_relationship().</doc>
4260         <return-value transfer-ownership="none">
4261           <type name="none" c:type="void"/>
4262         </return-value>
4263         <parameters>
4264           <parameter name="target" transfer-ownership="none">
4265             <doc xml:whitespace="preserve">an #AtkObject</doc>
4266             <type name="Object" c:type="AtkObject*"/>
4267           </parameter>
4268         </parameters>
4269       </method>
4270       <method name="get_relation_type"
4271               c:identifier="atk_relation_get_relation_type">
4272         <doc xml:whitespace="preserve">Gets the type of @relation</doc>
4273         <return-value transfer-ownership="none">
4274           <doc xml:whitespace="preserve">the type of @relation</doc>
4275           <type name="RelationType" c:type="AtkRelationType"/>
4276         </return-value>
4277       </method>
4278       <method name="get_target"
4279               c:identifier="atk_relation_get_target"
4280               introspectable="0">
4281         <doc xml:whitespace="preserve">Gets the target list of @relation</doc>
4282         <return-value>
4283           <doc xml:whitespace="preserve">the target list of @relation</doc>
4284           <array name="GLib.PtrArray" c:type="GPtrArray*">
4285             <type name="gpointer" c:type="gpointer"/>
4286           </array>
4287         </return-value>
4288       </method>
4289       <method name="remove_target" c:identifier="atk_relation_remove_target">
4290         <doc xml:whitespace="preserve">Remove the specified AtkObject from the target for the relation.
4291 Returns TRUE if the removal is successful.</doc>
4292         <return-value transfer-ownership="none">
4293           <type name="gboolean" c:type="gboolean"/>
4294         </return-value>
4295         <parameters>
4296           <parameter name="target" transfer-ownership="none">
4297             <doc xml:whitespace="preserve">an #AtkObject</doc>
4298             <type name="Object" c:type="AtkObject*"/>
4299           </parameter>
4300         </parameters>
4301       </method>
4302       <property name="relation-type" writable="1" transfer-ownership="none">
4303         <type name="RelationType"/>
4304       </property>
4305       <property name="target" writable="1" transfer-ownership="none">
4306         <type name="GObject.ValueArray"/>
4307       </property>
4308       <field name="parent">
4309         <type name="GObject.Object" c:type="GObject"/>
4310       </field>
4311       <field name="target">
4312         <array name="GLib.PtrArray" c:type="GPtrArray*">
4313           <type name="gpointer" c:type="gpointer"/>
4314         </array>
4315       </field>
4316       <field name="relationship">
4317         <type name="RelationType" c:type="AtkRelationType"/>
4318       </field>
4319     </class>
4320     <record name="RelationClass"
4321             c:type="AtkRelationClass"
4322             glib:is-gtype-struct-for="Relation">
4323       <field name="parent">
4324         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
4325       </field>
4326     </record>
4327     <class name="RelationSet"
4328            c:symbol-prefix="relation_set"
4329            c:type="AtkRelationSet"
4330            parent="GObject.Object"
4331            glib:type-name="AtkRelationSet"
4332            glib:get-type="atk_relation_set_get_type"
4333            glib:type-struct="RelationSetClass">
4334       <constructor name="new" c:identifier="atk_relation_set_new">
4335         <doc xml:whitespace="preserve">Creates a new empty relation set.</doc>
4336         <return-value transfer-ownership="full">
4337           <doc xml:whitespace="preserve">a new #AtkRelationSet</doc>
4338           <type name="RelationSet" c:type="AtkRelationSet*"/>
4339         </return-value>
4340       </constructor>
4341       <method name="add" c:identifier="atk_relation_set_add">
4342         <doc xml:whitespace="preserve">Add a new relation to the current relation set if it is not already
4343 present.
4344 This function ref's the AtkRelation so the caller of this function
4345 should unref it to ensure that it will be destroyed when the AtkRelationSet
4346 is destroyed.</doc>
4347         <return-value transfer-ownership="none">
4348           <type name="none" c:type="void"/>
4349         </return-value>
4350         <parameters>
4351           <parameter name="relation" transfer-ownership="none">
4352             <doc xml:whitespace="preserve">an #AtkRelation</doc>
4353             <type name="Relation" c:type="AtkRelation*"/>
4354           </parameter>
4355         </parameters>
4356       </method>
4357       <method name="add_relation_by_type"
4358               c:identifier="atk_relation_set_add_relation_by_type"
4359               version="1.9">
4360         <doc xml:whitespace="preserve">Add a new relation of the specified type with the specified target to 
4361 the current relation set if the relation set does not contain a relation
4362 of that type. If it is does contain a relation of that typea the target
4363 is added to the relation.</doc>
4364         <return-value transfer-ownership="none">
4365           <type name="none" c:type="void"/>
4366         </return-value>
4367         <parameters>
4368           <parameter name="relationship" transfer-ownership="none">
4369             <doc xml:whitespace="preserve">an #AtkRelationType</doc>
4370             <type name="RelationType" c:type="AtkRelationType"/>
4371           </parameter>
4372           <parameter name="target" transfer-ownership="none">
4373             <doc xml:whitespace="preserve">an #AtkObject</doc>
4374             <type name="Object" c:type="AtkObject*"/>
4375           </parameter>
4376         </parameters>
4377       </method>
4378       <method name="contains" c:identifier="atk_relation_set_contains">
4379         <doc xml:whitespace="preserve">Determines whether the relation set contains a relation that matches the
4380 specified type.
4381 in @set, %FALSE otherwise</doc>
4382         <return-value transfer-ownership="none">
4383           <doc xml:whitespace="preserve">%TRUE if @relationship is the relationship type of a relation</doc>
4384           <type name="gboolean" c:type="gboolean"/>
4385         </return-value>
4386         <parameters>
4387           <parameter name="relationship" transfer-ownership="none">
4388             <doc xml:whitespace="preserve">an #AtkRelationType</doc>
4389             <type name="RelationType" c:type="AtkRelationType"/>
4390           </parameter>
4391         </parameters>
4392       </method>
4393       <method name="get_n_relations"
4394               c:identifier="atk_relation_set_get_n_relations">
4395         <doc xml:whitespace="preserve">Determines the number of relations in a relation set.</doc>
4396         <return-value transfer-ownership="none">
4397           <doc xml:whitespace="preserve">an integer representing the number of relations in the set.</doc>
4398           <type name="gint" c:type="gint"/>
4399         </return-value>
4400       </method>
4401       <method name="get_relation"
4402               c:identifier="atk_relation_set_get_relation"
4403               introspectable="0">
4404         <return-value>
4405           <type name="Relation" c:type="AtkRelation*"/>
4406         </return-value>
4407         <parameters>
4408           <parameter name="i" transfer-ownership="none">
4409             <type name="gint" c:type="gint"/>
4410           </parameter>
4411         </parameters>
4412       </method>
4413       <method name="get_relation_by_type"
4414               c:identifier="atk_relation_set_get_relation_by_type"
4415               introspectable="0">
4416         <doc xml:whitespace="preserve">Finds a relation that matches the specified type.</doc>
4417         <return-value>
4418           <doc xml:whitespace="preserve">an #AtkRelation, which is a relation matching the specified type.</doc>
4419           <type name="Relation" c:type="AtkRelation*"/>
4420         </return-value>
4421         <parameters>
4422           <parameter name="relationship" transfer-ownership="none">
4423             <doc xml:whitespace="preserve">an #AtkRelationType</doc>
4424             <type name="RelationType" c:type="AtkRelationType"/>
4425           </parameter>
4426         </parameters>
4427       </method>
4428       <method name="remove" c:identifier="atk_relation_set_remove">
4429         <doc xml:whitespace="preserve">Removes a relation from the relation set.
4430 This function unref's the #AtkRelation so it will be deleted unless there
4431 is another reference to it.</doc>
4432         <return-value transfer-ownership="none">
4433           <type name="none" c:type="void"/>
4434         </return-value>
4435         <parameters>
4436           <parameter name="relation" transfer-ownership="none">
4437             <doc xml:whitespace="preserve">an #AtkRelation</doc>
4438             <type name="Relation" c:type="AtkRelation*"/>
4439           </parameter>
4440         </parameters>
4441       </method>
4442       <field name="parent">
4443         <type name="GObject.Object" c:type="GObject"/>
4444       </field>
4445       <field name="relations">
4446         <array name="GLib.PtrArray" c:type="GPtrArray*">
4447           <type name="gpointer" c:type="gpointer"/>
4448         </array>
4449       </field>
4450     </class>
4451     <record name="RelationSetClass"
4452             c:type="AtkRelationSetClass"
4453             glib:is-gtype-struct-for="RelationSet">
4454       <field name="parent">
4455         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
4456       </field>
4457       <field name="pad1">
4458         <type name="Function" c:type="AtkFunction"/>
4459       </field>
4460       <field name="pad2">
4461         <type name="Function" c:type="AtkFunction"/>
4462       </field>
4463     </record>
4464     <enumeration name="RelationType"
4465                  glib:type-name="AtkRelationType"
4466                  glib:get-type="atk_relation_type_get_type"
4467                  c:type="AtkRelationType">
4468       <member name="null"
4469               value="0"
4470               c:identifier="ATK_RELATION_NULL"
4471               glib:nick="null"/>
4472       <member name="controlled_by"
4473               value="1"
4474               c:identifier="ATK_RELATION_CONTROLLED_BY"
4475               glib:nick="controlled-by"/>
4476       <member name="controller_for"
4477               value="2"
4478               c:identifier="ATK_RELATION_CONTROLLER_FOR"
4479               glib:nick="controller-for"/>
4480       <member name="label_for"
4481               value="3"
4482               c:identifier="ATK_RELATION_LABEL_FOR"
4483               glib:nick="label-for"/>
4484       <member name="labelled_by"
4485               value="4"
4486               c:identifier="ATK_RELATION_LABELLED_BY"
4487               glib:nick="labelled-by"/>
4488       <member name="member_of"
4489               value="5"
4490               c:identifier="ATK_RELATION_MEMBER_OF"
4491               glib:nick="member-of"/>
4492       <member name="node_child_of"
4493               value="6"
4494               c:identifier="ATK_RELATION_NODE_CHILD_OF"
4495               glib:nick="node-child-of"/>
4496       <member name="flows_to"
4497               value="7"
4498               c:identifier="ATK_RELATION_FLOWS_TO"
4499               glib:nick="flows-to"/>
4500       <member name="flows_from"
4501               value="8"
4502               c:identifier="ATK_RELATION_FLOWS_FROM"
4503               glib:nick="flows-from"/>
4504       <member name="subwindow_of"
4505               value="9"
4506               c:identifier="ATK_RELATION_SUBWINDOW_OF"
4507               glib:nick="subwindow-of"/>
4508       <member name="embeds"
4509               value="10"
4510               c:identifier="ATK_RELATION_EMBEDS"
4511               glib:nick="embeds"/>
4512       <member name="embedded_by"
4513               value="11"
4514               c:identifier="ATK_RELATION_EMBEDDED_BY"
4515               glib:nick="embedded-by"/>
4516       <member name="popup_for"
4517               value="12"
4518               c:identifier="ATK_RELATION_POPUP_FOR"
4519               glib:nick="popup-for"/>
4520       <member name="parent_window_of"
4521               value="13"
4522               c:identifier="ATK_RELATION_PARENT_WINDOW_OF"
4523               glib:nick="parent-window-of"/>
4524       <member name="described_by"
4525               value="14"
4526               c:identifier="ATK_RELATION_DESCRIBED_BY"
4527               glib:nick="described-by"/>
4528       <member name="description_for"
4529               value="15"
4530               c:identifier="ATK_RELATION_DESCRIPTION_FOR"
4531               glib:nick="description-for"/>
4532       <member name="node_parent_of"
4533               value="16"
4534               c:identifier="ATK_RELATION_NODE_PARENT_OF"
4535               glib:nick="node-parent-of"/>
4536       <member name="last_defined"
4537               value="17"
4538               c:identifier="ATK_RELATION_LAST_DEFINED"
4539               glib:nick="last-defined"/>
4540     </enumeration>
4541     <enumeration name="Role"
4542                  glib:type-name="AtkRole"
4543                  glib:get-type="atk_role_get_type"
4544                  c:type="AtkRole">
4545       <member name="invalid"
4546               value="0"
4547               c:identifier="ATK_ROLE_INVALID"
4548               glib:nick="invalid"/>
4549       <member name="accel_label"
4550               value="1"
4551               c:identifier="ATK_ROLE_ACCEL_LABEL"
4552               glib:nick="accel-label"/>
4553       <member name="alert"
4554               value="2"
4555               c:identifier="ATK_ROLE_ALERT"
4556               glib:nick="alert"/>
4557       <member name="animation"
4558               value="3"
4559               c:identifier="ATK_ROLE_ANIMATION"
4560               glib:nick="animation"/>
4561       <member name="arrow"
4562               value="4"
4563               c:identifier="ATK_ROLE_ARROW"
4564               glib:nick="arrow"/>
4565       <member name="calendar"
4566               value="5"
4567               c:identifier="ATK_ROLE_CALENDAR"
4568               glib:nick="calendar"/>
4569       <member name="canvas"
4570               value="6"
4571               c:identifier="ATK_ROLE_CANVAS"
4572               glib:nick="canvas"/>
4573       <member name="check_box"
4574               value="7"
4575               c:identifier="ATK_ROLE_CHECK_BOX"
4576               glib:nick="check-box"/>
4577       <member name="check_menu_item"
4578               value="8"
4579               c:identifier="ATK_ROLE_CHECK_MENU_ITEM"
4580               glib:nick="check-menu-item"/>
4581       <member name="color_chooser"
4582               value="9"
4583               c:identifier="ATK_ROLE_COLOR_CHOOSER"
4584               glib:nick="color-chooser"/>
4585       <member name="column_header"
4586               value="10"
4587               c:identifier="ATK_ROLE_COLUMN_HEADER"
4588               glib:nick="column-header"/>
4589       <member name="combo_box"
4590               value="11"
4591               c:identifier="ATK_ROLE_COMBO_BOX"
4592               glib:nick="combo-box"/>
4593       <member name="date_editor"
4594               value="12"
4595               c:identifier="ATK_ROLE_DATE_EDITOR"
4596               glib:nick="date-editor"/>
4597       <member name="desktop_icon"
4598               value="13"
4599               c:identifier="ATK_ROLE_DESKTOP_ICON"
4600               glib:nick="desktop-icon"/>
4601       <member name="desktop_frame"
4602               value="14"
4603               c:identifier="ATK_ROLE_DESKTOP_FRAME"
4604               glib:nick="desktop-frame"/>
4605       <member name="dial"
4606               value="15"
4607               c:identifier="ATK_ROLE_DIAL"
4608               glib:nick="dial"/>
4609       <member name="dialog"
4610               value="16"
4611               c:identifier="ATK_ROLE_DIALOG"
4612               glib:nick="dialog"/>
4613       <member name="directory_pane"
4614               value="17"
4615               c:identifier="ATK_ROLE_DIRECTORY_PANE"
4616               glib:nick="directory-pane"/>
4617       <member name="drawing_area"
4618               value="18"
4619               c:identifier="ATK_ROLE_DRAWING_AREA"
4620               glib:nick="drawing-area"/>
4621       <member name="file_chooser"
4622               value="19"
4623               c:identifier="ATK_ROLE_FILE_CHOOSER"
4624               glib:nick="file-chooser"/>
4625       <member name="filler"
4626               value="20"
4627               c:identifier="ATK_ROLE_FILLER"
4628               glib:nick="filler"/>
4629       <member name="font_chooser"
4630               value="21"
4631               c:identifier="ATK_ROLE_FONT_CHOOSER"
4632               glib:nick="font-chooser"/>
4633       <member name="frame"
4634               value="22"
4635               c:identifier="ATK_ROLE_FRAME"
4636               glib:nick="frame"/>
4637       <member name="glass_pane"
4638               value="23"
4639               c:identifier="ATK_ROLE_GLASS_PANE"
4640               glib:nick="glass-pane"/>
4641       <member name="html_container"
4642               value="24"
4643               c:identifier="ATK_ROLE_HTML_CONTAINER"
4644               glib:nick="html-container"/>
4645       <member name="icon"
4646               value="25"
4647               c:identifier="ATK_ROLE_ICON"
4648               glib:nick="icon"/>
4649       <member name="image"
4650               value="26"
4651               c:identifier="ATK_ROLE_IMAGE"
4652               glib:nick="image"/>
4653       <member name="internal_frame"
4654               value="27"
4655               c:identifier="ATK_ROLE_INTERNAL_FRAME"
4656               glib:nick="internal-frame"/>
4657       <member name="label"
4658               value="28"
4659               c:identifier="ATK_ROLE_LABEL"
4660               glib:nick="label"/>
4661       <member name="layered_pane"
4662               value="29"
4663               c:identifier="ATK_ROLE_LAYERED_PANE"
4664               glib:nick="layered-pane"/>
4665       <member name="list"
4666               value="30"
4667               c:identifier="ATK_ROLE_LIST"
4668               glib:nick="list"/>
4669       <member name="list_item"
4670               value="31"
4671               c:identifier="ATK_ROLE_LIST_ITEM"
4672               glib:nick="list-item"/>
4673       <member name="menu"
4674               value="32"
4675               c:identifier="ATK_ROLE_MENU"
4676               glib:nick="menu"/>
4677       <member name="menu_bar"
4678               value="33"
4679               c:identifier="ATK_ROLE_MENU_BAR"
4680               glib:nick="menu-bar"/>
4681       <member name="menu_item"
4682               value="34"
4683               c:identifier="ATK_ROLE_MENU_ITEM"
4684               glib:nick="menu-item"/>
4685       <member name="option_pane"
4686               value="35"
4687               c:identifier="ATK_ROLE_OPTION_PANE"
4688               glib:nick="option-pane"/>
4689       <member name="page_tab"
4690               value="36"
4691               c:identifier="ATK_ROLE_PAGE_TAB"
4692               glib:nick="page-tab"/>
4693       <member name="page_tab_list"
4694               value="37"
4695               c:identifier="ATK_ROLE_PAGE_TAB_LIST"
4696               glib:nick="page-tab-list"/>
4697       <member name="panel"
4698               value="38"
4699               c:identifier="ATK_ROLE_PANEL"
4700               glib:nick="panel"/>
4701       <member name="password_text"
4702               value="39"
4703               c:identifier="ATK_ROLE_PASSWORD_TEXT"
4704               glib:nick="password-text"/>
4705       <member name="popup_menu"
4706               value="40"
4707               c:identifier="ATK_ROLE_POPUP_MENU"
4708               glib:nick="popup-menu"/>
4709       <member name="progress_bar"
4710               value="41"
4711               c:identifier="ATK_ROLE_PROGRESS_BAR"
4712               glib:nick="progress-bar"/>
4713       <member name="push_button"
4714               value="42"
4715               c:identifier="ATK_ROLE_PUSH_BUTTON"
4716               glib:nick="push-button"/>
4717       <member name="radio_button"
4718               value="43"
4719               c:identifier="ATK_ROLE_RADIO_BUTTON"
4720               glib:nick="radio-button"/>
4721       <member name="radio_menu_item"
4722               value="44"
4723               c:identifier="ATK_ROLE_RADIO_MENU_ITEM"
4724               glib:nick="radio-menu-item"/>
4725       <member name="root_pane"
4726               value="45"
4727               c:identifier="ATK_ROLE_ROOT_PANE"
4728               glib:nick="root-pane"/>
4729       <member name="row_header"
4730               value="46"
4731               c:identifier="ATK_ROLE_ROW_HEADER"
4732               glib:nick="row-header"/>
4733       <member name="scroll_bar"
4734               value="47"
4735               c:identifier="ATK_ROLE_SCROLL_BAR"
4736               glib:nick="scroll-bar"/>
4737       <member name="scroll_pane"
4738               value="48"
4739               c:identifier="ATK_ROLE_SCROLL_PANE"
4740               glib:nick="scroll-pane"/>
4741       <member name="separator"
4742               value="49"
4743               c:identifier="ATK_ROLE_SEPARATOR"
4744               glib:nick="separator"/>
4745       <member name="slider"
4746               value="50"
4747               c:identifier="ATK_ROLE_SLIDER"
4748               glib:nick="slider"/>
4749       <member name="split_pane"
4750               value="51"
4751               c:identifier="ATK_ROLE_SPLIT_PANE"
4752               glib:nick="split-pane"/>
4753       <member name="spin_button"
4754               value="52"
4755               c:identifier="ATK_ROLE_SPIN_BUTTON"
4756               glib:nick="spin-button"/>
4757       <member name="statusbar"
4758               value="53"
4759               c:identifier="ATK_ROLE_STATUSBAR"
4760               glib:nick="statusbar"/>
4761       <member name="table"
4762               value="54"
4763               c:identifier="ATK_ROLE_TABLE"
4764               glib:nick="table"/>
4765       <member name="table_cell"
4766               value="55"
4767               c:identifier="ATK_ROLE_TABLE_CELL"
4768               glib:nick="table-cell"/>
4769       <member name="table_column_header"
4770               value="56"
4771               c:identifier="ATK_ROLE_TABLE_COLUMN_HEADER"
4772               glib:nick="table-column-header"/>
4773       <member name="table_row_header"
4774               value="57"
4775               c:identifier="ATK_ROLE_TABLE_ROW_HEADER"
4776               glib:nick="table-row-header"/>
4777       <member name="tear_off_menu_item"
4778               value="58"
4779               c:identifier="ATK_ROLE_TEAR_OFF_MENU_ITEM"
4780               glib:nick="tear-off-menu-item"/>
4781       <member name="terminal"
4782               value="59"
4783               c:identifier="ATK_ROLE_TERMINAL"
4784               glib:nick="terminal"/>
4785       <member name="text"
4786               value="60"
4787               c:identifier="ATK_ROLE_TEXT"
4788               glib:nick="text"/>
4789       <member name="toggle_button"
4790               value="61"
4791               c:identifier="ATK_ROLE_TOGGLE_BUTTON"
4792               glib:nick="toggle-button"/>
4793       <member name="tool_bar"
4794               value="62"
4795               c:identifier="ATK_ROLE_TOOL_BAR"
4796               glib:nick="tool-bar"/>
4797       <member name="tool_tip"
4798               value="63"
4799               c:identifier="ATK_ROLE_TOOL_TIP"
4800               glib:nick="tool-tip"/>
4801       <member name="tree"
4802               value="64"
4803               c:identifier="ATK_ROLE_TREE"
4804               glib:nick="tree"/>
4805       <member name="tree_table"
4806               value="65"
4807               c:identifier="ATK_ROLE_TREE_TABLE"
4808               glib:nick="tree-table"/>
4809       <member name="unknown"
4810               value="66"
4811               c:identifier="ATK_ROLE_UNKNOWN"
4812               glib:nick="unknown"/>
4813       <member name="viewport"
4814               value="67"
4815               c:identifier="ATK_ROLE_VIEWPORT"
4816               glib:nick="viewport"/>
4817       <member name="window"
4818               value="68"
4819               c:identifier="ATK_ROLE_WINDOW"
4820               glib:nick="window"/>
4821       <member name="header"
4822               value="69"
4823               c:identifier="ATK_ROLE_HEADER"
4824               glib:nick="header"/>
4825       <member name="footer"
4826               value="70"
4827               c:identifier="ATK_ROLE_FOOTER"
4828               glib:nick="footer"/>
4829       <member name="paragraph"
4830               value="71"
4831               c:identifier="ATK_ROLE_PARAGRAPH"
4832               glib:nick="paragraph"/>
4833       <member name="ruler"
4834               value="72"
4835               c:identifier="ATK_ROLE_RULER"
4836               glib:nick="ruler"/>
4837       <member name="application"
4838               value="73"
4839               c:identifier="ATK_ROLE_APPLICATION"
4840               glib:nick="application"/>
4841       <member name="autocomplete"
4842               value="74"
4843               c:identifier="ATK_ROLE_AUTOCOMPLETE"
4844               glib:nick="autocomplete"/>
4845       <member name="editbar"
4846               value="75"
4847               c:identifier="ATK_ROLE_EDITBAR"
4848               glib:nick="editbar"/>
4849       <member name="embedded"
4850               value="76"
4851               c:identifier="ATK_ROLE_EMBEDDED"
4852               glib:nick="embedded"/>
4853       <member name="entry"
4854               value="77"
4855               c:identifier="ATK_ROLE_ENTRY"
4856               glib:nick="entry"/>
4857       <member name="chart"
4858               value="78"
4859               c:identifier="ATK_ROLE_CHART"
4860               glib:nick="chart"/>
4861       <member name="caption"
4862               value="79"
4863               c:identifier="ATK_ROLE_CAPTION"
4864               glib:nick="caption"/>
4865       <member name="document_frame"
4866               value="80"
4867               c:identifier="ATK_ROLE_DOCUMENT_FRAME"
4868               glib:nick="document-frame"/>
4869       <member name="heading"
4870               value="81"
4871               c:identifier="ATK_ROLE_HEADING"
4872               glib:nick="heading"/>
4873       <member name="page"
4874               value="82"
4875               c:identifier="ATK_ROLE_PAGE"
4876               glib:nick="page"/>
4877       <member name="section"
4878               value="83"
4879               c:identifier="ATK_ROLE_SECTION"
4880               glib:nick="section"/>
4881       <member name="redundant_object"
4882               value="84"
4883               c:identifier="ATK_ROLE_REDUNDANT_OBJECT"
4884               glib:nick="redundant-object"/>
4885       <member name="form"
4886               value="85"
4887               c:identifier="ATK_ROLE_FORM"
4888               glib:nick="form"/>
4889       <member name="link"
4890               value="86"
4891               c:identifier="ATK_ROLE_LINK"
4892               glib:nick="link"/>
4893       <member name="input_method_window"
4894               value="87"
4895               c:identifier="ATK_ROLE_INPUT_METHOD_WINDOW"
4896               glib:nick="input-method-window"/>
4897       <member name="last_defined"
4898               value="88"
4899               c:identifier="ATK_ROLE_LAST_DEFINED"
4900               glib:nick="last-defined"/>
4901     </enumeration>
4902     <interface name="Selection"
4903                c:symbol-prefix="selection"
4904                c:type="AtkSelection"
4905                glib:type-name="AtkSelection"
4906                glib:get-type="atk_selection_get_type"
4907                glib:type-struct="SelectionIface">
4908       <virtual-method name="add_selection" invoker="add_selection">
4909         <doc xml:whitespace="preserve">Adds the specified accessible child of the object to the
4910 object's selection.</doc>
4911         <return-value transfer-ownership="none">
4912           <doc xml:whitespace="preserve">TRUE if success, FALSE otherwise.</doc>
4913           <type name="gboolean" c:type="gboolean"/>
4914         </return-value>
4915         <parameters>
4916           <parameter name="i" transfer-ownership="none">
4917             <doc xml:whitespace="preserve">a #gint specifying the child index.</doc>
4918             <type name="gint" c:type="gint"/>
4919           </parameter>
4920         </parameters>
4921       </virtual-method>
4922       <virtual-method name="clear_selection" invoker="clear_selection">
4923         <doc xml:whitespace="preserve">Clears the selection in the object so that no children in the object
4924 are selected.</doc>
4925         <return-value transfer-ownership="none">
4926           <doc xml:whitespace="preserve">TRUE if success, FALSE otherwise.</doc>
4927           <type name="gboolean" c:type="gboolean"/>
4928         </return-value>
4929       </virtual-method>
4930       <virtual-method name="get_selection_count" invoker="get_selection_count">
4931         <doc xml:whitespace="preserve">Gets the number of accessible children currently selected.
4932 indication of whether AtkSelectionIface is implemented, they should
4933 use type checking/interface checking macros or the
4934 atk_get_accessible_value() convenience method.
4935 if @selection does not implement this interface.</doc>
4936         <return-value transfer-ownership="none">
4937           <doc xml:whitespace="preserve">a gint representing the number of items selected, or 0</doc>
4938           <type name="gint" c:type="gint"/>
4939         </return-value>
4940       </virtual-method>
4941       <virtual-method name="is_child_selected" invoker="is_child_selected">
4942         <doc xml:whitespace="preserve">Determines if the current child of this object is selected
4943 indication of whether AtkSelectionIface is implemented, they should
4944 use type checking/interface checking macros or the
4945 atk_get_accessible_value() convenience method.
4946 if @selection does not implement this interface.</doc>
4947         <return-value transfer-ownership="none">
4948           <doc xml:whitespace="preserve">a gboolean representing the specified child is selected, or 0</doc>
4949           <type name="gboolean" c:type="gboolean"/>
4950         </return-value>
4951         <parameters>
4952           <parameter name="i" transfer-ownership="none">
4953             <doc xml:whitespace="preserve">a #gint specifying the child index.</doc>
4954             <type name="gint" c:type="gint"/>
4955           </parameter>
4956         </parameters>
4957       </virtual-method>
4958       <virtual-method name="ref_selection"
4959                       invoker="ref_selection"
4960                       introspectable="0">
4961         <doc xml:whitespace="preserve">Gets a reference to the accessible object representing the specified 
4962 selected child of the object.
4963 indication of whether AtkSelectionIface is implemented, they should
4964 use type checking/interface checking macros or the
4965 atk_get_accessible_value() convenience method.
4966 if @selection does not implement this interface.</doc>
4967         <return-value>
4968           <doc xml:whitespace="preserve">an #AtkObject representing the selected accessible , or %NULL</doc>
4969           <type name="Object" c:type="AtkObject*"/>
4970         </return-value>
4971         <parameters>
4972           <parameter name="i" transfer-ownership="none">
4973             <doc xml:whitespace="preserve">a #gint specifying the index in the selection set.  (e.g. the ith selection as opposed to the ith child).</doc>
4974             <type name="gint" c:type="gint"/>
4975           </parameter>
4976         </parameters>
4977       </virtual-method>
4978       <virtual-method name="remove_selection" invoker="remove_selection">
4979         <doc xml:whitespace="preserve">Removes the specified child of the object from the object's selection.</doc>
4980         <return-value transfer-ownership="none">
4981           <doc xml:whitespace="preserve">TRUE if success, FALSE otherwise.</doc>
4982           <type name="gboolean" c:type="gboolean"/>
4983         </return-value>
4984         <parameters>
4985           <parameter name="i" transfer-ownership="none">
4986             <doc xml:whitespace="preserve">a #gint specifying the index in the selection set.  (e.g. the ith selection as opposed to the ith child).</doc>
4987             <type name="gint" c:type="gint"/>
4988           </parameter>
4989         </parameters>
4990       </virtual-method>
4991       <virtual-method name="select_all_selection"
4992                       invoker="select_all_selection">
4993         <doc xml:whitespace="preserve">Causes every child of the object to be selected if the object
4994 supports multiple selections.</doc>
4995         <return-value transfer-ownership="none">
4996           <doc xml:whitespace="preserve">TRUE if success, FALSE otherwise.</doc>
4997           <type name="gboolean" c:type="gboolean"/>
4998         </return-value>
4999       </virtual-method>
5000       <method name="add_selection" c:identifier="atk_selection_add_selection">
5001         <doc xml:whitespace="preserve">Adds the specified accessible child of the object to the
5002 object's selection.</doc>
5003         <return-value transfer-ownership="none">
5004           <doc xml:whitespace="preserve">TRUE if success, FALSE otherwise.</doc>
5005           <type name="gboolean" c:type="gboolean"/>
5006         </return-value>
5007         <parameters>
5008           <parameter name="i" transfer-ownership="none">
5009             <doc xml:whitespace="preserve">a #gint specifying the child index.</doc>
5010             <type name="gint" c:type="gint"/>
5011           </parameter>
5012         </parameters>
5013       </method>
5014       <method name="clear_selection"
5015               c:identifier="atk_selection_clear_selection">
5016         <doc xml:whitespace="preserve">Clears the selection in the object so that no children in the object
5017 are selected.</doc>
5018         <return-value transfer-ownership="none">
5019           <doc xml:whitespace="preserve">TRUE if success, FALSE otherwise.</doc>
5020           <type name="gboolean" c:type="gboolean"/>
5021         </return-value>
5022       </method>
5023       <method name="get_selection_count"
5024               c:identifier="atk_selection_get_selection_count">
5025         <doc xml:whitespace="preserve">Gets the number of accessible children currently selected.
5026 indication of whether AtkSelectionIface is implemented, they should
5027 use type checking/interface checking macros or the
5028 atk_get_accessible_value() convenience method.
5029 if @selection does not implement this interface.</doc>
5030         <return-value transfer-ownership="none">
5031           <doc xml:whitespace="preserve">a gint representing the number of items selected, or 0</doc>
5032           <type name="gint" c:type="gint"/>
5033         </return-value>
5034       </method>
5035       <method name="is_child_selected"
5036               c:identifier="atk_selection_is_child_selected">
5037         <doc xml:whitespace="preserve">Determines if the current child of this object is selected
5038 indication of whether AtkSelectionIface is implemented, they should
5039 use type checking/interface checking macros or the
5040 atk_get_accessible_value() convenience method.
5041 if @selection does not implement this interface.</doc>
5042         <return-value transfer-ownership="none">
5043           <doc xml:whitespace="preserve">a gboolean representing the specified child is selected, or 0</doc>
5044           <type name="gboolean" c:type="gboolean"/>
5045         </return-value>
5046         <parameters>
5047           <parameter name="i" transfer-ownership="none">
5048             <doc xml:whitespace="preserve">a #gint specifying the child index.</doc>
5049             <type name="gint" c:type="gint"/>
5050           </parameter>
5051         </parameters>
5052       </method>
5053       <method name="ref_selection"
5054               c:identifier="atk_selection_ref_selection"
5055               introspectable="0">
5056         <doc xml:whitespace="preserve">Gets a reference to the accessible object representing the specified 
5057 selected child of the object.
5058 indication of whether AtkSelectionIface is implemented, they should
5059 use type checking/interface checking macros or the
5060 atk_get_accessible_value() convenience method.
5061 if @selection does not implement this interface.</doc>
5062         <return-value>
5063           <doc xml:whitespace="preserve">an #AtkObject representing the selected accessible , or %NULL</doc>
5064           <type name="Object" c:type="AtkObject*"/>
5065         </return-value>
5066         <parameters>
5067           <parameter name="i" transfer-ownership="none">
5068             <doc xml:whitespace="preserve">a #gint specifying the index in the selection set.  (e.g. the ith selection as opposed to the ith child).</doc>
5069             <type name="gint" c:type="gint"/>
5070           </parameter>
5071         </parameters>
5072       </method>
5073       <method name="remove_selection"
5074               c:identifier="atk_selection_remove_selection">
5075         <doc xml:whitespace="preserve">Removes the specified child of the object from the object's selection.</doc>
5076         <return-value transfer-ownership="none">
5077           <doc xml:whitespace="preserve">TRUE if success, FALSE otherwise.</doc>
5078           <type name="gboolean" c:type="gboolean"/>
5079         </return-value>
5080         <parameters>
5081           <parameter name="i" transfer-ownership="none">
5082             <doc xml:whitespace="preserve">a #gint specifying the index in the selection set.  (e.g. the ith selection as opposed to the ith child).</doc>
5083             <type name="gint" c:type="gint"/>
5084           </parameter>
5085         </parameters>
5086       </method>
5087       <method name="select_all_selection"
5088               c:identifier="atk_selection_select_all_selection">
5089         <doc xml:whitespace="preserve">Causes every child of the object to be selected if the object
5090 supports multiple selections.</doc>
5091         <return-value transfer-ownership="none">
5092           <doc xml:whitespace="preserve">TRUE if success, FALSE otherwise.</doc>
5093           <type name="gboolean" c:type="gboolean"/>
5094         </return-value>
5095       </method>
5096       <glib:signal name="selection-changed">
5097         <return-value transfer-ownership="none">
5098           <type name="none"/>
5099         </return-value>
5100       </glib:signal>
5101     </interface>
5102     <record name="SelectionIface"
5103             c:type="AtkSelectionIface"
5104             glib:is-gtype-struct-for="Selection">
5105       <field name="parent">
5106         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
5107       </field>
5108       <field name="add_selection">
5109         <callback name="add_selection">
5110           <return-value transfer-ownership="none">
5111             <doc xml:whitespace="preserve">TRUE if success, FALSE otherwise.</doc>
5112             <type name="gboolean" c:type="gboolean"/>
5113           </return-value>
5114           <parameters>
5115             <parameter name="selection" transfer-ownership="none">
5116               <type name="Selection" c:type="AtkSelection*"/>
5117             </parameter>
5118             <parameter name="i" transfer-ownership="none">
5119               <doc xml:whitespace="preserve">a #gint specifying the child index.</doc>
5120               <type name="gint" c:type="gint"/>
5121             </parameter>
5122           </parameters>
5123         </callback>
5124       </field>
5125       <field name="clear_selection">
5126         <callback name="clear_selection">
5127           <return-value transfer-ownership="none">
5128             <doc xml:whitespace="preserve">TRUE if success, FALSE otherwise.</doc>
5129             <type name="gboolean" c:type="gboolean"/>
5130           </return-value>
5131           <parameters>
5132             <parameter name="selection" transfer-ownership="none">
5133               <type name="Selection" c:type="AtkSelection*"/>
5134             </parameter>
5135           </parameters>
5136         </callback>
5137       </field>
5138       <field name="ref_selection" introspectable="0">
5139         <callback name="ref_selection" introspectable="0">
5140           <return-value>
5141             <doc xml:whitespace="preserve">an #AtkObject representing the selected accessible , or %NULL</doc>
5142             <type name="Object" c:type="AtkObject*"/>
5143           </return-value>
5144           <parameters>
5145             <parameter name="selection" transfer-ownership="none">
5146               <type name="Selection" c:type="AtkSelection*"/>
5147             </parameter>
5148             <parameter name="i" transfer-ownership="none">
5149               <doc xml:whitespace="preserve">a #gint specifying the index in the selection set.  (e.g. the ith selection as opposed to the ith child).</doc>
5150               <type name="gint" c:type="gint"/>
5151             </parameter>
5152           </parameters>
5153         </callback>
5154       </field>
5155       <field name="get_selection_count">
5156         <callback name="get_selection_count">
5157           <return-value transfer-ownership="none">
5158             <doc xml:whitespace="preserve">a gint representing the number of items selected, or 0</doc>
5159             <type name="gint" c:type="gint"/>
5160           </return-value>
5161           <parameters>
5162             <parameter name="selection" transfer-ownership="none">
5163               <type name="Selection" c:type="AtkSelection*"/>
5164             </parameter>
5165           </parameters>
5166         </callback>
5167       </field>
5168       <field name="is_child_selected">
5169         <callback name="is_child_selected">
5170           <return-value transfer-ownership="none">
5171             <doc xml:whitespace="preserve">a gboolean representing the specified child is selected, or 0</doc>
5172             <type name="gboolean" c:type="gboolean"/>
5173           </return-value>
5174           <parameters>
5175             <parameter name="selection" transfer-ownership="none">
5176               <type name="Selection" c:type="AtkSelection*"/>
5177             </parameter>
5178             <parameter name="i" transfer-ownership="none">
5179               <doc xml:whitespace="preserve">a #gint specifying the child index.</doc>
5180               <type name="gint" c:type="gint"/>
5181             </parameter>
5182           </parameters>
5183         </callback>
5184       </field>
5185       <field name="remove_selection">
5186         <callback name="remove_selection">
5187           <return-value transfer-ownership="none">
5188             <doc xml:whitespace="preserve">TRUE if success, FALSE otherwise.</doc>
5189             <type name="gboolean" c:type="gboolean"/>
5190           </return-value>
5191           <parameters>
5192             <parameter name="selection" transfer-ownership="none">
5193               <type name="Selection" c:type="AtkSelection*"/>
5194             </parameter>
5195             <parameter name="i" transfer-ownership="none">
5196               <doc xml:whitespace="preserve">a #gint specifying the index in the selection set.  (e.g. the ith selection as opposed to the ith child).</doc>
5197               <type name="gint" c:type="gint"/>
5198             </parameter>
5199           </parameters>
5200         </callback>
5201       </field>
5202       <field name="select_all_selection">
5203         <callback name="select_all_selection">
5204           <return-value transfer-ownership="none">
5205             <doc xml:whitespace="preserve">TRUE if success, FALSE otherwise.</doc>
5206             <type name="gboolean" c:type="gboolean"/>
5207           </return-value>
5208           <parameters>
5209             <parameter name="selection" transfer-ownership="none">
5210               <type name="Selection" c:type="AtkSelection*"/>
5211             </parameter>
5212           </parameters>
5213         </callback>
5214       </field>
5215       <field name="selection_changed">
5216         <callback name="selection_changed">
5217           <return-value transfer-ownership="none">
5218             <type name="none" c:type="void"/>
5219           </return-value>
5220           <parameters>
5221             <parameter name="selection" transfer-ownership="none">
5222               <type name="Selection" c:type="AtkSelection*"/>
5223             </parameter>
5224           </parameters>
5225         </callback>
5226       </field>
5227       <field name="pad1">
5228         <type name="Function" c:type="AtkFunction"/>
5229       </field>
5230       <field name="pad2">
5231         <type name="Function" c:type="AtkFunction"/>
5232       </field>
5233     </record>
5234     <class name="Socket"
5235            c:symbol-prefix="socket"
5236            c:type="AtkSocket"
5237            parent="Object"
5238            glib:type-name="AtkSocket"
5239            glib:get-type="atk_socket_get_type"
5240            glib:type-struct="SocketClass">
5241       <implements name="Component"/>
5242       <constructor name="new" c:identifier="atk_socket_new">
5243         <return-value transfer-ownership="full">
5244           <type name="Object" c:type="AtkObject*"/>
5245         </return-value>
5246       </constructor>
5247       <virtual-method name="embed" invoker="embed">
5248         <doc xml:whitespace="preserve">Embeds the children of an #AtkPlug as the children of the #AtkSocket.  The
5249 plug may be in the same process or in a different process.</doc>
5250         <return-value transfer-ownership="none">
5251           <type name="none" c:type="void"/>
5252         </return-value>
5253         <parameters>
5254           <parameter name="plug_id" transfer-ownership="none">
5255             <doc xml:whitespace="preserve">the ID of an #AtkPlug</doc>
5256             <type name="utf8" c:type="gchar*"/>
5257           </parameter>
5258         </parameters>
5259       </virtual-method>
5260       <method name="embed" c:identifier="atk_socket_embed">
5261         <doc xml:whitespace="preserve">Embeds the children of an #AtkPlug as the children of the #AtkSocket.  The
5262 plug may be in the same process or in a different process.</doc>
5263         <return-value transfer-ownership="none">
5264           <type name="none" c:type="void"/>
5265         </return-value>
5266         <parameters>
5267           <parameter name="plug_id" transfer-ownership="none">
5268             <doc xml:whitespace="preserve">the ID of an #AtkPlug</doc>
5269             <type name="utf8" c:type="gchar*"/>
5270           </parameter>
5271         </parameters>
5272       </method>
5273       <method name="is_occupied" c:identifier="atk_socket_is_occupied">
5274         <doc xml:whitespace="preserve">Determines whether or not the socket has an embedded plug.</doc>
5275         <return-value transfer-ownership="none">
5276           <doc xml:whitespace="preserve">TRUE if a plug is embedded in the socket</doc>
5277           <type name="gboolean" c:type="gboolean"/>
5278         </return-value>
5279       </method>
5280       <field name="parent">
5281         <type name="Object" c:type="AtkObject"/>
5282       </field>
5283       <field name="embedded_plug_id">
5284         <type name="utf8" c:type="gchar*"/>
5285       </field>
5286     </class>
5287     <record name="SocketClass"
5288             c:type="AtkSocketClass"
5289             glib:is-gtype-struct-for="Socket">
5290       <field name="parent_class">
5291         <type name="ObjectClass" c:type="AtkObjectClass"/>
5292       </field>
5293       <field name="embed">
5294         <callback name="embed">
5295           <return-value transfer-ownership="none">
5296             <type name="none" c:type="void"/>
5297           </return-value>
5298           <parameters>
5299             <parameter name="obj" transfer-ownership="none">
5300               <type name="Socket" c:type="AtkSocket*"/>
5301             </parameter>
5302             <parameter name="plug_id" transfer-ownership="none">
5303               <doc xml:whitespace="preserve">the ID of an #AtkPlug</doc>
5304               <type name="utf8" c:type="gchar*"/>
5305             </parameter>
5306           </parameters>
5307         </callback>
5308       </field>
5309     </record>
5310     <class name="StateSet"
5311            c:symbol-prefix="state_set"
5312            c:type="AtkStateSet"
5313            parent="GObject.Object"
5314            glib:type-name="AtkStateSet"
5315            glib:get-type="atk_state_set_get_type"
5316            glib:type-struct="StateSetClass">
5317       <constructor name="new" c:identifier="atk_state_set_new">
5318         <doc xml:whitespace="preserve">Creates a new empty state set.</doc>
5319         <return-value transfer-ownership="full">
5320           <doc xml:whitespace="preserve">a new #AtkStateSet</doc>
5321           <type name="StateSet" c:type="AtkStateSet*"/>
5322         </return-value>
5323       </constructor>
5324       <method name="add_state" c:identifier="atk_state_set_add_state">
5325         <doc xml:whitespace="preserve">Add a new state for the specified type to the current state set if
5326 it is not already present.</doc>
5327         <return-value transfer-ownership="none">
5328           <doc xml:whitespace="preserve">%TRUE if  the state for @type is not already in @set.</doc>
5329           <type name="gboolean" c:type="gboolean"/>
5330         </return-value>
5331         <parameters>
5332           <parameter name="type" transfer-ownership="none">
5333             <doc xml:whitespace="preserve">an #AtkStateType</doc>
5334             <type name="StateType" c:type="AtkStateType"/>
5335           </parameter>
5336         </parameters>
5337       </method>
5338       <method name="add_states" c:identifier="atk_state_set_add_states">
5339         <doc xml:whitespace="preserve">Add the states for the specified types to the current state set.</doc>
5340         <return-value transfer-ownership="none">
5341           <type name="none" c:type="void"/>
5342         </return-value>
5343         <parameters>
5344           <parameter name="types" transfer-ownership="none">
5345             <doc xml:whitespace="preserve">an array of #AtkStateType</doc>
5346             <type name="StateType" c:type="AtkStateType*"/>
5347           </parameter>
5348           <parameter name="n_types" transfer-ownership="none">
5349             <doc xml:whitespace="preserve">The number of elements in the array</doc>
5350             <type name="gint" c:type="gint"/>
5351           </parameter>
5352         </parameters>
5353       </method>
5354       <method name="and_sets"
5355               c:identifier="atk_state_set_and_sets"
5356               introspectable="0">
5357         <doc xml:whitespace="preserve">Constructs the intersection of the two sets, returning %NULL if the
5358 intersection is empty.</doc>
5359         <return-value>
5360           <doc xml:whitespace="preserve">a new #AtkStateSet which is the intersection of the two sets.</doc>
5361           <type name="StateSet" c:type="AtkStateSet*"/>
5362         </return-value>
5363         <parameters>
5364           <parameter name="compare_set" transfer-ownership="none">
5365             <doc xml:whitespace="preserve">another #AtkStateSet</doc>
5366             <type name="StateSet" c:type="AtkStateSet*"/>
5367           </parameter>
5368         </parameters>
5369       </method>
5370       <method name="clear_states" c:identifier="atk_state_set_clear_states">
5371         <doc xml:whitespace="preserve">Removes all states from the state set.</doc>
5372         <return-value transfer-ownership="none">
5373           <type name="none" c:type="void"/>
5374         </return-value>
5375       </method>
5376       <method name="contains_state"
5377               c:identifier="atk_state_set_contains_state">
5378         <doc xml:whitespace="preserve">Checks whether the state for the specified type is in the specified set.</doc>
5379         <return-value transfer-ownership="none">
5380           <doc xml:whitespace="preserve">%TRUE if @type is the state type is in @set.</doc>
5381           <type name="gboolean" c:type="gboolean"/>
5382         </return-value>
5383         <parameters>
5384           <parameter name="type" transfer-ownership="none">
5385             <doc xml:whitespace="preserve">an #AtkStateType</doc>
5386             <type name="StateType" c:type="AtkStateType"/>
5387           </parameter>
5388         </parameters>
5389       </method>
5390       <method name="contains_states"
5391               c:identifier="atk_state_set_contains_states">
5392         <doc xml:whitespace="preserve">Checks whether the states for all the specified types are in the 
5393 specified set.</doc>
5394         <return-value transfer-ownership="none">
5395           <doc xml:whitespace="preserve">%TRUE if all the states for @type are in @set.</doc>
5396           <type name="gboolean" c:type="gboolean"/>
5397         </return-value>
5398         <parameters>
5399           <parameter name="types" transfer-ownership="none">
5400             <doc xml:whitespace="preserve">an array of #AtkStateType</doc>
5401             <type name="StateType" c:type="AtkStateType*"/>
5402           </parameter>
5403           <parameter name="n_types" transfer-ownership="none">
5404             <doc xml:whitespace="preserve">The number of elements in the array</doc>
5405             <type name="gint" c:type="gint"/>
5406           </parameter>
5407         </parameters>
5408       </method>
5409       <method name="is_empty" c:identifier="atk_state_set_is_empty">
5410         <doc xml:whitespace="preserve">Checks whether the state set is empty, i.e. has no states set.</doc>
5411         <return-value transfer-ownership="none">
5412           <doc xml:whitespace="preserve">%TRUE if @set has no states set, otherwise %FALSE</doc>
5413           <type name="gboolean" c:type="gboolean"/>
5414         </return-value>
5415       </method>
5416       <method name="or_sets"
5417               c:identifier="atk_state_set_or_sets"
5418               introspectable="0">
5419         <doc xml:whitespace="preserve">Constructs the union of the two sets.
5420 returning %NULL is empty.</doc>
5421         <return-value>
5422           <doc xml:whitespace="preserve">a new #AtkStateSet which is the union of the two sets,</doc>
5423           <type name="StateSet" c:type="AtkStateSet*"/>
5424         </return-value>
5425         <parameters>
5426           <parameter name="compare_set" transfer-ownership="none">
5427             <doc xml:whitespace="preserve">another #AtkStateSet</doc>
5428             <type name="StateSet" c:type="AtkStateSet*"/>
5429           </parameter>
5430         </parameters>
5431       </method>
5432       <method name="remove_state" c:identifier="atk_state_set_remove_state">
5433         <doc xml:whitespace="preserve">Removes the state for the specified type from the state set.</doc>
5434         <return-value transfer-ownership="none">
5435           <doc xml:whitespace="preserve">%TRUE if @type was the state type is in @set.</doc>
5436           <type name="gboolean" c:type="gboolean"/>
5437         </return-value>
5438         <parameters>
5439           <parameter name="type" transfer-ownership="none">
5440             <doc xml:whitespace="preserve">an #AtkType</doc>
5441             <type name="StateType" c:type="AtkStateType"/>
5442           </parameter>
5443         </parameters>
5444       </method>
5445       <method name="xor_sets"
5446               c:identifier="atk_state_set_xor_sets"
5447               introspectable="0">
5448         <doc xml:whitespace="preserve">Constructs the exclusive-or of the two sets, returning %NULL is empty.
5449 The set returned by this operation contains the states in exactly
5450 one of the two sets.
5451 in exactly one of the two sets.</doc>
5452         <return-value>
5453           <doc xml:whitespace="preserve">a new #AtkStateSet which contains the states which are</doc>
5454           <type name="StateSet" c:type="AtkStateSet*"/>
5455         </return-value>
5456         <parameters>
5457           <parameter name="compare_set" transfer-ownership="none">
5458             <doc xml:whitespace="preserve">another #AtkStateSet</doc>
5459             <type name="StateSet" c:type="AtkStateSet*"/>
5460           </parameter>
5461         </parameters>
5462       </method>
5463       <field name="parent">
5464         <type name="GObject.Object" c:type="GObject"/>
5465       </field>
5466     </class>
5467     <record name="StateSetClass"
5468             c:type="AtkStateSetClass"
5469             glib:is-gtype-struct-for="StateSet">
5470       <field name="parent">
5471         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
5472       </field>
5473     </record>
5474     <enumeration name="StateType"
5475                  glib:type-name="AtkStateType"
5476                  glib:get-type="atk_state_type_get_type"
5477                  c:type="AtkStateType">
5478       <member name="invalid"
5479               value="0"
5480               c:identifier="ATK_STATE_INVALID"
5481               glib:nick="invalid"/>
5482       <member name="active"
5483               value="1"
5484               c:identifier="ATK_STATE_ACTIVE"
5485               glib:nick="active"/>
5486       <member name="armed"
5487               value="2"
5488               c:identifier="ATK_STATE_ARMED"
5489               glib:nick="armed"/>
5490       <member name="busy"
5491               value="3"
5492               c:identifier="ATK_STATE_BUSY"
5493               glib:nick="busy"/>
5494       <member name="checked"
5495               value="4"
5496               c:identifier="ATK_STATE_CHECKED"
5497               glib:nick="checked"/>
5498       <member name="defunct"
5499               value="5"
5500               c:identifier="ATK_STATE_DEFUNCT"
5501               glib:nick="defunct"/>
5502       <member name="editable"
5503               value="6"
5504               c:identifier="ATK_STATE_EDITABLE"
5505               glib:nick="editable"/>
5506       <member name="enabled"
5507               value="7"
5508               c:identifier="ATK_STATE_ENABLED"
5509               glib:nick="enabled"/>
5510       <member name="expandable"
5511               value="8"
5512               c:identifier="ATK_STATE_EXPANDABLE"
5513               glib:nick="expandable"/>
5514       <member name="expanded"
5515               value="9"
5516               c:identifier="ATK_STATE_EXPANDED"
5517               glib:nick="expanded"/>
5518       <member name="focusable"
5519               value="10"
5520               c:identifier="ATK_STATE_FOCUSABLE"
5521               glib:nick="focusable"/>
5522       <member name="focused"
5523               value="11"
5524               c:identifier="ATK_STATE_FOCUSED"
5525               glib:nick="focused"/>
5526       <member name="horizontal"
5527               value="12"
5528               c:identifier="ATK_STATE_HORIZONTAL"
5529               glib:nick="horizontal"/>
5530       <member name="iconified"
5531               value="13"
5532               c:identifier="ATK_STATE_ICONIFIED"
5533               glib:nick="iconified"/>
5534       <member name="modal"
5535               value="14"
5536               c:identifier="ATK_STATE_MODAL"
5537               glib:nick="modal"/>
5538       <member name="multi_line"
5539               value="15"
5540               c:identifier="ATK_STATE_MULTI_LINE"
5541               glib:nick="multi-line"/>
5542       <member name="multiselectable"
5543               value="16"
5544               c:identifier="ATK_STATE_MULTISELECTABLE"
5545               glib:nick="multiselectable"/>
5546       <member name="opaque"
5547               value="17"
5548               c:identifier="ATK_STATE_OPAQUE"
5549               glib:nick="opaque"/>
5550       <member name="pressed"
5551               value="18"
5552               c:identifier="ATK_STATE_PRESSED"
5553               glib:nick="pressed"/>
5554       <member name="resizable"
5555               value="19"
5556               c:identifier="ATK_STATE_RESIZABLE"
5557               glib:nick="resizable"/>
5558       <member name="selectable"
5559               value="20"
5560               c:identifier="ATK_STATE_SELECTABLE"
5561               glib:nick="selectable"/>
5562       <member name="selected"
5563               value="21"
5564               c:identifier="ATK_STATE_SELECTED"
5565               glib:nick="selected"/>
5566       <member name="sensitive"
5567               value="22"
5568               c:identifier="ATK_STATE_SENSITIVE"
5569               glib:nick="sensitive"/>
5570       <member name="showing"
5571               value="23"
5572               c:identifier="ATK_STATE_SHOWING"
5573               glib:nick="showing"/>
5574       <member name="single_line"
5575               value="24"
5576               c:identifier="ATK_STATE_SINGLE_LINE"
5577               glib:nick="single-line"/>
5578       <member name="stale"
5579               value="25"
5580               c:identifier="ATK_STATE_STALE"
5581               glib:nick="stale"/>
5582       <member name="transient"
5583               value="26"
5584               c:identifier="ATK_STATE_TRANSIENT"
5585               glib:nick="transient"/>
5586       <member name="vertical"
5587               value="27"
5588               c:identifier="ATK_STATE_VERTICAL"
5589               glib:nick="vertical"/>
5590       <member name="visible"
5591               value="28"
5592               c:identifier="ATK_STATE_VISIBLE"
5593               glib:nick="visible"/>
5594       <member name="manages_descendants"
5595               value="29"
5596               c:identifier="ATK_STATE_MANAGES_DESCENDANTS"
5597               glib:nick="manages-descendants"/>
5598       <member name="indeterminate"
5599               value="30"
5600               c:identifier="ATK_STATE_INDETERMINATE"
5601               glib:nick="indeterminate"/>
5602       <member name="truncated"
5603               value="31"
5604               c:identifier="ATK_STATE_TRUNCATED"
5605               glib:nick="truncated"/>
5606       <member name="required"
5607               value="32"
5608               c:identifier="ATK_STATE_REQUIRED"
5609               glib:nick="required"/>
5610       <member name="invalid_entry"
5611               value="33"
5612               c:identifier="ATK_STATE_INVALID_ENTRY"
5613               glib:nick="invalid-entry"/>
5614       <member name="supports_autocompletion"
5615               value="34"
5616               c:identifier="ATK_STATE_SUPPORTS_AUTOCOMPLETION"
5617               glib:nick="supports-autocompletion"/>
5618       <member name="selectable_text"
5619               value="35"
5620               c:identifier="ATK_STATE_SELECTABLE_TEXT"
5621               glib:nick="selectable-text"/>
5622       <member name="default"
5623               value="36"
5624               c:identifier="ATK_STATE_DEFAULT"
5625               glib:nick="default"/>
5626       <member name="animated"
5627               value="37"
5628               c:identifier="ATK_STATE_ANIMATED"
5629               glib:nick="animated"/>
5630       <member name="visited"
5631               value="38"
5632               c:identifier="ATK_STATE_VISITED"
5633               glib:nick="visited"/>
5634       <member name="last_defined"
5635               value="39"
5636               c:identifier="ATK_STATE_LAST_DEFINED"
5637               glib:nick="last-defined"/>
5638     </enumeration>
5639     <interface name="StreamableContent"
5640                c:symbol-prefix="streamable_content"
5641                c:type="AtkStreamableContent"
5642                glib:type-name="AtkStreamableContent"
5643                glib:get-type="atk_streamable_content_get_type"
5644                glib:type-struct="StreamableContentIface">
5645       <virtual-method name="get_mime_type" invoker="get_mime_type">
5646         <doc xml:whitespace="preserve">Gets the character string of the specified mime type. The first mime
5647 type is at position 0, the second at position 1, and so on.
5648 should not free the character string.</doc>
5649         <return-value transfer-ownership="none">
5650           <type name="utf8" c:type="gchar*"/>
5651         </return-value>
5652         <parameters>
5653           <parameter name="i" transfer-ownership="none">
5654             <doc xml:whitespace="preserve">a gint representing the position of the mime type starting from 0</doc>
5655             <type name="gint" c:type="gint"/>
5656           </parameter>
5657         </parameters>
5658       </virtual-method>
5659       <virtual-method name="get_n_mime_types" invoker="get_n_mime_types">
5660         <doc xml:whitespace="preserve">Gets the number of mime types supported by this object.</doc>
5661         <return-value transfer-ownership="none">
5662           <doc xml:whitespace="preserve">a gint which is the number of mime types supported by the object.</doc>
5663           <type name="gint" c:type="gint"/>
5664         </return-value>
5665       </virtual-method>
5666       <virtual-method name="get_stream"
5667                       invoker="get_stream"
5668                       introspectable="0">
5669         <doc xml:whitespace="preserve">Gets the content in the specified mime type.
5670 type.</doc>
5671         <return-value>
5672           <doc xml:whitespace="preserve">A #GIOChannel which contains the content in the specified mime</doc>
5673           <type name="GLib.IOChannel" c:type="GIOChannel*"/>
5674         </return-value>
5675         <parameters>
5676           <parameter name="mime_type" transfer-ownership="none">
5677             <doc xml:whitespace="preserve">a gchar* representing the mime type</doc>
5678             <type name="utf8" c:type="gchar*"/>
5679           </parameter>
5680         </parameters>
5681       </virtual-method>
5682       <virtual-method name="get_uri" invoker="get_uri" version="1.12">
5683         <doc xml:whitespace="preserve">Get a string representing a URI in IETF standard format
5684 (see http://www.ietf.org/rfc/rfc2396.txt) from which the object's content
5685 may be streamed in the specified mime-type, if one is available.
5686 If mime_type is NULL, the URI for the default (and possibly only) mime-type is
5687 returned. 
5688 Note that it is possible for get_uri to return NULL but for
5689 get_stream to work nonetheless, since not all GIOChannels connect to URIs.
5690 can be constructed.</doc>
5691         <return-value transfer-ownership="none">
5692           <doc xml:whitespace="preserve">Returns a string representing a URI, or NULL if no corresponding URI</doc>
5693           <type name="utf8" c:type="gchar*"/>
5694         </return-value>
5695         <parameters>
5696           <parameter name="mime_type" transfer-ownership="none">
5697             <doc xml:whitespace="preserve">a gchar* representing the mime type, or NULL to request a URI for the default mime type.</doc>
5698             <type name="utf8" c:type="gchar*"/>
5699           </parameter>
5700         </parameters>
5701       </virtual-method>
5702       <method name="get_mime_type"
5703               c:identifier="atk_streamable_content_get_mime_type">
5704         <doc xml:whitespace="preserve">Gets the character string of the specified mime type. The first mime
5705 type is at position 0, the second at position 1, and so on.
5706 should not free the character string.</doc>
5707         <return-value transfer-ownership="none">
5708           <type name="utf8" c:type="gchar*"/>
5709         </return-value>
5710         <parameters>
5711           <parameter name="i" transfer-ownership="none">
5712             <doc xml:whitespace="preserve">a gint representing the position of the mime type starting from 0</doc>
5713             <type name="gint" c:type="gint"/>
5714           </parameter>
5715         </parameters>
5716       </method>
5717       <method name="get_n_mime_types"
5718               c:identifier="atk_streamable_content_get_n_mime_types">
5719         <doc xml:whitespace="preserve">Gets the number of mime types supported by this object.</doc>
5720         <return-value transfer-ownership="none">
5721           <doc xml:whitespace="preserve">a gint which is the number of mime types supported by the object.</doc>
5722           <type name="gint" c:type="gint"/>
5723         </return-value>
5724       </method>
5725       <method name="get_stream"
5726               c:identifier="atk_streamable_content_get_stream"
5727               introspectable="0">
5728         <doc xml:whitespace="preserve">Gets the content in the specified mime type.
5729 type.</doc>
5730         <return-value>
5731           <doc xml:whitespace="preserve">A #GIOChannel which contains the content in the specified mime</doc>
5732           <type name="GLib.IOChannel" c:type="GIOChannel*"/>
5733         </return-value>
5734         <parameters>
5735           <parameter name="mime_type" transfer-ownership="none">
5736             <doc xml:whitespace="preserve">a gchar* representing the mime type</doc>
5737             <type name="utf8" c:type="gchar*"/>
5738           </parameter>
5739         </parameters>
5740       </method>
5741       <method name="get_uri"
5742               c:identifier="atk_streamable_content_get_uri"
5743               version="1.12">
5744         <doc xml:whitespace="preserve">Get a string representing a URI in IETF standard format
5745 (see http://www.ietf.org/rfc/rfc2396.txt) from which the object's content
5746 may be streamed in the specified mime-type, if one is available.
5747 If mime_type is NULL, the URI for the default (and possibly only) mime-type is
5748 returned. 
5749 Note that it is possible for get_uri to return NULL but for
5750 get_stream to work nonetheless, since not all GIOChannels connect to URIs.
5751 can be constructed.</doc>
5752         <return-value transfer-ownership="full">
5753           <doc xml:whitespace="preserve">Returns a string representing a URI, or NULL if no corresponding URI</doc>
5754           <type name="utf8" c:type="gchar*"/>
5755         </return-value>
5756         <parameters>
5757           <parameter name="mime_type" transfer-ownership="none">
5758             <doc xml:whitespace="preserve">a gchar* representing the mime type, or NULL to request a URI for the default mime type.</doc>
5759             <type name="utf8" c:type="gchar*"/>
5760           </parameter>
5761         </parameters>
5762       </method>
5763     </interface>
5764     <record name="StreamableContentIface"
5765             c:type="AtkStreamableContentIface"
5766             glib:is-gtype-struct-for="StreamableContent">
5767       <field name="parent">
5768         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
5769       </field>
5770       <field name="get_n_mime_types">
5771         <callback name="get_n_mime_types">
5772           <return-value transfer-ownership="none">
5773             <doc xml:whitespace="preserve">a gint which is the number of mime types supported by the object.</doc>
5774             <type name="gint" c:type="gint"/>
5775           </return-value>
5776           <parameters>
5777             <parameter name="streamable" transfer-ownership="none">
5778               <type name="StreamableContent" c:type="AtkStreamableContent*"/>
5779             </parameter>
5780           </parameters>
5781         </callback>
5782       </field>
5783       <field name="get_mime_type">
5784         <callback name="get_mime_type">
5785           <return-value transfer-ownership="none">
5786             <type name="utf8" c:type="gchar*"/>
5787           </return-value>
5788           <parameters>
5789             <parameter name="streamable" transfer-ownership="none">
5790               <type name="StreamableContent" c:type="AtkStreamableContent*"/>
5791             </parameter>
5792             <parameter name="i" transfer-ownership="none">
5793               <doc xml:whitespace="preserve">a gint representing the position of the mime type starting from 0</doc>
5794               <type name="gint" c:type="gint"/>
5795             </parameter>
5796           </parameters>
5797         </callback>
5798       </field>
5799       <field name="get_stream" introspectable="0">
5800         <callback name="get_stream" introspectable="0">
5801           <return-value>
5802             <doc xml:whitespace="preserve">A #GIOChannel which contains the content in the specified mime</doc>
5803             <type name="GLib.IOChannel" c:type="GIOChannel*"/>
5804           </return-value>
5805           <parameters>
5806             <parameter name="streamable" transfer-ownership="none">
5807               <type name="StreamableContent" c:type="AtkStreamableContent*"/>
5808             </parameter>
5809             <parameter name="mime_type" transfer-ownership="none">
5810               <doc xml:whitespace="preserve">a gchar* representing the mime type</doc>
5811               <type name="utf8" c:type="gchar*"/>
5812             </parameter>
5813           </parameters>
5814         </callback>
5815       </field>
5816       <field name="get_uri">
5817         <callback name="get_uri">
5818           <return-value transfer-ownership="none">
5819             <doc xml:whitespace="preserve">Returns a string representing a URI, or NULL if no corresponding URI</doc>
5820             <type name="utf8" c:type="gchar*"/>
5821           </return-value>
5822           <parameters>
5823             <parameter name="streamable" transfer-ownership="none">
5824               <type name="StreamableContent" c:type="AtkStreamableContent*"/>
5825             </parameter>
5826             <parameter name="mime_type" transfer-ownership="none">
5827               <doc xml:whitespace="preserve">a gchar* representing the mime type, or NULL to request a URI for the default mime type.</doc>
5828               <type name="utf8" c:type="gchar*"/>
5829             </parameter>
5830           </parameters>
5831         </callback>
5832       </field>
5833       <field name="pad1">
5834         <type name="Function" c:type="AtkFunction"/>
5835       </field>
5836       <field name="pad2">
5837         <type name="Function" c:type="AtkFunction"/>
5838       </field>
5839       <field name="pad3">
5840         <type name="Function" c:type="AtkFunction"/>
5841       </field>
5842     </record>
5843     <interface name="Table"
5844                c:symbol-prefix="table"
5845                c:type="AtkTable"
5846                glib:type-name="AtkTable"
5847                glib:get-type="atk_table_get_type"
5848                glib:type-struct="TableIface">
5849       <virtual-method name="add_column_selection"
5850                       invoker="add_column_selection">
5851         <doc xml:whitespace="preserve">Adds the specified @column to the selection. 
5852 the selection, or 0 if value does not implement this interface.</doc>
5853         <return-value transfer-ownership="none">
5854           <doc xml:whitespace="preserve">a gboolean representing if the column was successfully added to</doc>
5855           <type name="gboolean" c:type="gboolean"/>
5856         </return-value>
5857         <parameters>
5858           <parameter name="column" transfer-ownership="none">
5859             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
5860             <type name="gint" c:type="gint"/>
5861           </parameter>
5862         </parameters>
5863       </virtual-method>
5864       <virtual-method name="add_row_selection" invoker="add_row_selection">
5865         <doc xml:whitespace="preserve">Adds the specified @row to the selection. 
5866 or 0 if value does not implement this interface.</doc>
5867         <return-value transfer-ownership="none">
5868           <doc xml:whitespace="preserve">a gboolean representing if row was successfully added to selection,</doc>
5869           <type name="gboolean" c:type="gboolean"/>
5870         </return-value>
5871         <parameters>
5872           <parameter name="row" transfer-ownership="none">
5873             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
5874             <type name="gint" c:type="gint"/>
5875           </parameter>
5876         </parameters>
5877       </virtual-method>
5878       <virtual-method name="get_caption"
5879                       invoker="get_caption"
5880                       introspectable="0">
5881         <doc xml:whitespace="preserve">Gets the caption for the @table.
5882 if value does not implement this interface.</doc>
5883         <return-value>
5884           <doc xml:whitespace="preserve">a AtkObject* representing the table caption, or %NULL</doc>
5885           <type name="Object" c:type="AtkObject*"/>
5886         </return-value>
5887       </virtual-method>
5888       <virtual-method name="get_column_at_index" invoker="get_column_at_index">
5889         <doc xml:whitespace="preserve">Gets a #gint representing the column at the specified @index_. 
5890 or -1 if the table does not implement this interface</doc>
5891         <return-value transfer-ownership="none">
5892           <doc xml:whitespace="preserve">a gint representing the column at the specified index,</doc>
5893           <type name="gint" c:type="gint"/>
5894         </return-value>
5895         <parameters>
5896           <parameter name="index_" transfer-ownership="none">
5897             <doc xml:whitespace="preserve">a #gint representing an index in @table</doc>
5898             <type name="gint" c:type="gint"/>
5899           </parameter>
5900         </parameters>
5901       </virtual-method>
5902       <virtual-method name="get_column_description"
5903                       invoker="get_column_description">
5904         <doc xml:whitespace="preserve">Gets the description text of the specified @column in the table
5905 if value does not implement this interface.</doc>
5906         <return-value transfer-ownership="none">
5907           <doc xml:whitespace="preserve">a gchar* representing the column description, or %NULL</doc>
5908           <type name="utf8" c:type="gchar*"/>
5909         </return-value>
5910         <parameters>
5911           <parameter name="column" transfer-ownership="none">
5912             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
5913             <type name="gint" c:type="gint"/>
5914           </parameter>
5915         </parameters>
5916       </virtual-method>
5917       <virtual-method name="get_column_extent_at"
5918                       invoker="get_column_extent_at">
5919         <doc xml:whitespace="preserve">Gets the number of columns occupied by the accessible object
5920 at the specified @row and @column in the @table.
5921 if value does not implement this interface.</doc>
5922         <return-value transfer-ownership="none">
5923           <doc xml:whitespace="preserve">a gint representing the column extent at specified position, or 0</doc>
5924           <type name="gint" c:type="gint"/>
5925         </return-value>
5926         <parameters>
5927           <parameter name="row" transfer-ownership="none">
5928             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
5929             <type name="gint" c:type="gint"/>
5930           </parameter>
5931           <parameter name="column" transfer-ownership="none">
5932             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
5933             <type name="gint" c:type="gint"/>
5934           </parameter>
5935         </parameters>
5936       </virtual-method>
5937       <virtual-method name="get_column_header"
5938                       invoker="get_column_header"
5939                       introspectable="0">
5940         <doc xml:whitespace="preserve">Gets the column header of a specified column in an accessible table.
5941 %NULL if value does not implement this interface.</doc>
5942         <return-value>
5943           <doc xml:whitespace="preserve">a AtkObject* representing the specified column header, or</doc>
5944           <type name="Object" c:type="AtkObject*"/>
5945         </return-value>
5946         <parameters>
5947           <parameter name="column" transfer-ownership="none">
5948             <doc xml:whitespace="preserve">a #gint representing a column in the table</doc>
5949             <type name="gint" c:type="gint"/>
5950           </parameter>
5951         </parameters>
5952       </virtual-method>
5953       <virtual-method name="get_index_at" invoker="get_index_at">
5954         <doc xml:whitespace="preserve">Gets a #gint representing the index at the specified @row and @column.
5955 The value -1 is returned if the object at row,column is not a child
5956 of table or table does not implement this interface.</doc>
5957         <return-value transfer-ownership="none">
5958           <doc xml:whitespace="preserve">a #gint representing the index at specified position.</doc>
5959           <type name="gint" c:type="gint"/>
5960         </return-value>
5961         <parameters>
5962           <parameter name="row" transfer-ownership="none">
5963             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
5964             <type name="gint" c:type="gint"/>
5965           </parameter>
5966           <parameter name="column" transfer-ownership="none">
5967             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
5968             <type name="gint" c:type="gint"/>
5969           </parameter>
5970         </parameters>
5971       </virtual-method>
5972       <virtual-method name="get_n_columns" invoker="get_n_columns">
5973         <doc xml:whitespace="preserve">Gets the number of columns in the table.
5974 if value does not implement this interface.</doc>
5975         <return-value transfer-ownership="none">
5976           <doc xml:whitespace="preserve">a gint representing the number of columns, or 0</doc>
5977           <type name="gint" c:type="gint"/>
5978         </return-value>
5979       </virtual-method>
5980       <virtual-method name="get_n_rows" invoker="get_n_rows">
5981         <doc xml:whitespace="preserve">Gets the number of rows in the table.
5982 if value does not implement this interface.</doc>
5983         <return-value transfer-ownership="none">
5984           <doc xml:whitespace="preserve">a gint representing the number of rows, or 0</doc>
5985           <type name="gint" c:type="gint"/>
5986         </return-value>
5987       </virtual-method>
5988       <virtual-method name="get_row_at_index" invoker="get_row_at_index">
5989         <doc xml:whitespace="preserve">Gets a #gint representing the row at the specified @index_.
5990 or -1 if the table does not implement this interface</doc>
5991         <return-value transfer-ownership="none">
5992           <doc xml:whitespace="preserve">a gint representing the row at the specified index,</doc>
5993           <type name="gint" c:type="gint"/>
5994         </return-value>
5995         <parameters>
5996           <parameter name="index_" transfer-ownership="none">
5997             <doc xml:whitespace="preserve">a #gint representing an index in @table</doc>
5998             <type name="gint" c:type="gint"/>
5999           </parameter>
6000         </parameters>
6001       </virtual-method>
6002       <virtual-method name="get_row_description" invoker="get_row_description">
6003         <doc xml:whitespace="preserve">Gets the description text of the specified row in the table
6004 if value does not implement this interface.</doc>
6005         <return-value transfer-ownership="none">
6006           <doc xml:whitespace="preserve">a gchar* representing the row description, or %NULL</doc>
6007           <type name="utf8" c:type="gchar*"/>
6008         </return-value>
6009         <parameters>
6010           <parameter name="row" transfer-ownership="none">
6011             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6012             <type name="gint" c:type="gint"/>
6013           </parameter>
6014         </parameters>
6015       </virtual-method>
6016       <virtual-method name="get_row_extent_at" invoker="get_row_extent_at">
6017         <doc xml:whitespace="preserve">Gets the number of rows occupied by the accessible object
6018 at a specified @row and @column in the @table.
6019 if value does not implement this interface.</doc>
6020         <return-value transfer-ownership="none">
6021           <doc xml:whitespace="preserve">a gint representing the row extent at specified position, or 0</doc>
6022           <type name="gint" c:type="gint"/>
6023         </return-value>
6024         <parameters>
6025           <parameter name="row" transfer-ownership="none">
6026             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6027             <type name="gint" c:type="gint"/>
6028           </parameter>
6029           <parameter name="column" transfer-ownership="none">
6030             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6031             <type name="gint" c:type="gint"/>
6032           </parameter>
6033         </parameters>
6034       </virtual-method>
6035       <virtual-method name="get_row_header"
6036                       invoker="get_row_header"
6037                       introspectable="0">
6038         <doc xml:whitespace="preserve">Gets the row header of a specified row in an accessible table.
6039 %NULL if value does not implement this interface.</doc>
6040         <return-value>
6041           <doc xml:whitespace="preserve">a AtkObject* representing the specified row header, or</doc>
6042           <type name="Object" c:type="AtkObject*"/>
6043         </return-value>
6044         <parameters>
6045           <parameter name="row" transfer-ownership="none">
6046             <doc xml:whitespace="preserve">a #gint representing a row in the table</doc>
6047             <type name="gint" c:type="gint"/>
6048           </parameter>
6049         </parameters>
6050       </virtual-method>
6051       <virtual-method name="get_selected_columns"
6052                       invoker="get_selected_columns">
6053         <doc xml:whitespace="preserve">Gets the selected columns of the table by initializing **selected with 
6054 the selected column numbers. This array should be freed by the caller.
6055 or %0 if value does not implement this interface.</doc>
6056         <return-value transfer-ownership="none">
6057           <doc xml:whitespace="preserve">a gint representing the number of selected columns,</doc>
6058           <type name="gint" c:type="gint"/>
6059         </return-value>
6060         <parameters>
6061           <parameter name="selected" transfer-ownership="none">
6062             <doc xml:whitespace="preserve">a #gint** that is to contain the selected columns numbers</doc>
6063             <type name="gint" c:type="gint**"/>
6064           </parameter>
6065         </parameters>
6066       </virtual-method>
6067       <virtual-method name="get_selected_rows" invoker="get_selected_rows">
6068         <doc xml:whitespace="preserve">Gets the selected rows of the table by initializing **selected with 
6069 the selected row numbers. This array should be freed by the caller.
6070 or zero if value does not implement this interface.</doc>
6071         <return-value transfer-ownership="none">
6072           <doc xml:whitespace="preserve">a gint representing the number of selected rows,</doc>
6073           <type name="gint" c:type="gint"/>
6074         </return-value>
6075         <parameters>
6076           <parameter name="selected" transfer-ownership="none">
6077             <doc xml:whitespace="preserve">a #gint** that is to contain the selected row numbers</doc>
6078             <type name="gint" c:type="gint**"/>
6079           </parameter>
6080         </parameters>
6081       </virtual-method>
6082       <virtual-method name="get_summary"
6083                       invoker="get_summary"
6084                       introspectable="0">
6085         <doc xml:whitespace="preserve">Gets the summary description of the table.
6086 or zero if value does not implement this interface.</doc>
6087         <return-value>
6088           <doc xml:whitespace="preserve">a AtkObject* representing a summary description of the table,</doc>
6089           <type name="Object" c:type="AtkObject*"/>
6090         </return-value>
6091       </virtual-method>
6092       <virtual-method name="is_column_selected" invoker="is_column_selected">
6093         <doc xml:whitespace="preserve">Gets a boolean value indicating whether the specified @column
6094 is selected
6095 if value does not implement this interface.</doc>
6096         <return-value transfer-ownership="none">
6097           <doc xml:whitespace="preserve">a gboolean representing if the column is selected, or 0</doc>
6098           <type name="gboolean" c:type="gboolean"/>
6099         </return-value>
6100         <parameters>
6101           <parameter name="column" transfer-ownership="none">
6102             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6103             <type name="gint" c:type="gint"/>
6104           </parameter>
6105         </parameters>
6106       </virtual-method>
6107       <virtual-method name="is_row_selected" invoker="is_row_selected">
6108         <doc xml:whitespace="preserve">Gets a boolean value indicating whether the specified @row
6109 is selected
6110 if value does not implement this interface.</doc>
6111         <return-value transfer-ownership="none">
6112           <doc xml:whitespace="preserve">a gboolean representing if the row is selected, or 0</doc>
6113           <type name="gboolean" c:type="gboolean"/>
6114         </return-value>
6115         <parameters>
6116           <parameter name="row" transfer-ownership="none">
6117             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6118             <type name="gint" c:type="gint"/>
6119           </parameter>
6120         </parameters>
6121       </virtual-method>
6122       <virtual-method name="is_selected" invoker="is_selected">
6123         <doc xml:whitespace="preserve">Gets a boolean value indicating whether the accessible object
6124 at the specified @row and @column is selected
6125 if value does not implement this interface.</doc>
6126         <return-value transfer-ownership="none">
6127           <doc xml:whitespace="preserve">a gboolean representing if the cell is selected, or 0</doc>
6128           <type name="gboolean" c:type="gboolean"/>
6129         </return-value>
6130         <parameters>
6131           <parameter name="row" transfer-ownership="none">
6132             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6133             <type name="gint" c:type="gint"/>
6134           </parameter>
6135           <parameter name="column" transfer-ownership="none">
6136             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6137             <type name="gint" c:type="gint"/>
6138           </parameter>
6139         </parameters>
6140       </virtual-method>
6141       <virtual-method name="ref_at" invoker="ref_at" introspectable="0">
6142         <doc xml:whitespace="preserve">Get a reference to the table cell at @row, @column.</doc>
6143         <return-value>
6144           <doc xml:whitespace="preserve">a AtkObject* representing the referred to accessible</doc>
6145           <type name="Object" c:type="AtkObject*"/>
6146         </return-value>
6147         <parameters>
6148           <parameter name="row" transfer-ownership="none">
6149             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6150             <type name="gint" c:type="gint"/>
6151           </parameter>
6152           <parameter name="column" transfer-ownership="none">
6153             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6154             <type name="gint" c:type="gint"/>
6155           </parameter>
6156         </parameters>
6157       </virtual-method>
6158       <virtual-method name="remove_column_selection"
6159                       invoker="remove_column_selection">
6160         <doc xml:whitespace="preserve">Adds the specified @column to the selection. 
6161 the selection, or 0 if value does not implement this interface.</doc>
6162         <return-value transfer-ownership="none">
6163           <doc xml:whitespace="preserve">a gboolean representing if the column was successfully removed from</doc>
6164           <type name="gboolean" c:type="gboolean"/>
6165         </return-value>
6166         <parameters>
6167           <parameter name="column" transfer-ownership="none">
6168             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6169             <type name="gint" c:type="gint"/>
6170           </parameter>
6171         </parameters>
6172       </virtual-method>
6173       <virtual-method name="remove_row_selection"
6174                       invoker="remove_row_selection">
6175         <doc xml:whitespace="preserve">Removes the specified @row from the selection. 
6176 the selection, or 0 if value does not implement this interface.</doc>
6177         <return-value transfer-ownership="none">
6178           <doc xml:whitespace="preserve">a gboolean representing if the row was successfully removed from</doc>
6179           <type name="gboolean" c:type="gboolean"/>
6180         </return-value>
6181         <parameters>
6182           <parameter name="row" transfer-ownership="none">
6183             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6184             <type name="gint" c:type="gint"/>
6185           </parameter>
6186         </parameters>
6187       </virtual-method>
6188       <virtual-method name="set_caption" invoker="set_caption">
6189         <doc xml:whitespace="preserve">Sets the caption for the table.</doc>
6190         <return-value transfer-ownership="none">
6191           <type name="none" c:type="void"/>
6192         </return-value>
6193         <parameters>
6194           <parameter name="caption" transfer-ownership="none">
6195             <doc xml:whitespace="preserve">a #AtkObject representing the caption to set for @table</doc>
6196             <type name="Object" c:type="AtkObject*"/>
6197           </parameter>
6198         </parameters>
6199       </virtual-method>
6200       <virtual-method name="set_column_description"
6201                       invoker="set_column_description">
6202         <doc xml:whitespace="preserve">Sets the description text for the specified @column of the @table.</doc>
6203         <return-value transfer-ownership="none">
6204           <type name="none" c:type="void"/>
6205         </return-value>
6206         <parameters>
6207           <parameter name="column" transfer-ownership="none">
6208             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6209             <type name="gint" c:type="gint"/>
6210           </parameter>
6211           <parameter name="description" transfer-ownership="none">
6212             <doc xml:whitespace="preserve">a #gchar representing the description text to set for the specified @column of the @table</doc>
6213             <type name="utf8" c:type="gchar*"/>
6214           </parameter>
6215         </parameters>
6216       </virtual-method>
6217       <virtual-method name="set_column_header" invoker="set_column_header">
6218         <doc xml:whitespace="preserve">Sets the specified column header to @header.</doc>
6219         <return-value transfer-ownership="none">
6220           <type name="none" c:type="void"/>
6221         </return-value>
6222         <parameters>
6223           <parameter name="column" transfer-ownership="none">
6224             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6225             <type name="gint" c:type="gint"/>
6226           </parameter>
6227           <parameter name="header" transfer-ownership="none">
6228             <doc xml:whitespace="preserve">an #AtkTable</doc>
6229             <type name="Object" c:type="AtkObject*"/>
6230           </parameter>
6231         </parameters>
6232       </virtual-method>
6233       <virtual-method name="set_row_description" invoker="set_row_description">
6234         <doc xml:whitespace="preserve">Sets the description text for the specified @row of @table.</doc>
6235         <return-value transfer-ownership="none">
6236           <type name="none" c:type="void"/>
6237         </return-value>
6238         <parameters>
6239           <parameter name="row" transfer-ownership="none">
6240             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6241             <type name="gint" c:type="gint"/>
6242           </parameter>
6243           <parameter name="description" transfer-ownership="none">
6244             <doc xml:whitespace="preserve">a #gchar representing the description text to set for the specified @row of @table</doc>
6245             <type name="utf8" c:type="gchar*"/>
6246           </parameter>
6247         </parameters>
6248       </virtual-method>
6249       <virtual-method name="set_row_header" invoker="set_row_header">
6250         <doc xml:whitespace="preserve">Sets the specified row header to @header.</doc>
6251         <return-value transfer-ownership="none">
6252           <type name="none" c:type="void"/>
6253         </return-value>
6254         <parameters>
6255           <parameter name="row" transfer-ownership="none">
6256             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6257             <type name="gint" c:type="gint"/>
6258           </parameter>
6259           <parameter name="header" transfer-ownership="none">
6260             <doc xml:whitespace="preserve">an #AtkTable</doc>
6261             <type name="Object" c:type="AtkObject*"/>
6262           </parameter>
6263         </parameters>
6264       </virtual-method>
6265       <virtual-method name="set_summary" invoker="set_summary">
6266         <doc xml:whitespace="preserve">Sets the summary description of the table.</doc>
6267         <return-value transfer-ownership="none">
6268           <type name="none" c:type="void"/>
6269         </return-value>
6270         <parameters>
6271           <parameter name="accessible" transfer-ownership="none">
6272             <doc xml:whitespace="preserve">an #AtkObject representing the summary description to set for @table</doc>
6273             <type name="Object" c:type="AtkObject*"/>
6274           </parameter>
6275         </parameters>
6276       </virtual-method>
6277       <method name="add_column_selection"
6278               c:identifier="atk_table_add_column_selection">
6279         <doc xml:whitespace="preserve">Adds the specified @column to the selection. 
6280 the selection, or 0 if value does not implement this interface.</doc>
6281         <return-value transfer-ownership="none">
6282           <doc xml:whitespace="preserve">a gboolean representing if the column was successfully added to</doc>
6283           <type name="gboolean" c:type="gboolean"/>
6284         </return-value>
6285         <parameters>
6286           <parameter name="column" transfer-ownership="none">
6287             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6288             <type name="gint" c:type="gint"/>
6289           </parameter>
6290         </parameters>
6291       </method>
6292       <method name="add_row_selection"
6293               c:identifier="atk_table_add_row_selection">
6294         <doc xml:whitespace="preserve">Adds the specified @row to the selection. 
6295 or 0 if value does not implement this interface.</doc>
6296         <return-value transfer-ownership="none">
6297           <doc xml:whitespace="preserve">a gboolean representing if row was successfully added to selection,</doc>
6298           <type name="gboolean" c:type="gboolean"/>
6299         </return-value>
6300         <parameters>
6301           <parameter name="row" transfer-ownership="none">
6302             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6303             <type name="gint" c:type="gint"/>
6304           </parameter>
6305         </parameters>
6306       </method>
6307       <method name="get_caption"
6308               c:identifier="atk_table_get_caption"
6309               introspectable="0">
6310         <doc xml:whitespace="preserve">Gets the caption for the @table.
6311 if value does not implement this interface.</doc>
6312         <return-value>
6313           <doc xml:whitespace="preserve">a AtkObject* representing the table caption, or %NULL</doc>
6314           <type name="Object" c:type="AtkObject*"/>
6315         </return-value>
6316       </method>
6317       <method name="get_column_at_index"
6318               c:identifier="atk_table_get_column_at_index">
6319         <doc xml:whitespace="preserve">Gets a #gint representing the column at the specified @index_. 
6320 or -1 if the table does not implement this interface</doc>
6321         <return-value transfer-ownership="none">
6322           <doc xml:whitespace="preserve">a gint representing the column at the specified index,</doc>
6323           <type name="gint" c:type="gint"/>
6324         </return-value>
6325         <parameters>
6326           <parameter name="index_" transfer-ownership="none">
6327             <doc xml:whitespace="preserve">a #gint representing an index in @table</doc>
6328             <type name="gint" c:type="gint"/>
6329           </parameter>
6330         </parameters>
6331       </method>
6332       <method name="get_column_description"
6333               c:identifier="atk_table_get_column_description">
6334         <doc xml:whitespace="preserve">Gets the description text of the specified @column in the table
6335 if value does not implement this interface.</doc>
6336         <return-value transfer-ownership="none">
6337           <doc xml:whitespace="preserve">a gchar* representing the column description, or %NULL</doc>
6338           <type name="utf8" c:type="gchar*"/>
6339         </return-value>
6340         <parameters>
6341           <parameter name="column" transfer-ownership="none">
6342             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6343             <type name="gint" c:type="gint"/>
6344           </parameter>
6345         </parameters>
6346       </method>
6347       <method name="get_column_extent_at"
6348               c:identifier="atk_table_get_column_extent_at">
6349         <doc xml:whitespace="preserve">Gets the number of columns occupied by the accessible object
6350 at the specified @row and @column in the @table.
6351 if value does not implement this interface.</doc>
6352         <return-value transfer-ownership="none">
6353           <doc xml:whitespace="preserve">a gint representing the column extent at specified position, or 0</doc>
6354           <type name="gint" c:type="gint"/>
6355         </return-value>
6356         <parameters>
6357           <parameter name="row" transfer-ownership="none">
6358             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6359             <type name="gint" c:type="gint"/>
6360           </parameter>
6361           <parameter name="column" transfer-ownership="none">
6362             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6363             <type name="gint" c:type="gint"/>
6364           </parameter>
6365         </parameters>
6366       </method>
6367       <method name="get_column_header"
6368               c:identifier="atk_table_get_column_header"
6369               introspectable="0">
6370         <doc xml:whitespace="preserve">Gets the column header of a specified column in an accessible table.
6371 %NULL if value does not implement this interface.</doc>
6372         <return-value>
6373           <doc xml:whitespace="preserve">a AtkObject* representing the specified column header, or</doc>
6374           <type name="Object" c:type="AtkObject*"/>
6375         </return-value>
6376         <parameters>
6377           <parameter name="column" transfer-ownership="none">
6378             <doc xml:whitespace="preserve">a #gint representing a column in the table</doc>
6379             <type name="gint" c:type="gint"/>
6380           </parameter>
6381         </parameters>
6382       </method>
6383       <method name="get_index_at" c:identifier="atk_table_get_index_at">
6384         <doc xml:whitespace="preserve">Gets a #gint representing the index at the specified @row and @column.
6385 The value -1 is returned if the object at row,column is not a child
6386 of table or table does not implement this interface.</doc>
6387         <return-value transfer-ownership="none">
6388           <doc xml:whitespace="preserve">a #gint representing the index at specified position.</doc>
6389           <type name="gint" c:type="gint"/>
6390         </return-value>
6391         <parameters>
6392           <parameter name="row" transfer-ownership="none">
6393             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6394             <type name="gint" c:type="gint"/>
6395           </parameter>
6396           <parameter name="column" transfer-ownership="none">
6397             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6398             <type name="gint" c:type="gint"/>
6399           </parameter>
6400         </parameters>
6401       </method>
6402       <method name="get_n_columns" c:identifier="atk_table_get_n_columns">
6403         <doc xml:whitespace="preserve">Gets the number of columns in the table.
6404 if value does not implement this interface.</doc>
6405         <return-value transfer-ownership="none">
6406           <doc xml:whitespace="preserve">a gint representing the number of columns, or 0</doc>
6407           <type name="gint" c:type="gint"/>
6408         </return-value>
6409       </method>
6410       <method name="get_n_rows" c:identifier="atk_table_get_n_rows">
6411         <doc xml:whitespace="preserve">Gets the number of rows in the table.
6412 if value does not implement this interface.</doc>
6413         <return-value transfer-ownership="none">
6414           <doc xml:whitespace="preserve">a gint representing the number of rows, or 0</doc>
6415           <type name="gint" c:type="gint"/>
6416         </return-value>
6417       </method>
6418       <method name="get_row_at_index"
6419               c:identifier="atk_table_get_row_at_index">
6420         <doc xml:whitespace="preserve">Gets a #gint representing the row at the specified @index_.
6421 or -1 if the table does not implement this interface</doc>
6422         <return-value transfer-ownership="none">
6423           <doc xml:whitespace="preserve">a gint representing the row at the specified index,</doc>
6424           <type name="gint" c:type="gint"/>
6425         </return-value>
6426         <parameters>
6427           <parameter name="index_" transfer-ownership="none">
6428             <doc xml:whitespace="preserve">a #gint representing an index in @table</doc>
6429             <type name="gint" c:type="gint"/>
6430           </parameter>
6431         </parameters>
6432       </method>
6433       <method name="get_row_description"
6434               c:identifier="atk_table_get_row_description">
6435         <doc xml:whitespace="preserve">Gets the description text of the specified row in the table
6436 if value does not implement this interface.</doc>
6437         <return-value transfer-ownership="none">
6438           <doc xml:whitespace="preserve">a gchar* representing the row description, or %NULL</doc>
6439           <type name="utf8" c:type="gchar*"/>
6440         </return-value>
6441         <parameters>
6442           <parameter name="row" transfer-ownership="none">
6443             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6444             <type name="gint" c:type="gint"/>
6445           </parameter>
6446         </parameters>
6447       </method>
6448       <method name="get_row_extent_at"
6449               c:identifier="atk_table_get_row_extent_at">
6450         <doc xml:whitespace="preserve">Gets the number of rows occupied by the accessible object
6451 at a specified @row and @column in the @table.
6452 if value does not implement this interface.</doc>
6453         <return-value transfer-ownership="none">
6454           <doc xml:whitespace="preserve">a gint representing the row extent at specified position, or 0</doc>
6455           <type name="gint" c:type="gint"/>
6456         </return-value>
6457         <parameters>
6458           <parameter name="row" transfer-ownership="none">
6459             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6460             <type name="gint" c:type="gint"/>
6461           </parameter>
6462           <parameter name="column" transfer-ownership="none">
6463             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6464             <type name="gint" c:type="gint"/>
6465           </parameter>
6466         </parameters>
6467       </method>
6468       <method name="get_row_header"
6469               c:identifier="atk_table_get_row_header"
6470               introspectable="0">
6471         <doc xml:whitespace="preserve">Gets the row header of a specified row in an accessible table.
6472 %NULL if value does not implement this interface.</doc>
6473         <return-value>
6474           <doc xml:whitespace="preserve">a AtkObject* representing the specified row header, or</doc>
6475           <type name="Object" c:type="AtkObject*"/>
6476         </return-value>
6477         <parameters>
6478           <parameter name="row" transfer-ownership="none">
6479             <doc xml:whitespace="preserve">a #gint representing a row in the table</doc>
6480             <type name="gint" c:type="gint"/>
6481           </parameter>
6482         </parameters>
6483       </method>
6484       <method name="get_selected_columns"
6485               c:identifier="atk_table_get_selected_columns">
6486         <doc xml:whitespace="preserve">Gets the selected columns of the table by initializing **selected with 
6487 the selected column numbers. This array should be freed by the caller.
6488 or %0 if value does not implement this interface.</doc>
6489         <return-value transfer-ownership="none">
6490           <doc xml:whitespace="preserve">a gint representing the number of selected columns,</doc>
6491           <type name="gint" c:type="gint"/>
6492         </return-value>
6493         <parameters>
6494           <parameter name="selected" transfer-ownership="none">
6495             <doc xml:whitespace="preserve">a #gint** that is to contain the selected columns numbers</doc>
6496             <type name="gint" c:type="gint**"/>
6497           </parameter>
6498         </parameters>
6499       </method>
6500       <method name="get_selected_rows"
6501               c:identifier="atk_table_get_selected_rows">
6502         <doc xml:whitespace="preserve">Gets the selected rows of the table by initializing **selected with 
6503 the selected row numbers. This array should be freed by the caller.
6504 or zero if value does not implement this interface.</doc>
6505         <return-value transfer-ownership="none">
6506           <doc xml:whitespace="preserve">a gint representing the number of selected rows,</doc>
6507           <type name="gint" c:type="gint"/>
6508         </return-value>
6509         <parameters>
6510           <parameter name="selected" transfer-ownership="none">
6511             <doc xml:whitespace="preserve">a #gint** that is to contain the selected row numbers</doc>
6512             <type name="gint" c:type="gint**"/>
6513           </parameter>
6514         </parameters>
6515       </method>
6516       <method name="get_summary"
6517               c:identifier="atk_table_get_summary"
6518               introspectable="0">
6519         <doc xml:whitespace="preserve">Gets the summary description of the table.
6520 or zero if value does not implement this interface.</doc>
6521         <return-value>
6522           <doc xml:whitespace="preserve">a AtkObject* representing a summary description of the table,</doc>
6523           <type name="Object" c:type="AtkObject*"/>
6524         </return-value>
6525       </method>
6526       <method name="is_column_selected"
6527               c:identifier="atk_table_is_column_selected">
6528         <doc xml:whitespace="preserve">Gets a boolean value indicating whether the specified @column
6529 is selected
6530 if value does not implement this interface.</doc>
6531         <return-value transfer-ownership="none">
6532           <doc xml:whitespace="preserve">a gboolean representing if the column is selected, or 0</doc>
6533           <type name="gboolean" c:type="gboolean"/>
6534         </return-value>
6535         <parameters>
6536           <parameter name="column" transfer-ownership="none">
6537             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6538             <type name="gint" c:type="gint"/>
6539           </parameter>
6540         </parameters>
6541       </method>
6542       <method name="is_row_selected" c:identifier="atk_table_is_row_selected">
6543         <doc xml:whitespace="preserve">Gets a boolean value indicating whether the specified @row
6544 is selected
6545 if value does not implement this interface.</doc>
6546         <return-value transfer-ownership="none">
6547           <doc xml:whitespace="preserve">a gboolean representing if the row is selected, or 0</doc>
6548           <type name="gboolean" c:type="gboolean"/>
6549         </return-value>
6550         <parameters>
6551           <parameter name="row" transfer-ownership="none">
6552             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6553             <type name="gint" c:type="gint"/>
6554           </parameter>
6555         </parameters>
6556       </method>
6557       <method name="is_selected" c:identifier="atk_table_is_selected">
6558         <doc xml:whitespace="preserve">Gets a boolean value indicating whether the accessible object
6559 at the specified @row and @column is selected
6560 if value does not implement this interface.</doc>
6561         <return-value transfer-ownership="none">
6562           <doc xml:whitespace="preserve">a gboolean representing if the cell is selected, or 0</doc>
6563           <type name="gboolean" c:type="gboolean"/>
6564         </return-value>
6565         <parameters>
6566           <parameter name="row" transfer-ownership="none">
6567             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6568             <type name="gint" c:type="gint"/>
6569           </parameter>
6570           <parameter name="column" transfer-ownership="none">
6571             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6572             <type name="gint" c:type="gint"/>
6573           </parameter>
6574         </parameters>
6575       </method>
6576       <method name="ref_at" c:identifier="atk_table_ref_at" introspectable="0">
6577         <doc xml:whitespace="preserve">Get a reference to the table cell at @row, @column.</doc>
6578         <return-value>
6579           <doc xml:whitespace="preserve">a AtkObject* representing the referred to accessible</doc>
6580           <type name="Object" c:type="AtkObject*"/>
6581         </return-value>
6582         <parameters>
6583           <parameter name="row" transfer-ownership="none">
6584             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6585             <type name="gint" c:type="gint"/>
6586           </parameter>
6587           <parameter name="column" transfer-ownership="none">
6588             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6589             <type name="gint" c:type="gint"/>
6590           </parameter>
6591         </parameters>
6592       </method>
6593       <method name="remove_column_selection"
6594               c:identifier="atk_table_remove_column_selection">
6595         <doc xml:whitespace="preserve">Adds the specified @column to the selection. 
6596 the selection, or 0 if value does not implement this interface.</doc>
6597         <return-value transfer-ownership="none">
6598           <doc xml:whitespace="preserve">a gboolean representing if the column was successfully removed from</doc>
6599           <type name="gboolean" c:type="gboolean"/>
6600         </return-value>
6601         <parameters>
6602           <parameter name="column" transfer-ownership="none">
6603             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6604             <type name="gint" c:type="gint"/>
6605           </parameter>
6606         </parameters>
6607       </method>
6608       <method name="remove_row_selection"
6609               c:identifier="atk_table_remove_row_selection">
6610         <doc xml:whitespace="preserve">Removes the specified @row from the selection. 
6611 the selection, or 0 if value does not implement this interface.</doc>
6612         <return-value transfer-ownership="none">
6613           <doc xml:whitespace="preserve">a gboolean representing if the row was successfully removed from</doc>
6614           <type name="gboolean" c:type="gboolean"/>
6615         </return-value>
6616         <parameters>
6617           <parameter name="row" transfer-ownership="none">
6618             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6619             <type name="gint" c:type="gint"/>
6620           </parameter>
6621         </parameters>
6622       </method>
6623       <method name="set_caption" c:identifier="atk_table_set_caption">
6624         <doc xml:whitespace="preserve">Sets the caption for the table.</doc>
6625         <return-value transfer-ownership="none">
6626           <type name="none" c:type="void"/>
6627         </return-value>
6628         <parameters>
6629           <parameter name="caption" transfer-ownership="none">
6630             <doc xml:whitespace="preserve">a #AtkObject representing the caption to set for @table</doc>
6631             <type name="Object" c:type="AtkObject*"/>
6632           </parameter>
6633         </parameters>
6634       </method>
6635       <method name="set_column_description"
6636               c:identifier="atk_table_set_column_description">
6637         <doc xml:whitespace="preserve">Sets the description text for the specified @column of the @table.</doc>
6638         <return-value transfer-ownership="none">
6639           <type name="none" c:type="void"/>
6640         </return-value>
6641         <parameters>
6642           <parameter name="column" transfer-ownership="none">
6643             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6644             <type name="gint" c:type="gint"/>
6645           </parameter>
6646           <parameter name="description" transfer-ownership="none">
6647             <doc xml:whitespace="preserve">a #gchar representing the description text to set for the specified @column of the @table</doc>
6648             <type name="utf8" c:type="gchar*"/>
6649           </parameter>
6650         </parameters>
6651       </method>
6652       <method name="set_column_header"
6653               c:identifier="atk_table_set_column_header">
6654         <doc xml:whitespace="preserve">Sets the specified column header to @header.</doc>
6655         <return-value transfer-ownership="none">
6656           <type name="none" c:type="void"/>
6657         </return-value>
6658         <parameters>
6659           <parameter name="column" transfer-ownership="none">
6660             <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6661             <type name="gint" c:type="gint"/>
6662           </parameter>
6663           <parameter name="header" transfer-ownership="none">
6664             <doc xml:whitespace="preserve">an #AtkTable</doc>
6665             <type name="Object" c:type="AtkObject*"/>
6666           </parameter>
6667         </parameters>
6668       </method>
6669       <method name="set_row_description"
6670               c:identifier="atk_table_set_row_description">
6671         <doc xml:whitespace="preserve">Sets the description text for the specified @row of @table.</doc>
6672         <return-value transfer-ownership="none">
6673           <type name="none" c:type="void"/>
6674         </return-value>
6675         <parameters>
6676           <parameter name="row" transfer-ownership="none">
6677             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6678             <type name="gint" c:type="gint"/>
6679           </parameter>
6680           <parameter name="description" transfer-ownership="none">
6681             <doc xml:whitespace="preserve">a #gchar representing the description text to set for the specified @row of @table</doc>
6682             <type name="utf8" c:type="gchar*"/>
6683           </parameter>
6684         </parameters>
6685       </method>
6686       <method name="set_row_header" c:identifier="atk_table_set_row_header">
6687         <doc xml:whitespace="preserve">Sets the specified row header to @header.</doc>
6688         <return-value transfer-ownership="none">
6689           <type name="none" c:type="void"/>
6690         </return-value>
6691         <parameters>
6692           <parameter name="row" transfer-ownership="none">
6693             <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6694             <type name="gint" c:type="gint"/>
6695           </parameter>
6696           <parameter name="header" transfer-ownership="none">
6697             <doc xml:whitespace="preserve">an #AtkTable</doc>
6698             <type name="Object" c:type="AtkObject*"/>
6699           </parameter>
6700         </parameters>
6701       </method>
6702       <method name="set_summary" c:identifier="atk_table_set_summary">
6703         <doc xml:whitespace="preserve">Sets the summary description of the table.</doc>
6704         <return-value transfer-ownership="none">
6705           <type name="none" c:type="void"/>
6706         </return-value>
6707         <parameters>
6708           <parameter name="accessible" transfer-ownership="none">
6709             <doc xml:whitespace="preserve">an #AtkObject representing the summary description to set for @table</doc>
6710             <type name="Object" c:type="AtkObject*"/>
6711           </parameter>
6712         </parameters>
6713       </method>
6714       <glib:signal name="column-deleted">
6715         <return-value transfer-ownership="none">
6716           <type name="none"/>
6717         </return-value>
6718         <parameters>
6719           <parameter name="object" transfer-ownership="none">
6720             <type name="gint"/>
6721           </parameter>
6722           <parameter name="p0" transfer-ownership="none">
6723             <type name="gint"/>
6724           </parameter>
6725         </parameters>
6726       </glib:signal>
6727       <glib:signal name="column-inserted">
6728         <return-value transfer-ownership="none">
6729           <type name="none"/>
6730         </return-value>
6731         <parameters>
6732           <parameter name="object" transfer-ownership="none">
6733             <type name="gint"/>
6734           </parameter>
6735           <parameter name="p0" transfer-ownership="none">
6736             <type name="gint"/>
6737           </parameter>
6738         </parameters>
6739       </glib:signal>
6740       <glib:signal name="column-reordered">
6741         <return-value transfer-ownership="none">
6742           <type name="none"/>
6743         </return-value>
6744       </glib:signal>
6745       <glib:signal name="model-changed">
6746         <return-value transfer-ownership="none">
6747           <type name="none"/>
6748         </return-value>
6749       </glib:signal>
6750       <glib:signal name="row-deleted">
6751         <return-value transfer-ownership="none">
6752           <type name="none"/>
6753         </return-value>
6754         <parameters>
6755           <parameter name="object" transfer-ownership="none">
6756             <type name="gint"/>
6757           </parameter>
6758           <parameter name="p0" transfer-ownership="none">
6759             <type name="gint"/>
6760           </parameter>
6761         </parameters>
6762       </glib:signal>
6763       <glib:signal name="row-inserted">
6764         <return-value transfer-ownership="none">
6765           <type name="none"/>
6766         </return-value>
6767         <parameters>
6768           <parameter name="object" transfer-ownership="none">
6769             <type name="gint"/>
6770           </parameter>
6771           <parameter name="p0" transfer-ownership="none">
6772             <type name="gint"/>
6773           </parameter>
6774         </parameters>
6775       </glib:signal>
6776       <glib:signal name="row-reordered">
6777         <return-value transfer-ownership="none">
6778           <type name="none"/>
6779         </return-value>
6780       </glib:signal>
6781     </interface>
6782     <record name="TableIface"
6783             c:type="AtkTableIface"
6784             glib:is-gtype-struct-for="Table">
6785       <field name="parent">
6786         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
6787       </field>
6788       <field name="ref_at" introspectable="0">
6789         <callback name="ref_at" introspectable="0">
6790           <return-value>
6791             <doc xml:whitespace="preserve">a AtkObject* representing the referred to accessible</doc>
6792             <type name="Object" c:type="AtkObject*"/>
6793           </return-value>
6794           <parameters>
6795             <parameter name="table" transfer-ownership="none">
6796               <type name="Table" c:type="AtkTable*"/>
6797             </parameter>
6798             <parameter name="row" transfer-ownership="none">
6799               <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6800               <type name="gint" c:type="gint"/>
6801             </parameter>
6802             <parameter name="column" transfer-ownership="none">
6803               <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6804               <type name="gint" c:type="gint"/>
6805             </parameter>
6806           </parameters>
6807         </callback>
6808       </field>
6809       <field name="get_index_at">
6810         <callback name="get_index_at">
6811           <return-value transfer-ownership="none">
6812             <doc xml:whitespace="preserve">a #gint representing the index at specified position.</doc>
6813             <type name="gint" c:type="gint"/>
6814           </return-value>
6815           <parameters>
6816             <parameter name="table" transfer-ownership="none">
6817               <type name="Table" c:type="AtkTable*"/>
6818             </parameter>
6819             <parameter name="row" transfer-ownership="none">
6820               <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6821               <type name="gint" c:type="gint"/>
6822             </parameter>
6823             <parameter name="column" transfer-ownership="none">
6824               <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6825               <type name="gint" c:type="gint"/>
6826             </parameter>
6827           </parameters>
6828         </callback>
6829       </field>
6830       <field name="get_column_at_index">
6831         <callback name="get_column_at_index">
6832           <return-value transfer-ownership="none">
6833             <doc xml:whitespace="preserve">a gint representing the column at the specified index,</doc>
6834             <type name="gint" c:type="gint"/>
6835           </return-value>
6836           <parameters>
6837             <parameter name="table" transfer-ownership="none">
6838               <type name="Table" c:type="AtkTable*"/>
6839             </parameter>
6840             <parameter name="index_" transfer-ownership="none">
6841               <doc xml:whitespace="preserve">a #gint representing an index in @table</doc>
6842               <type name="gint" c:type="gint"/>
6843             </parameter>
6844           </parameters>
6845         </callback>
6846       </field>
6847       <field name="get_row_at_index">
6848         <callback name="get_row_at_index">
6849           <return-value transfer-ownership="none">
6850             <doc xml:whitespace="preserve">a gint representing the row at the specified index,</doc>
6851             <type name="gint" c:type="gint"/>
6852           </return-value>
6853           <parameters>
6854             <parameter name="table" transfer-ownership="none">
6855               <type name="Table" c:type="AtkTable*"/>
6856             </parameter>
6857             <parameter name="index_" transfer-ownership="none">
6858               <doc xml:whitespace="preserve">a #gint representing an index in @table</doc>
6859               <type name="gint" c:type="gint"/>
6860             </parameter>
6861           </parameters>
6862         </callback>
6863       </field>
6864       <field name="get_n_columns">
6865         <callback name="get_n_columns">
6866           <return-value transfer-ownership="none">
6867             <doc xml:whitespace="preserve">a gint representing the number of columns, or 0</doc>
6868             <type name="gint" c:type="gint"/>
6869           </return-value>
6870           <parameters>
6871             <parameter name="table" transfer-ownership="none">
6872               <type name="Table" c:type="AtkTable*"/>
6873             </parameter>
6874           </parameters>
6875         </callback>
6876       </field>
6877       <field name="get_n_rows">
6878         <callback name="get_n_rows">
6879           <return-value transfer-ownership="none">
6880             <doc xml:whitespace="preserve">a gint representing the number of rows, or 0</doc>
6881             <type name="gint" c:type="gint"/>
6882           </return-value>
6883           <parameters>
6884             <parameter name="table" transfer-ownership="none">
6885               <type name="Table" c:type="AtkTable*"/>
6886             </parameter>
6887           </parameters>
6888         </callback>
6889       </field>
6890       <field name="get_column_extent_at">
6891         <callback name="get_column_extent_at">
6892           <return-value transfer-ownership="none">
6893             <doc xml:whitespace="preserve">a gint representing the column extent at specified position, or 0</doc>
6894             <type name="gint" c:type="gint"/>
6895           </return-value>
6896           <parameters>
6897             <parameter name="table" transfer-ownership="none">
6898               <type name="Table" c:type="AtkTable*"/>
6899             </parameter>
6900             <parameter name="row" transfer-ownership="none">
6901               <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6902               <type name="gint" c:type="gint"/>
6903             </parameter>
6904             <parameter name="column" transfer-ownership="none">
6905               <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6906               <type name="gint" c:type="gint"/>
6907             </parameter>
6908           </parameters>
6909         </callback>
6910       </field>
6911       <field name="get_row_extent_at">
6912         <callback name="get_row_extent_at">
6913           <return-value transfer-ownership="none">
6914             <doc xml:whitespace="preserve">a gint representing the row extent at specified position, or 0</doc>
6915             <type name="gint" c:type="gint"/>
6916           </return-value>
6917           <parameters>
6918             <parameter name="table" transfer-ownership="none">
6919               <type name="Table" c:type="AtkTable*"/>
6920             </parameter>
6921             <parameter name="row" transfer-ownership="none">
6922               <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6923               <type name="gint" c:type="gint"/>
6924             </parameter>
6925             <parameter name="column" transfer-ownership="none">
6926               <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6927               <type name="gint" c:type="gint"/>
6928             </parameter>
6929           </parameters>
6930         </callback>
6931       </field>
6932       <field name="get_caption" introspectable="0">
6933         <callback name="get_caption" introspectable="0">
6934           <return-value>
6935             <doc xml:whitespace="preserve">a AtkObject* representing the table caption, or %NULL</doc>
6936             <type name="Object" c:type="AtkObject*"/>
6937           </return-value>
6938           <parameters>
6939             <parameter name="table" transfer-ownership="none">
6940               <type name="Table" c:type="AtkTable*"/>
6941             </parameter>
6942           </parameters>
6943         </callback>
6944       </field>
6945       <field name="get_column_description">
6946         <callback name="get_column_description">
6947           <return-value transfer-ownership="none">
6948             <doc xml:whitespace="preserve">a gchar* representing the column description, or %NULL</doc>
6949             <type name="utf8" c:type="gchar*"/>
6950           </return-value>
6951           <parameters>
6952             <parameter name="table" transfer-ownership="none">
6953               <type name="Table" c:type="AtkTable*"/>
6954             </parameter>
6955             <parameter name="column" transfer-ownership="none">
6956               <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
6957               <type name="gint" c:type="gint"/>
6958             </parameter>
6959           </parameters>
6960         </callback>
6961       </field>
6962       <field name="get_column_header" introspectable="0">
6963         <callback name="get_column_header" introspectable="0">
6964           <return-value>
6965             <doc xml:whitespace="preserve">a AtkObject* representing the specified column header, or</doc>
6966             <type name="Object" c:type="AtkObject*"/>
6967           </return-value>
6968           <parameters>
6969             <parameter name="table" transfer-ownership="none">
6970               <type name="Table" c:type="AtkTable*"/>
6971             </parameter>
6972             <parameter name="column" transfer-ownership="none">
6973               <doc xml:whitespace="preserve">a #gint representing a column in the table</doc>
6974               <type name="gint" c:type="gint"/>
6975             </parameter>
6976           </parameters>
6977         </callback>
6978       </field>
6979       <field name="get_row_description">
6980         <callback name="get_row_description">
6981           <return-value transfer-ownership="none">
6982             <doc xml:whitespace="preserve">a gchar* representing the row description, or %NULL</doc>
6983             <type name="utf8" c:type="gchar*"/>
6984           </return-value>
6985           <parameters>
6986             <parameter name="table" transfer-ownership="none">
6987               <type name="Table" c:type="AtkTable*"/>
6988             </parameter>
6989             <parameter name="row" transfer-ownership="none">
6990               <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
6991               <type name="gint" c:type="gint"/>
6992             </parameter>
6993           </parameters>
6994         </callback>
6995       </field>
6996       <field name="get_row_header" introspectable="0">
6997         <callback name="get_row_header" introspectable="0">
6998           <return-value>
6999             <doc xml:whitespace="preserve">a AtkObject* representing the specified row header, or</doc>
7000             <type name="Object" c:type="AtkObject*"/>
7001           </return-value>
7002           <parameters>
7003             <parameter name="table" transfer-ownership="none">
7004               <type name="Table" c:type="AtkTable*"/>
7005             </parameter>
7006             <parameter name="row" transfer-ownership="none">
7007               <doc xml:whitespace="preserve">a #gint representing a row in the table</doc>
7008               <type name="gint" c:type="gint"/>
7009             </parameter>
7010           </parameters>
7011         </callback>
7012       </field>
7013       <field name="get_summary" introspectable="0">
7014         <callback name="get_summary" introspectable="0">
7015           <return-value>
7016             <doc xml:whitespace="preserve">a AtkObject* representing a summary description of the table,</doc>
7017             <type name="Object" c:type="AtkObject*"/>
7018           </return-value>
7019           <parameters>
7020             <parameter name="table" transfer-ownership="none">
7021               <type name="Table" c:type="AtkTable*"/>
7022             </parameter>
7023           </parameters>
7024         </callback>
7025       </field>
7026       <field name="set_caption">
7027         <callback name="set_caption">
7028           <return-value transfer-ownership="none">
7029             <type name="none" c:type="void"/>
7030           </return-value>
7031           <parameters>
7032             <parameter name="table" transfer-ownership="none">
7033               <type name="Table" c:type="AtkTable*"/>
7034             </parameter>
7035             <parameter name="caption" transfer-ownership="none">
7036               <doc xml:whitespace="preserve">a #AtkObject representing the caption to set for @table</doc>
7037               <type name="Object" c:type="AtkObject*"/>
7038             </parameter>
7039           </parameters>
7040         </callback>
7041       </field>
7042       <field name="set_column_description">
7043         <callback name="set_column_description">
7044           <return-value transfer-ownership="none">
7045             <type name="none" c:type="void"/>
7046           </return-value>
7047           <parameters>
7048             <parameter name="table" transfer-ownership="none">
7049               <type name="Table" c:type="AtkTable*"/>
7050             </parameter>
7051             <parameter name="column" transfer-ownership="none">
7052               <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
7053               <type name="gint" c:type="gint"/>
7054             </parameter>
7055             <parameter name="description" transfer-ownership="none">
7056               <doc xml:whitespace="preserve">a #gchar representing the description text to set for the specified @column of the @table</doc>
7057               <type name="utf8" c:type="gchar*"/>
7058             </parameter>
7059           </parameters>
7060         </callback>
7061       </field>
7062       <field name="set_column_header">
7063         <callback name="set_column_header">
7064           <return-value transfer-ownership="none">
7065             <type name="none" c:type="void"/>
7066           </return-value>
7067           <parameters>
7068             <parameter name="table" transfer-ownership="none">
7069               <type name="Table" c:type="AtkTable*"/>
7070             </parameter>
7071             <parameter name="column" transfer-ownership="none">
7072               <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
7073               <type name="gint" c:type="gint"/>
7074             </parameter>
7075             <parameter name="header" transfer-ownership="none">
7076               <doc xml:whitespace="preserve">an #AtkTable</doc>
7077               <type name="Object" c:type="AtkObject*"/>
7078             </parameter>
7079           </parameters>
7080         </callback>
7081       </field>
7082       <field name="set_row_description">
7083         <callback name="set_row_description">
7084           <return-value transfer-ownership="none">
7085             <type name="none" c:type="void"/>
7086           </return-value>
7087           <parameters>
7088             <parameter name="table" transfer-ownership="none">
7089               <type name="Table" c:type="AtkTable*"/>
7090             </parameter>
7091             <parameter name="row" transfer-ownership="none">
7092               <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
7093               <type name="gint" c:type="gint"/>
7094             </parameter>
7095             <parameter name="description" transfer-ownership="none">
7096               <doc xml:whitespace="preserve">a #gchar representing the description text to set for the specified @row of @table</doc>
7097               <type name="utf8" c:type="gchar*"/>
7098             </parameter>
7099           </parameters>
7100         </callback>
7101       </field>
7102       <field name="set_row_header">
7103         <callback name="set_row_header">
7104           <return-value transfer-ownership="none">
7105             <type name="none" c:type="void"/>
7106           </return-value>
7107           <parameters>
7108             <parameter name="table" transfer-ownership="none">
7109               <type name="Table" c:type="AtkTable*"/>
7110             </parameter>
7111             <parameter name="row" transfer-ownership="none">
7112               <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
7113               <type name="gint" c:type="gint"/>
7114             </parameter>
7115             <parameter name="header" transfer-ownership="none">
7116               <doc xml:whitespace="preserve">an #AtkTable</doc>
7117               <type name="Object" c:type="AtkObject*"/>
7118             </parameter>
7119           </parameters>
7120         </callback>
7121       </field>
7122       <field name="set_summary">
7123         <callback name="set_summary">
7124           <return-value transfer-ownership="none">
7125             <type name="none" c:type="void"/>
7126           </return-value>
7127           <parameters>
7128             <parameter name="table" transfer-ownership="none">
7129               <type name="Table" c:type="AtkTable*"/>
7130             </parameter>
7131             <parameter name="accessible" transfer-ownership="none">
7132               <doc xml:whitespace="preserve">an #AtkObject representing the summary description to set for @table</doc>
7133               <type name="Object" c:type="AtkObject*"/>
7134             </parameter>
7135           </parameters>
7136         </callback>
7137       </field>
7138       <field name="get_selected_columns">
7139         <callback name="get_selected_columns">
7140           <return-value transfer-ownership="none">
7141             <doc xml:whitespace="preserve">a gint representing the number of selected columns,</doc>
7142             <type name="gint" c:type="gint"/>
7143           </return-value>
7144           <parameters>
7145             <parameter name="table" transfer-ownership="none">
7146               <type name="Table" c:type="AtkTable*"/>
7147             </parameter>
7148             <parameter name="selected" transfer-ownership="none">
7149               <doc xml:whitespace="preserve">a #gint** that is to contain the selected columns numbers</doc>
7150               <type name="gint" c:type="gint**"/>
7151             </parameter>
7152           </parameters>
7153         </callback>
7154       </field>
7155       <field name="get_selected_rows">
7156         <callback name="get_selected_rows">
7157           <return-value transfer-ownership="none">
7158             <doc xml:whitespace="preserve">a gint representing the number of selected rows,</doc>
7159             <type name="gint" c:type="gint"/>
7160           </return-value>
7161           <parameters>
7162             <parameter name="table" transfer-ownership="none">
7163               <type name="Table" c:type="AtkTable*"/>
7164             </parameter>
7165             <parameter name="selected" transfer-ownership="none">
7166               <doc xml:whitespace="preserve">a #gint** that is to contain the selected row numbers</doc>
7167               <type name="gint" c:type="gint**"/>
7168             </parameter>
7169           </parameters>
7170         </callback>
7171       </field>
7172       <field name="is_column_selected">
7173         <callback name="is_column_selected">
7174           <return-value transfer-ownership="none">
7175             <doc xml:whitespace="preserve">a gboolean representing if the column is selected, or 0</doc>
7176             <type name="gboolean" c:type="gboolean"/>
7177           </return-value>
7178           <parameters>
7179             <parameter name="table" transfer-ownership="none">
7180               <type name="Table" c:type="AtkTable*"/>
7181             </parameter>
7182             <parameter name="column" transfer-ownership="none">
7183               <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
7184               <type name="gint" c:type="gint"/>
7185             </parameter>
7186           </parameters>
7187         </callback>
7188       </field>
7189       <field name="is_row_selected">
7190         <callback name="is_row_selected">
7191           <return-value transfer-ownership="none">
7192             <doc xml:whitespace="preserve">a gboolean representing if the row is selected, or 0</doc>
7193             <type name="gboolean" c:type="gboolean"/>
7194           </return-value>
7195           <parameters>
7196             <parameter name="table" transfer-ownership="none">
7197               <type name="Table" c:type="AtkTable*"/>
7198             </parameter>
7199             <parameter name="row" transfer-ownership="none">
7200               <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
7201               <type name="gint" c:type="gint"/>
7202             </parameter>
7203           </parameters>
7204         </callback>
7205       </field>
7206       <field name="is_selected">
7207         <callback name="is_selected">
7208           <return-value transfer-ownership="none">
7209             <doc xml:whitespace="preserve">a gboolean representing if the cell is selected, or 0</doc>
7210             <type name="gboolean" c:type="gboolean"/>
7211           </return-value>
7212           <parameters>
7213             <parameter name="table" transfer-ownership="none">
7214               <type name="Table" c:type="AtkTable*"/>
7215             </parameter>
7216             <parameter name="row" transfer-ownership="none">
7217               <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
7218               <type name="gint" c:type="gint"/>
7219             </parameter>
7220             <parameter name="column" transfer-ownership="none">
7221               <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
7222               <type name="gint" c:type="gint"/>
7223             </parameter>
7224           </parameters>
7225         </callback>
7226       </field>
7227       <field name="add_row_selection">
7228         <callback name="add_row_selection">
7229           <return-value transfer-ownership="none">
7230             <doc xml:whitespace="preserve">a gboolean representing if row was successfully added to selection,</doc>
7231             <type name="gboolean" c:type="gboolean"/>
7232           </return-value>
7233           <parameters>
7234             <parameter name="table" transfer-ownership="none">
7235               <type name="Table" c:type="AtkTable*"/>
7236             </parameter>
7237             <parameter name="row" transfer-ownership="none">
7238               <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
7239               <type name="gint" c:type="gint"/>
7240             </parameter>
7241           </parameters>
7242         </callback>
7243       </field>
7244       <field name="remove_row_selection">
7245         <callback name="remove_row_selection">
7246           <return-value transfer-ownership="none">
7247             <doc xml:whitespace="preserve">a gboolean representing if the row was successfully removed from</doc>
7248             <type name="gboolean" c:type="gboolean"/>
7249           </return-value>
7250           <parameters>
7251             <parameter name="table" transfer-ownership="none">
7252               <type name="Table" c:type="AtkTable*"/>
7253             </parameter>
7254             <parameter name="row" transfer-ownership="none">
7255               <doc xml:whitespace="preserve">a #gint representing a row in @table</doc>
7256               <type name="gint" c:type="gint"/>
7257             </parameter>
7258           </parameters>
7259         </callback>
7260       </field>
7261       <field name="add_column_selection">
7262         <callback name="add_column_selection">
7263           <return-value transfer-ownership="none">
7264             <doc xml:whitespace="preserve">a gboolean representing if the column was successfully added to</doc>
7265             <type name="gboolean" c:type="gboolean"/>
7266           </return-value>
7267           <parameters>
7268             <parameter name="table" transfer-ownership="none">
7269               <type name="Table" c:type="AtkTable*"/>
7270             </parameter>
7271             <parameter name="column" transfer-ownership="none">
7272               <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
7273               <type name="gint" c:type="gint"/>
7274             </parameter>
7275           </parameters>
7276         </callback>
7277       </field>
7278       <field name="remove_column_selection">
7279         <callback name="remove_column_selection">
7280           <return-value transfer-ownership="none">
7281             <doc xml:whitespace="preserve">a gboolean representing if the column was successfully removed from</doc>
7282             <type name="gboolean" c:type="gboolean"/>
7283           </return-value>
7284           <parameters>
7285             <parameter name="table" transfer-ownership="none">
7286               <type name="Table" c:type="AtkTable*"/>
7287             </parameter>
7288             <parameter name="column" transfer-ownership="none">
7289               <doc xml:whitespace="preserve">a #gint representing a column in @table</doc>
7290               <type name="gint" c:type="gint"/>
7291             </parameter>
7292           </parameters>
7293         </callback>
7294       </field>
7295       <field name="row_inserted">
7296         <callback name="row_inserted">
7297           <return-value transfer-ownership="none">
7298             <type name="none" c:type="void"/>
7299           </return-value>
7300           <parameters>
7301             <parameter name="table" transfer-ownership="none">
7302               <type name="Table" c:type="AtkTable*"/>
7303             </parameter>
7304             <parameter name="row" transfer-ownership="none">
7305               <type name="gint" c:type="gint"/>
7306             </parameter>
7307             <parameter name="num_inserted" transfer-ownership="none">
7308               <type name="gint" c:type="gint"/>
7309             </parameter>
7310           </parameters>
7311         </callback>
7312       </field>
7313       <field name="column_inserted">
7314         <callback name="column_inserted">
7315           <return-value transfer-ownership="none">
7316             <type name="none" c:type="void"/>
7317           </return-value>
7318           <parameters>
7319             <parameter name="table" transfer-ownership="none">
7320               <type name="Table" c:type="AtkTable*"/>
7321             </parameter>
7322             <parameter name="column" transfer-ownership="none">
7323               <type name="gint" c:type="gint"/>
7324             </parameter>
7325             <parameter name="num_inserted" transfer-ownership="none">
7326               <type name="gint" c:type="gint"/>
7327             </parameter>
7328           </parameters>
7329         </callback>
7330       </field>
7331       <field name="row_deleted">
7332         <callback name="row_deleted">
7333           <return-value transfer-ownership="none">
7334             <type name="none" c:type="void"/>
7335           </return-value>
7336           <parameters>
7337             <parameter name="table" transfer-ownership="none">
7338               <type name="Table" c:type="AtkTable*"/>
7339             </parameter>
7340             <parameter name="row" transfer-ownership="none">
7341               <type name="gint" c:type="gint"/>
7342             </parameter>
7343             <parameter name="num_deleted" transfer-ownership="none">
7344               <type name="gint" c:type="gint"/>
7345             </parameter>
7346           </parameters>
7347         </callback>
7348       </field>
7349       <field name="column_deleted">
7350         <callback name="column_deleted">
7351           <return-value transfer-ownership="none">
7352             <type name="none" c:type="void"/>
7353           </return-value>
7354           <parameters>
7355             <parameter name="table" transfer-ownership="none">
7356               <type name="Table" c:type="AtkTable*"/>
7357             </parameter>
7358             <parameter name="column" transfer-ownership="none">
7359               <type name="gint" c:type="gint"/>
7360             </parameter>
7361             <parameter name="num_deleted" transfer-ownership="none">
7362               <type name="gint" c:type="gint"/>
7363             </parameter>
7364           </parameters>
7365         </callback>
7366       </field>
7367       <field name="row_reordered">
7368         <callback name="row_reordered">
7369           <return-value transfer-ownership="none">
7370             <type name="none" c:type="void"/>
7371           </return-value>
7372           <parameters>
7373             <parameter name="table" transfer-ownership="none">
7374               <type name="Table" c:type="AtkTable*"/>
7375             </parameter>
7376           </parameters>
7377         </callback>
7378       </field>
7379       <field name="column_reordered">
7380         <callback name="column_reordered">
7381           <return-value transfer-ownership="none">
7382             <type name="none" c:type="void"/>
7383           </return-value>
7384           <parameters>
7385             <parameter name="table" transfer-ownership="none">
7386               <type name="Table" c:type="AtkTable*"/>
7387             </parameter>
7388           </parameters>
7389         </callback>
7390       </field>
7391       <field name="model_changed">
7392         <callback name="model_changed">
7393           <return-value transfer-ownership="none">
7394             <type name="none" c:type="void"/>
7395           </return-value>
7396           <parameters>
7397             <parameter name="table" transfer-ownership="none">
7398               <type name="Table" c:type="AtkTable*"/>
7399             </parameter>
7400           </parameters>
7401         </callback>
7402       </field>
7403       <field name="pad1">
7404         <type name="Function" c:type="AtkFunction"/>
7405       </field>
7406       <field name="pad2">
7407         <type name="Function" c:type="AtkFunction"/>
7408       </field>
7409       <field name="pad3">
7410         <type name="Function" c:type="AtkFunction"/>
7411       </field>
7412       <field name="pad4">
7413         <type name="Function" c:type="AtkFunction"/>
7414       </field>
7415     </record>
7416     <interface name="Text"
7417                c:symbol-prefix="text"
7418                c:type="AtkText"
7419                glib:type-name="AtkText"
7420                glib:get-type="atk_text_get_type"
7421                glib:type-struct="TextIface">
7422       <virtual-method name="add_selection" invoker="add_selection">
7423         <doc xml:whitespace="preserve">Adds a selection bounded by the specified offsets.</doc>
7424         <return-value transfer-ownership="none">
7425           <doc xml:whitespace="preserve">%TRUE if success, %FALSE otherwise</doc>
7426           <type name="gboolean" c:type="gboolean"/>
7427         </return-value>
7428         <parameters>
7429           <parameter name="start_offset" transfer-ownership="none">
7430             <doc xml:whitespace="preserve">the start position of the selected region</doc>
7431             <type name="gint" c:type="gint"/>
7432           </parameter>
7433           <parameter name="end_offset" transfer-ownership="none">
7434             <doc xml:whitespace="preserve">the offset of the first character after the selected region.</doc>
7435             <type name="gint" c:type="gint"/>
7436           </parameter>
7437         </parameters>
7438       </virtual-method>
7439       <virtual-method name="get_bounded_ranges"
7440                       invoker="get_bounded_ranges"
7441                       version="1.3"
7442                       introspectable="0">
7443         <doc xml:whitespace="preserve">Get the ranges of text in the specified bounding box.
7444 by this function will be NULL.</doc>
7445         <return-value>
7446           <doc xml:whitespace="preserve">Array of AtkTextRange. The last element of the array returned</doc>
7447           <type name="TextRange" c:type="AtkTextRange**"/>
7448         </return-value>
7449         <parameters>
7450           <parameter name="rect" transfer-ownership="none">
7451             <doc xml:whitespace="preserve">An AtkTextRectagle giving the dimensions of the bounding box.</doc>
7452             <type name="TextRectangle" c:type="AtkTextRectangle*"/>
7453           </parameter>
7454           <parameter name="coord_type" transfer-ownership="none">
7455             <doc xml:whitespace="preserve">Specify whether coordinates are relative to the screen or widget window.</doc>
7456             <type name="CoordType" c:type="AtkCoordType"/>
7457           </parameter>
7458           <parameter name="x_clip_type" transfer-ownership="none">
7459             <doc xml:whitespace="preserve">Specify the horizontal clip type.</doc>
7460             <type name="TextClipType" c:type="AtkTextClipType"/>
7461           </parameter>
7462           <parameter name="y_clip_type" transfer-ownership="none">
7463             <doc xml:whitespace="preserve">Specify the vertical clip type.</doc>
7464             <type name="TextClipType" c:type="AtkTextClipType"/>
7465           </parameter>
7466         </parameters>
7467       </virtual-method>
7468       <virtual-method name="get_caret_offset" invoker="get_caret_offset">
7469         <doc xml:whitespace="preserve">Gets the offset position of the caret (cursor).</doc>
7470         <return-value transfer-ownership="none">
7471           <doc xml:whitespace="preserve">the offset position of the caret (cursor).</doc>
7472           <type name="gint" c:type="gint"/>
7473         </return-value>
7474       </virtual-method>
7475       <virtual-method name="get_character_at_offset"
7476                       invoker="get_character_at_offset"
7477                       introspectable="0">
7478         <doc xml:whitespace="preserve">Gets the specified text.</doc>
7479         <return-value transfer-ownership="none">
7480           <doc xml:whitespace="preserve">the character at @offset.</doc>
7481           <type name="gunichar" c:type="gunichar"/>
7482         </return-value>
7483         <parameters>
7484           <parameter name="offset" transfer-ownership="none">
7485             <doc xml:whitespace="preserve">position</doc>
7486             <type name="gint" c:type="gint"/>
7487           </parameter>
7488         </parameters>
7489       </virtual-method>
7490       <virtual-method name="get_character_count" invoker="get_character_count">
7491         <doc xml:whitespace="preserve">Gets the character count.</doc>
7492         <return-value transfer-ownership="none">
7493           <doc xml:whitespace="preserve">the number of characters.</doc>
7494           <type name="gint" c:type="gint"/>
7495         </return-value>
7496       </virtual-method>
7497       <virtual-method name="get_character_extents"
7498                       invoker="get_character_extents">
7499         <doc xml:whitespace="preserve">Get the bounding box containing the glyph representing the character at 
7500 a particular text offset.</doc>
7501         <return-value transfer-ownership="none">
7502           <type name="none" c:type="void"/>
7503         </return-value>
7504         <parameters>
7505           <parameter name="offset" transfer-ownership="none">
7506             <doc xml:whitespace="preserve">The offset of the text character for which bounding information is required.</doc>
7507             <type name="gint" c:type="gint"/>
7508           </parameter>
7509           <parameter name="x" transfer-ownership="none">
7510             <doc xml:whitespace="preserve">Pointer for the x cordinate of the bounding box</doc>
7511             <type name="gint" c:type="gint*"/>
7512           </parameter>
7513           <parameter name="y" transfer-ownership="none">
7514             <doc xml:whitespace="preserve">Pointer for the y cordinate of the bounding box</doc>
7515             <type name="gint" c:type="gint*"/>
7516           </parameter>
7517           <parameter name="width" transfer-ownership="none">
7518             <doc xml:whitespace="preserve">Pointer for the width of the bounding box</doc>
7519             <type name="gint" c:type="gint*"/>
7520           </parameter>
7521           <parameter name="height" transfer-ownership="none">
7522             <doc xml:whitespace="preserve">Pointer for the height of the bounding box</doc>
7523             <type name="gint" c:type="gint*"/>
7524           </parameter>
7525           <parameter name="coords" transfer-ownership="none">
7526             <doc xml:whitespace="preserve">specify whether coordinates are relative to the screen or widget window</doc>
7527             <type name="CoordType" c:type="AtkCoordType"/>
7528           </parameter>
7529         </parameters>
7530       </virtual-method>
7531       <virtual-method name="get_default_attributes"
7532                       invoker="get_default_attributes"
7533                       introspectable="0">
7534         <return-value>
7535           <type name="AttributeSet" c:type="AtkAttributeSet*"/>
7536         </return-value>
7537       </virtual-method>
7538       <virtual-method name="get_n_selections" invoker="get_n_selections">
7539         <doc xml:whitespace="preserve">Gets the number of selected regions.
7540 occurred.</doc>
7541         <return-value transfer-ownership="none">
7542           <doc xml:whitespace="preserve">The number of selected regions, or -1 if a failure</doc>
7543           <type name="gint" c:type="gint"/>
7544         </return-value>
7545       </virtual-method>
7546       <virtual-method name="get_offset_at_point" invoker="get_offset_at_point">
7547         <doc xml:whitespace="preserve">Gets the offset of the character located at coordinates @x and @y. @x and @y
7548 are interpreted as being relative to the screen or this widget's window
7549 depending on @coords.
7550 the specified @x and @y coordinates.</doc>
7551         <return-value transfer-ownership="none">
7552           <doc xml:whitespace="preserve">the offset to the character which is located at</doc>
7553           <type name="gint" c:type="gint"/>
7554         </return-value>
7555         <parameters>
7556           <parameter name="x" transfer-ownership="none">
7557             <doc xml:whitespace="preserve">screen x-position of character</doc>
7558             <type name="gint" c:type="gint"/>
7559           </parameter>
7560           <parameter name="y" transfer-ownership="none">
7561             <doc xml:whitespace="preserve">screen y-position of character</doc>
7562             <type name="gint" c:type="gint"/>
7563           </parameter>
7564           <parameter name="coords" transfer-ownership="none">
7565             <doc xml:whitespace="preserve">specify whether coordinates are relative to the screen or widget window</doc>
7566             <type name="CoordType" c:type="AtkCoordType"/>
7567           </parameter>
7568         </parameters>
7569       </virtual-method>
7570       <virtual-method name="get_range_extents"
7571                       invoker="get_range_extents"
7572                       version="1.3">
7573         <doc xml:whitespace="preserve">Get the bounding box for text within the specified range.</doc>
7574         <return-value transfer-ownership="none">
7575           <type name="none" c:type="void"/>
7576         </return-value>
7577         <parameters>
7578           <parameter name="start_offset" transfer-ownership="none">
7579             <doc xml:whitespace="preserve">The offset of the first text character for which boundary information is required.</doc>
7580             <type name="gint" c:type="gint"/>
7581           </parameter>
7582           <parameter name="end_offset" transfer-ownership="none">
7583             <doc xml:whitespace="preserve">The offset of the text character after the last character for which boundary information is required.</doc>
7584             <type name="gint" c:type="gint"/>
7585           </parameter>
7586           <parameter name="coord_type" transfer-ownership="none">
7587             <doc xml:whitespace="preserve">Specify whether coordinates are relative to the screen or widget window.</doc>
7588             <type name="CoordType" c:type="AtkCoordType"/>
7589           </parameter>
7590           <parameter name="rect" transfer-ownership="none">
7591             <doc xml:whitespace="preserve">A pointer to a AtkTextRectangle which is filled in by this function.</doc>
7592             <type name="TextRectangle" c:type="AtkTextRectangle*"/>
7593           </parameter>
7594         </parameters>
7595       </virtual-method>
7596       <virtual-method name="get_run_attributes"
7597                       invoker="get_run_attributes"
7598                       introspectable="0">
7599         <return-value>
7600           <type name="AttributeSet" c:type="AtkAttributeSet*"/>
7601         </return-value>
7602         <parameters>
7603           <parameter name="offset" transfer-ownership="none">
7604             <type name="gint" c:type="gint"/>
7605           </parameter>
7606           <parameter name="start_offset" transfer-ownership="none">
7607             <type name="gint" c:type="gint*"/>
7608           </parameter>
7609           <parameter name="end_offset" transfer-ownership="none">
7610             <type name="gint" c:type="gint*"/>
7611           </parameter>
7612         </parameters>
7613       </virtual-method>
7614       <virtual-method name="get_selection" invoker="get_selection">
7615         <doc xml:whitespace="preserve">Gets the text from the specified selection.</doc>
7616         <return-value transfer-ownership="full">
7617           <doc xml:whitespace="preserve">the selected text.</doc>
7618           <type name="utf8" c:type="gchar*"/>
7619         </return-value>
7620         <parameters>
7621           <parameter name="selection_num" transfer-ownership="none">
7622             <doc xml:whitespace="preserve">The selection number.  The selected regions are assigned numbers that correspond to how far the region is from the start of the text.  The selected region closest to the beginning of the text region is assigned the number 0, etc.  Note that adding, moving or deleting a selected region can change the numbering.</doc>
7623             <type name="gint" c:type="gint"/>
7624           </parameter>
7625           <parameter name="start_offset" transfer-ownership="none">
7626             <doc xml:whitespace="preserve">passes back the start position of the selected region</doc>
7627             <type name="gint" c:type="gint*"/>
7628           </parameter>
7629           <parameter name="end_offset" transfer-ownership="none">
7630             <doc xml:whitespace="preserve">passes back the end position of (e.g. offset immediately past) the selected region</doc>
7631             <type name="gint" c:type="gint*"/>
7632           </parameter>
7633         </parameters>
7634       </virtual-method>
7635       <virtual-method name="get_text" invoker="get_text">
7636         <doc xml:whitespace="preserve">Gets the specified text.</doc>
7637         <return-value transfer-ownership="full">
7638           <doc xml:whitespace="preserve">the text from @start_offset up to, but not including @end_offset.</doc>
7639           <type name="utf8" c:type="gchar*"/>
7640         </return-value>
7641         <parameters>
7642           <parameter name="start_offset" transfer-ownership="none">
7643             <doc xml:whitespace="preserve">start position</doc>
7644             <type name="gint" c:type="gint"/>
7645           </parameter>
7646           <parameter name="end_offset" transfer-ownership="none">
7647             <doc xml:whitespace="preserve">end position</doc>
7648             <type name="gint" c:type="gint"/>
7649           </parameter>
7650         </parameters>
7651       </virtual-method>
7652       <virtual-method name="get_text_after_offset"
7653                       invoker="get_text_after_offset">
7654         <doc xml:whitespace="preserve">Gets the specified text.
7655 If the boundary_type if ATK_TEXT_BOUNDARY_CHAR the character after the 
7656 offset is returned.
7657 If the boundary_type is ATK_TEXT_BOUNDARY_WORD_START the returned string
7658 is from the word start after the offset to the next word start.
7659 The returned string will contain the word after the offset if the offset 
7660 is inside a word or if the offset is not inside a word.
7661 If the boundary_type is ATK_TEXT_BOUNDARY_WORD_END the returned string
7662 is from the word end at or after the offset to the next work end.
7663 The returned string will contain the word after the offset if the offset
7664 is inside a word and will contain the word after the word after the offset
7665 if the offset is not inside a word.
7666 If the boundary type is ATK_TEXT_BOUNDARY_SENTENCE_START the returned
7667 string is from the sentence start after the offset to the next sentence
7668 start.
7669 The returned string will contain the sentence after the offset if the offset
7670 is inside a sentence or if the offset is not inside a sentence.
7671 If the boundary_type is ATK_TEXT_BOUNDARY_SENTENCE_END the returned string
7672 is from the sentence end at or after the offset to the next sentence end.
7673 The returned string will contain the sentence after the offset if the offset
7674 is inside a sentence and will contain the sentence after the sentence
7675 after the offset if the offset is not inside a sentence.
7676 If the boundary type is ATK_TEXT_BOUNDARY_LINE_START the returned
7677 string is from the line start after the offset to the next line start.
7678 If the boundary_type is ATK_TEXT_BOUNDARY_LINE_END the returned string
7679 is from the line end at or after the offset to the next line start.</doc>
7680         <return-value transfer-ownership="full">
7681           <doc xml:whitespace="preserve">the text after @offset bounded by the specified @boundary_type.</doc>
7682           <type name="utf8" c:type="gchar*"/>
7683         </return-value>
7684         <parameters>
7685           <parameter name="offset" transfer-ownership="none">
7686             <doc xml:whitespace="preserve">position</doc>
7687             <type name="gint" c:type="gint"/>
7688           </parameter>
7689           <parameter name="boundary_type" transfer-ownership="none">
7690             <doc xml:whitespace="preserve">An #AtkTextBoundary</doc>
7691             <type name="TextBoundary" c:type="AtkTextBoundary"/>
7692           </parameter>
7693           <parameter name="start_offset" transfer-ownership="none">
7694             <doc xml:whitespace="preserve">the start offset of the returned string</doc>
7695             <type name="gint" c:type="gint*"/>
7696           </parameter>
7697           <parameter name="end_offset" transfer-ownership="none">
7698             <doc xml:whitespace="preserve">the offset of the first character after the returned substring</doc>
7699             <type name="gint" c:type="gint*"/>
7700           </parameter>
7701         </parameters>
7702       </virtual-method>
7703       <virtual-method name="get_text_at_offset" invoker="get_text_at_offset">
7704         <doc xml:whitespace="preserve">Gets the specified text.
7705 If the boundary_type if ATK_TEXT_BOUNDARY_CHAR the character at the
7706 offset is returned.
7707 If the boundary_type is ATK_TEXT_BOUNDARY_WORD_START the returned string
7708 is from the word start at or before the offset to the word start after 
7709 the offset.
7710 The returned string will contain the word at the offset if the offset
7711 is inside a word and will contain the word before the offset if the 
7712 offset is not inside a word.
7713 If the boundary_type is ATK_TEXT_BOUNDARY_WORD_END the returned string
7714 is from the word end before the offset to the word end at or after the
7715 offset.
7716 The returned string will contain the word at the offset if the offset
7717 is inside a word and will contain the word after to the offset if the 
7718 offset is not inside a word.
7719 If the boundary type is ATK_TEXT_BOUNDARY_SENTENCE_START the returned
7720 string is from the sentence start at or before the offset to the sentence
7721 start after the offset.
7722 The returned string will contain the sentence at the offset if the offset
7723 is inside a sentence and will contain the sentence before the offset 
7724 if the offset is not inside a sentence.
7725 If the boundary_type is ATK_TEXT_BOUNDARY_SENTENCE_END the returned string
7726 is from the sentence end before the offset to the sentence end at or
7727 after the offset.
7728 The returned string will contain the sentence at the offset if the offset
7729 is inside a sentence and will contain the sentence after the offset 
7730 if the offset is not inside a sentence.
7731 If the boundary type is ATK_TEXT_BOUNDARY_LINE_START the returned
7732 string is from the line start at or before the offset to the line
7733 start after the offset.
7734 If the boundary_type is ATK_TEXT_BOUNDARY_LINE_END the returned string
7735 is from the line end before the offset to the line end at or after
7736 the offset.</doc>
7737         <return-value transfer-ownership="full">
7738           <doc xml:whitespace="preserve">the text at @offset bounded by the specified @boundary_type.</doc>
7739           <type name="utf8" c:type="gchar*"/>
7740         </return-value>
7741         <parameters>
7742           <parameter name="offset" transfer-ownership="none">
7743             <doc xml:whitespace="preserve">position</doc>
7744             <type name="gint" c:type="gint"/>
7745           </parameter>
7746           <parameter name="boundary_type" transfer-ownership="none">
7747             <doc xml:whitespace="preserve">An #AtkTextBoundary</doc>
7748             <type name="TextBoundary" c:type="AtkTextBoundary"/>
7749           </parameter>
7750           <parameter name="start_offset" transfer-ownership="none">
7751             <doc xml:whitespace="preserve">the start offset of the returned string</doc>
7752             <type name="gint" c:type="gint*"/>
7753           </parameter>
7754           <parameter name="end_offset" transfer-ownership="none">
7755             <doc xml:whitespace="preserve">the offset of the first character after the returned substring</doc>
7756             <type name="gint" c:type="gint*"/>
7757           </parameter>
7758         </parameters>
7759       </virtual-method>
7760       <virtual-method name="get_text_before_offset"
7761                       invoker="get_text_before_offset">
7762         <doc xml:whitespace="preserve">Gets the specified text.
7763 If the boundary_type if ATK_TEXT_BOUNDARY_CHAR the character before the
7764 offset is returned.
7765 If the boundary_type is ATK_TEXT_BOUNDARY_WORD_START the returned string
7766 is from the word start before the word start before the offset to 
7767 the word start before the offset.
7768 The returned string will contain the word before the offset if the offset
7769 is inside a word and will contain the word before the word before the 
7770 offset if the offset is not inside a word.
7771 If the boundary_type is ATK_TEXT_BOUNDARY_WORD_END the returned string
7772 is from the word end before the word end at or before the offset to the 
7773 word end at or before the offset.
7774 The returned string will contain the word before the offset if the offset
7775 is inside a word or if the offset is not inside a word.
7776 If the boundary type is ATK_TEXT_BOUNDARY_SENTENCE_START the returned
7777 string is from the sentence start before the sentence start before 
7778 the offset to the sentence start before the offset.
7779 The returned string will contain the sentence before the offset if the 
7780 offset is inside a sentence and will contain the sentence before the 
7781 sentence before the offset if the offset is not inside a sentence.
7782 If the boundary_type is ATK_TEXT_BOUNDARY_SENTENCE_END the returned string
7783 is from the sentence end before the sentence end at or before the offset to 
7784 the sentence end at or before the offset.
7785 The returned string will contain the sentence before the offset if the 
7786 offset is inside a sentence or if the offset is not inside a sentence.
7787 If the boundary type is ATK_TEXT_BOUNDARY_LINE_START the returned
7788 string is from the line start before the line start ar or before the offset 
7789 to the line start ar or before the offset.
7790 If the boundary_type is ATK_TEXT_BOUNDARY_LINE_END the returned string
7791 is from the line end before the line end before the offset to the 
7792 line end before the offset.</doc>
7793         <return-value transfer-ownership="full">
7794           <doc xml:whitespace="preserve">the text before @offset bounded by the specified @boundary_type.</doc>
7795           <type name="utf8" c:type="gchar*"/>
7796         </return-value>
7797         <parameters>
7798           <parameter name="offset" transfer-ownership="none">
7799             <doc xml:whitespace="preserve">position</doc>
7800             <type name="gint" c:type="gint"/>
7801           </parameter>
7802           <parameter name="boundary_type" transfer-ownership="none">
7803             <doc xml:whitespace="preserve">An #AtkTextBoundary</doc>
7804             <type name="TextBoundary" c:type="AtkTextBoundary"/>
7805           </parameter>
7806           <parameter name="start_offset" transfer-ownership="none">
7807             <doc xml:whitespace="preserve">the start offset of the returned string</doc>
7808             <type name="gint" c:type="gint*"/>
7809           </parameter>
7810           <parameter name="end_offset" transfer-ownership="none">
7811             <doc xml:whitespace="preserve">the offset of the first character after the returned substring</doc>
7812             <type name="gint" c:type="gint*"/>
7813           </parameter>
7814         </parameters>
7815       </virtual-method>
7816       <virtual-method name="remove_selection" invoker="remove_selection">
7817         <doc xml:whitespace="preserve">Removes the specified selection.</doc>
7818         <return-value transfer-ownership="none">
7819           <doc xml:whitespace="preserve">%TRUE if success, %FALSE otherwise</doc>
7820           <type name="gboolean" c:type="gboolean"/>
7821         </return-value>
7822         <parameters>
7823           <parameter name="selection_num" transfer-ownership="none">
7824             <doc xml:whitespace="preserve">The selection number.  The selected regions are assigned numbers that correspond to how far the region is from the start of the text.  The selected region closest to the beginning of the text region is assigned the number 0, etc.  Note that adding, moving or deleting a selected region can change the numbering.</doc>
7825             <type name="gint" c:type="gint"/>
7826           </parameter>
7827         </parameters>
7828       </virtual-method>
7829       <virtual-method name="set_caret_offset" invoker="set_caret_offset">
7830         <doc xml:whitespace="preserve">Sets the caret (cursor) position to the specified @offset.</doc>
7831         <return-value transfer-ownership="none">
7832           <doc xml:whitespace="preserve">%TRUE if success, %FALSE otherwise.</doc>
7833           <type name="gboolean" c:type="gboolean"/>
7834         </return-value>
7835         <parameters>
7836           <parameter name="offset" transfer-ownership="none">
7837             <doc xml:whitespace="preserve">position</doc>
7838             <type name="gint" c:type="gint"/>
7839           </parameter>
7840         </parameters>
7841       </virtual-method>
7842       <virtual-method name="set_selection" invoker="set_selection">
7843         <doc xml:whitespace="preserve">Changes the start and end offset of the specified selection.</doc>
7844         <return-value transfer-ownership="none">
7845           <doc xml:whitespace="preserve">%TRUE if success, %FALSE otherwise</doc>
7846           <type name="gboolean" c:type="gboolean"/>
7847         </return-value>
7848         <parameters>
7849           <parameter name="selection_num" transfer-ownership="none">
7850             <doc xml:whitespace="preserve">The selection number.  The selected regions are assigned numbers that correspond to how far the region is from the start of the text.  The selected region closest to the beginning of the text region is assigned the number 0, etc.  Note that adding, moving or deleting a selected region can change the numbering.</doc>
7851             <type name="gint" c:type="gint"/>
7852           </parameter>
7853           <parameter name="start_offset" transfer-ownership="none">
7854             <doc xml:whitespace="preserve">the new start position of the selection</doc>
7855             <type name="gint" c:type="gint"/>
7856           </parameter>
7857           <parameter name="end_offset" transfer-ownership="none">
7858             <doc xml:whitespace="preserve">the new end position of (e.g. offset immediately past) the selection</doc>
7859             <type name="gint" c:type="gint"/>
7860           </parameter>
7861         </parameters>
7862       </virtual-method>
7863       <method name="add_selection" c:identifier="atk_text_add_selection">
7864         <doc xml:whitespace="preserve">Adds a selection bounded by the specified offsets.</doc>
7865         <return-value transfer-ownership="none">
7866           <doc xml:whitespace="preserve">%TRUE if success, %FALSE otherwise</doc>
7867           <type name="gboolean" c:type="gboolean"/>
7868         </return-value>
7869         <parameters>
7870           <parameter name="start_offset" transfer-ownership="none">
7871             <doc xml:whitespace="preserve">the start position of the selected region</doc>
7872             <type name="gint" c:type="gint"/>
7873           </parameter>
7874           <parameter name="end_offset" transfer-ownership="none">
7875             <doc xml:whitespace="preserve">the offset of the first character after the selected region.</doc>
7876             <type name="gint" c:type="gint"/>
7877           </parameter>
7878         </parameters>
7879       </method>
7880       <method name="get_bounded_ranges"
7881               c:identifier="atk_text_get_bounded_ranges"
7882               version="1.3"
7883               introspectable="0">
7884         <doc xml:whitespace="preserve">Get the ranges of text in the specified bounding box.
7885 by this function will be NULL.</doc>
7886         <return-value>
7887           <doc xml:whitespace="preserve">Array of AtkTextRange. The last element of the array returned</doc>
7888           <type name="TextRange" c:type="AtkTextRange**"/>
7889         </return-value>
7890         <parameters>
7891           <parameter name="rect" transfer-ownership="none">
7892             <doc xml:whitespace="preserve">An AtkTextRectagle giving the dimensions of the bounding box.</doc>
7893             <type name="TextRectangle" c:type="AtkTextRectangle*"/>
7894           </parameter>
7895           <parameter name="coord_type" transfer-ownership="none">
7896             <doc xml:whitespace="preserve">Specify whether coordinates are relative to the screen or widget window.</doc>
7897             <type name="CoordType" c:type="AtkCoordType"/>
7898           </parameter>
7899           <parameter name="x_clip_type" transfer-ownership="none">
7900             <doc xml:whitespace="preserve">Specify the horizontal clip type.</doc>
7901             <type name="TextClipType" c:type="AtkTextClipType"/>
7902           </parameter>
7903           <parameter name="y_clip_type" transfer-ownership="none">
7904             <doc xml:whitespace="preserve">Specify the vertical clip type.</doc>
7905             <type name="TextClipType" c:type="AtkTextClipType"/>
7906           </parameter>
7907         </parameters>
7908       </method>
7909       <method name="get_caret_offset" c:identifier="atk_text_get_caret_offset">
7910         <doc xml:whitespace="preserve">Gets the offset position of the caret (cursor).</doc>
7911         <return-value transfer-ownership="none">
7912           <doc xml:whitespace="preserve">the offset position of the caret (cursor).</doc>
7913           <type name="gint" c:type="gint"/>
7914         </return-value>
7915       </method>
7916       <method name="get_character_at_offset"
7917               c:identifier="atk_text_get_character_at_offset"
7918               introspectable="0">
7919         <doc xml:whitespace="preserve">Gets the specified text.</doc>
7920         <return-value transfer-ownership="none">
7921           <doc xml:whitespace="preserve">the character at @offset.</doc>
7922           <type name="gunichar" c:type="gunichar"/>
7923         </return-value>
7924         <parameters>
7925           <parameter name="offset" transfer-ownership="none">
7926             <doc xml:whitespace="preserve">position</doc>
7927             <type name="gint" c:type="gint"/>
7928           </parameter>
7929         </parameters>
7930       </method>
7931       <method name="get_character_count"
7932               c:identifier="atk_text_get_character_count">
7933         <doc xml:whitespace="preserve">Gets the character count.</doc>
7934         <return-value transfer-ownership="none">
7935           <doc xml:whitespace="preserve">the number of characters.</doc>
7936           <type name="gint" c:type="gint"/>
7937         </return-value>
7938       </method>
7939       <method name="get_character_extents"
7940               c:identifier="atk_text_get_character_extents">
7941         <doc xml:whitespace="preserve">Get the bounding box containing the glyph representing the character at 
7942 a particular text offset.</doc>
7943         <return-value transfer-ownership="none">
7944           <type name="none" c:type="void"/>
7945         </return-value>
7946         <parameters>
7947           <parameter name="offset" transfer-ownership="none">
7948             <doc xml:whitespace="preserve">The offset of the text character for which bounding information is required.</doc>
7949             <type name="gint" c:type="gint"/>
7950           </parameter>
7951           <parameter name="x" transfer-ownership="none">
7952             <doc xml:whitespace="preserve">Pointer for the x cordinate of the bounding box</doc>
7953             <type name="gint" c:type="gint*"/>
7954           </parameter>
7955           <parameter name="y" transfer-ownership="none">
7956             <doc xml:whitespace="preserve">Pointer for the y cordinate of the bounding box</doc>
7957             <type name="gint" c:type="gint*"/>
7958           </parameter>
7959           <parameter name="width" transfer-ownership="none">
7960             <doc xml:whitespace="preserve">Pointer for the width of the bounding box</doc>
7961             <type name="gint" c:type="gint*"/>
7962           </parameter>
7963           <parameter name="height" transfer-ownership="none">
7964             <doc xml:whitespace="preserve">Pointer for the height of the bounding box</doc>
7965             <type name="gint" c:type="gint*"/>
7966           </parameter>
7967           <parameter name="coords" transfer-ownership="none">
7968             <doc xml:whitespace="preserve">specify whether coordinates are relative to the screen or widget window</doc>
7969             <type name="CoordType" c:type="AtkCoordType"/>
7970           </parameter>
7971         </parameters>
7972       </method>
7973       <method name="get_default_attributes"
7974               c:identifier="atk_text_get_default_attributes"
7975               introspectable="0">
7976         <return-value>
7977           <type name="AttributeSet" c:type="AtkAttributeSet*"/>
7978         </return-value>
7979       </method>
7980       <method name="get_n_selections" c:identifier="atk_text_get_n_selections">
7981         <doc xml:whitespace="preserve">Gets the number of selected regions.
7982 occurred.</doc>
7983         <return-value transfer-ownership="none">
7984           <doc xml:whitespace="preserve">The number of selected regions, or -1 if a failure</doc>
7985           <type name="gint" c:type="gint"/>
7986         </return-value>
7987       </method>
7988       <method name="get_offset_at_point"
7989               c:identifier="atk_text_get_offset_at_point">
7990         <doc xml:whitespace="preserve">Gets the offset of the character located at coordinates @x and @y. @x and @y
7991 are interpreted as being relative to the screen or this widget's window
7992 depending on @coords.
7993 the specified @x and @y coordinates.</doc>
7994         <return-value transfer-ownership="none">
7995           <doc xml:whitespace="preserve">the offset to the character which is located at</doc>
7996           <type name="gint" c:type="gint"/>
7997         </return-value>
7998         <parameters>
7999           <parameter name="x" transfer-ownership="none">
8000             <doc xml:whitespace="preserve">screen x-position of character</doc>
8001             <type name="gint" c:type="gint"/>
8002           </parameter>
8003           <parameter name="y" transfer-ownership="none">
8004             <doc xml:whitespace="preserve">screen y-position of character</doc>
8005             <type name="gint" c:type="gint"/>
8006           </parameter>
8007           <parameter name="coords" transfer-ownership="none">
8008             <doc xml:whitespace="preserve">specify whether coordinates are relative to the screen or widget window</doc>
8009             <type name="CoordType" c:type="AtkCoordType"/>
8010           </parameter>
8011         </parameters>
8012       </method>
8013       <method name="get_range_extents"
8014               c:identifier="atk_text_get_range_extents"
8015               version="1.3">
8016         <doc xml:whitespace="preserve">Get the bounding box for text within the specified range.</doc>
8017         <return-value transfer-ownership="none">
8018           <type name="none" c:type="void"/>
8019         </return-value>
8020         <parameters>
8021           <parameter name="start_offset" transfer-ownership="none">
8022             <doc xml:whitespace="preserve">The offset of the first text character for which boundary information is required.</doc>
8023             <type name="gint" c:type="gint"/>
8024           </parameter>
8025           <parameter name="end_offset" transfer-ownership="none">
8026             <doc xml:whitespace="preserve">The offset of the text character after the last character for which boundary information is required.</doc>
8027             <type name="gint" c:type="gint"/>
8028           </parameter>
8029           <parameter name="coord_type" transfer-ownership="none">
8030             <doc xml:whitespace="preserve">Specify whether coordinates are relative to the screen or widget window.</doc>
8031             <type name="CoordType" c:type="AtkCoordType"/>
8032           </parameter>
8033           <parameter name="rect" transfer-ownership="none">
8034             <doc xml:whitespace="preserve">A pointer to a AtkTextRectangle which is filled in by this function.</doc>
8035             <type name="TextRectangle" c:type="AtkTextRectangle*"/>
8036           </parameter>
8037         </parameters>
8038       </method>
8039       <method name="get_run_attributes"
8040               c:identifier="atk_text_get_run_attributes"
8041               introspectable="0">
8042         <return-value>
8043           <type name="AttributeSet" c:type="AtkAttributeSet*"/>
8044         </return-value>
8045         <parameters>
8046           <parameter name="offset" transfer-ownership="none">
8047             <type name="gint" c:type="gint"/>
8048           </parameter>
8049           <parameter name="start_offset" transfer-ownership="none">
8050             <type name="gint" c:type="gint*"/>
8051           </parameter>
8052           <parameter name="end_offset" transfer-ownership="none">
8053             <type name="gint" c:type="gint*"/>
8054           </parameter>
8055         </parameters>
8056       </method>
8057       <method name="get_selection" c:identifier="atk_text_get_selection">
8058         <doc xml:whitespace="preserve">Gets the text from the specified selection.</doc>
8059         <return-value transfer-ownership="full">
8060           <doc xml:whitespace="preserve">the selected text.</doc>
8061           <type name="utf8" c:type="gchar*"/>
8062         </return-value>
8063         <parameters>
8064           <parameter name="selection_num" transfer-ownership="none">
8065             <doc xml:whitespace="preserve">The selection number.  The selected regions are assigned numbers that correspond to how far the region is from the start of the text.  The selected region closest to the beginning of the text region is assigned the number 0, etc.  Note that adding, moving or deleting a selected region can change the numbering.</doc>
8066             <type name="gint" c:type="gint"/>
8067           </parameter>
8068           <parameter name="start_offset" transfer-ownership="none">
8069             <doc xml:whitespace="preserve">passes back the start position of the selected region</doc>
8070             <type name="gint" c:type="gint*"/>
8071           </parameter>
8072           <parameter name="end_offset" transfer-ownership="none">
8073             <doc xml:whitespace="preserve">passes back the end position of (e.g. offset immediately past) the selected region</doc>
8074             <type name="gint" c:type="gint*"/>
8075           </parameter>
8076         </parameters>
8077       </method>
8078       <method name="get_text" c:identifier="atk_text_get_text">
8079         <doc xml:whitespace="preserve">Gets the specified text.</doc>
8080         <return-value transfer-ownership="full">
8081           <doc xml:whitespace="preserve">the text from @start_offset up to, but not including @end_offset.</doc>
8082           <type name="utf8" c:type="gchar*"/>
8083         </return-value>
8084         <parameters>
8085           <parameter name="start_offset" transfer-ownership="none">
8086             <doc xml:whitespace="preserve">start position</doc>
8087             <type name="gint" c:type="gint"/>
8088           </parameter>
8089           <parameter name="end_offset" transfer-ownership="none">
8090             <doc xml:whitespace="preserve">end position</doc>
8091             <type name="gint" c:type="gint"/>
8092           </parameter>
8093         </parameters>
8094       </method>
8095       <method name="get_text_after_offset"
8096               c:identifier="atk_text_get_text_after_offset">
8097         <doc xml:whitespace="preserve">Gets the specified text.
8098 If the boundary_type if ATK_TEXT_BOUNDARY_CHAR the character after the 
8099 offset is returned.
8100 If the boundary_type is ATK_TEXT_BOUNDARY_WORD_START the returned string
8101 is from the word start after the offset to the next word start.
8102 The returned string will contain the word after the offset if the offset 
8103 is inside a word or if the offset is not inside a word.
8104 If the boundary_type is ATK_TEXT_BOUNDARY_WORD_END the returned string
8105 is from the word end at or after the offset to the next work end.
8106 The returned string will contain the word after the offset if the offset
8107 is inside a word and will contain the word after the word after the offset
8108 if the offset is not inside a word.
8109 If the boundary type is ATK_TEXT_BOUNDARY_SENTENCE_START the returned
8110 string is from the sentence start after the offset to the next sentence
8111 start.
8112 The returned string will contain the sentence after the offset if the offset
8113 is inside a sentence or if the offset is not inside a sentence.
8114 If the boundary_type is ATK_TEXT_BOUNDARY_SENTENCE_END the returned string
8115 is from the sentence end at or after the offset to the next sentence end.
8116 The returned string will contain the sentence after the offset if the offset
8117 is inside a sentence and will contain the sentence after the sentence
8118 after the offset if the offset is not inside a sentence.
8119 If the boundary type is ATK_TEXT_BOUNDARY_LINE_START the returned
8120 string is from the line start after the offset to the next line start.
8121 If the boundary_type is ATK_TEXT_BOUNDARY_LINE_END the returned string
8122 is from the line end at or after the offset to the next line start.</doc>
8123         <return-value transfer-ownership="full">
8124           <doc xml:whitespace="preserve">the text after @offset bounded by the specified @boundary_type.</doc>
8125           <type name="utf8" c:type="gchar*"/>
8126         </return-value>
8127         <parameters>
8128           <parameter name="offset" transfer-ownership="none">
8129             <doc xml:whitespace="preserve">position</doc>
8130             <type name="gint" c:type="gint"/>
8131           </parameter>
8132           <parameter name="boundary_type" transfer-ownership="none">
8133             <doc xml:whitespace="preserve">An #AtkTextBoundary</doc>
8134             <type name="TextBoundary" c:type="AtkTextBoundary"/>
8135           </parameter>
8136           <parameter name="start_offset" transfer-ownership="none">
8137             <doc xml:whitespace="preserve">the start offset of the returned string</doc>
8138             <type name="gint" c:type="gint*"/>
8139           </parameter>
8140           <parameter name="end_offset" transfer-ownership="none">
8141             <doc xml:whitespace="preserve">the offset of the first character after the returned substring</doc>
8142             <type name="gint" c:type="gint*"/>
8143           </parameter>
8144         </parameters>
8145       </method>
8146       <method name="get_text_at_offset"
8147               c:identifier="atk_text_get_text_at_offset">
8148         <doc xml:whitespace="preserve">Gets the specified text.
8149 If the boundary_type if ATK_TEXT_BOUNDARY_CHAR the character at the
8150 offset is returned.
8151 If the boundary_type is ATK_TEXT_BOUNDARY_WORD_START the returned string
8152 is from the word start at or before the offset to the word start after 
8153 the offset.
8154 The returned string will contain the word at the offset if the offset
8155 is inside a word and will contain the word before the offset if the 
8156 offset is not inside a word.
8157 If the boundary_type is ATK_TEXT_BOUNDARY_WORD_END the returned string
8158 is from the word end before the offset to the word end at or after the
8159 offset.
8160 The returned string will contain the word at the offset if the offset
8161 is inside a word and will contain the word after to the offset if the 
8162 offset is not inside a word.
8163 If the boundary type is ATK_TEXT_BOUNDARY_SENTENCE_START the returned
8164 string is from the sentence start at or before the offset to the sentence
8165 start after the offset.
8166 The returned string will contain the sentence at the offset if the offset
8167 is inside a sentence and will contain the sentence before the offset 
8168 if the offset is not inside a sentence.
8169 If the boundary_type is ATK_TEXT_BOUNDARY_SENTENCE_END the returned string
8170 is from the sentence end before the offset to the sentence end at or
8171 after the offset.
8172 The returned string will contain the sentence at the offset if the offset
8173 is inside a sentence and will contain the sentence after the offset 
8174 if the offset is not inside a sentence.
8175 If the boundary type is ATK_TEXT_BOUNDARY_LINE_START the returned
8176 string is from the line start at or before the offset to the line
8177 start after the offset.
8178 If the boundary_type is ATK_TEXT_BOUNDARY_LINE_END the returned string
8179 is from the line end before the offset to the line end at or after
8180 the offset.</doc>
8181         <return-value transfer-ownership="full">
8182           <doc xml:whitespace="preserve">the text at @offset bounded by the specified @boundary_type.</doc>
8183           <type name="utf8" c:type="gchar*"/>
8184         </return-value>
8185         <parameters>
8186           <parameter name="offset" transfer-ownership="none">
8187             <doc xml:whitespace="preserve">position</doc>
8188             <type name="gint" c:type="gint"/>
8189           </parameter>
8190           <parameter name="boundary_type" transfer-ownership="none">
8191             <doc xml:whitespace="preserve">An #AtkTextBoundary</doc>
8192             <type name="TextBoundary" c:type="AtkTextBoundary"/>
8193           </parameter>
8194           <parameter name="start_offset" transfer-ownership="none">
8195             <doc xml:whitespace="preserve">the start offset of the returned string</doc>
8196             <type name="gint" c:type="gint*"/>
8197           </parameter>
8198           <parameter name="end_offset" transfer-ownership="none">
8199             <doc xml:whitespace="preserve">the offset of the first character after the returned substring</doc>
8200             <type name="gint" c:type="gint*"/>
8201           </parameter>
8202         </parameters>
8203       </method>
8204       <method name="get_text_before_offset"
8205               c:identifier="atk_text_get_text_before_offset">
8206         <doc xml:whitespace="preserve">Gets the specified text.
8207 If the boundary_type if ATK_TEXT_BOUNDARY_CHAR the character before the
8208 offset is returned.
8209 If the boundary_type is ATK_TEXT_BOUNDARY_WORD_START the returned string
8210 is from the word start before the word start before the offset to 
8211 the word start before the offset.
8212 The returned string will contain the word before the offset if the offset
8213 is inside a word and will contain the word before the word before the 
8214 offset if the offset is not inside a word.
8215 If the boundary_type is ATK_TEXT_BOUNDARY_WORD_END the returned string
8216 is from the word end before the word end at or before the offset to the 
8217 word end at or before the offset.
8218 The returned string will contain the word before the offset if the offset
8219 is inside a word or if the offset is not inside a word.
8220 If the boundary type is ATK_TEXT_BOUNDARY_SENTENCE_START the returned
8221 string is from the sentence start before the sentence start before 
8222 the offset to the sentence start before the offset.
8223 The returned string will contain the sentence before the offset if the 
8224 offset is inside a sentence and will contain the sentence before the 
8225 sentence before the offset if the offset is not inside a sentence.
8226 If the boundary_type is ATK_TEXT_BOUNDARY_SENTENCE_END the returned string
8227 is from the sentence end before the sentence end at or before the offset to 
8228 the sentence end at or before the offset.
8229 The returned string will contain the sentence before the offset if the 
8230 offset is inside a sentence or if the offset is not inside a sentence.
8231 If the boundary type is ATK_TEXT_BOUNDARY_LINE_START the returned
8232 string is from the line start before the line start ar or before the offset 
8233 to the line start ar or before the offset.
8234 If the boundary_type is ATK_TEXT_BOUNDARY_LINE_END the returned string
8235 is from the line end before the line end before the offset to the 
8236 line end before the offset.</doc>
8237         <return-value transfer-ownership="full">
8238           <doc xml:whitespace="preserve">the text before @offset bounded by the specified @boundary_type.</doc>
8239           <type name="utf8" c:type="gchar*"/>
8240         </return-value>
8241         <parameters>
8242           <parameter name="offset" transfer-ownership="none">
8243             <doc xml:whitespace="preserve">position</doc>
8244             <type name="gint" c:type="gint"/>
8245           </parameter>
8246           <parameter name="boundary_type" transfer-ownership="none">
8247             <doc xml:whitespace="preserve">An #AtkTextBoundary</doc>
8248             <type name="TextBoundary" c:type="AtkTextBoundary"/>
8249           </parameter>
8250           <parameter name="start_offset" transfer-ownership="none">
8251             <doc xml:whitespace="preserve">the start offset of the returned string</doc>
8252             <type name="gint" c:type="gint*"/>
8253           </parameter>
8254           <parameter name="end_offset" transfer-ownership="none">
8255             <doc xml:whitespace="preserve">the offset of the first character after the returned substring</doc>
8256             <type name="gint" c:type="gint*"/>
8257           </parameter>
8258         </parameters>
8259       </method>
8260       <method name="remove_selection" c:identifier="atk_text_remove_selection">
8261         <doc xml:whitespace="preserve">Removes the specified selection.</doc>
8262         <return-value transfer-ownership="none">
8263           <doc xml:whitespace="preserve">%TRUE if success, %FALSE otherwise</doc>
8264           <type name="gboolean" c:type="gboolean"/>
8265         </return-value>
8266         <parameters>
8267           <parameter name="selection_num" transfer-ownership="none">
8268             <doc xml:whitespace="preserve">The selection number.  The selected regions are assigned numbers that correspond to how far the region is from the start of the text.  The selected region closest to the beginning of the text region is assigned the number 0, etc.  Note that adding, moving or deleting a selected region can change the numbering.</doc>
8269             <type name="gint" c:type="gint"/>
8270           </parameter>
8271         </parameters>
8272       </method>
8273       <method name="set_caret_offset" c:identifier="atk_text_set_caret_offset">
8274         <doc xml:whitespace="preserve">Sets the caret (cursor) position to the specified @offset.</doc>
8275         <return-value transfer-ownership="none">
8276           <doc xml:whitespace="preserve">%TRUE if success, %FALSE otherwise.</doc>
8277           <type name="gboolean" c:type="gboolean"/>
8278         </return-value>
8279         <parameters>
8280           <parameter name="offset" transfer-ownership="none">
8281             <doc xml:whitespace="preserve">position</doc>
8282             <type name="gint" c:type="gint"/>
8283           </parameter>
8284         </parameters>
8285       </method>
8286       <method name="set_selection" c:identifier="atk_text_set_selection">
8287         <doc xml:whitespace="preserve">Changes the start and end offset of the specified selection.</doc>
8288         <return-value transfer-ownership="none">
8289           <doc xml:whitespace="preserve">%TRUE if success, %FALSE otherwise</doc>
8290           <type name="gboolean" c:type="gboolean"/>
8291         </return-value>
8292         <parameters>
8293           <parameter name="selection_num" transfer-ownership="none">
8294             <doc xml:whitespace="preserve">The selection number.  The selected regions are assigned numbers that correspond to how far the region is from the start of the text.  The selected region closest to the beginning of the text region is assigned the number 0, etc.  Note that adding, moving or deleting a selected region can change the numbering.</doc>
8295             <type name="gint" c:type="gint"/>
8296           </parameter>
8297           <parameter name="start_offset" transfer-ownership="none">
8298             <doc xml:whitespace="preserve">the new start position of the selection</doc>
8299             <type name="gint" c:type="gint"/>
8300           </parameter>
8301           <parameter name="end_offset" transfer-ownership="none">
8302             <doc xml:whitespace="preserve">the new end position of (e.g. offset immediately past) the selection</doc>
8303             <type name="gint" c:type="gint"/>
8304           </parameter>
8305         </parameters>
8306       </method>
8307       <glib:signal name="text-attributes-changed">
8308         <return-value transfer-ownership="none">
8309           <type name="none"/>
8310         </return-value>
8311       </glib:signal>
8312       <glib:signal name="text-caret-moved">
8313         <return-value transfer-ownership="none">
8314           <type name="none"/>
8315         </return-value>
8316         <parameters>
8317           <parameter name="object" transfer-ownership="none">
8318             <type name="gint"/>
8319           </parameter>
8320         </parameters>
8321       </glib:signal>
8322       <glib:signal name="text-changed">
8323         <return-value transfer-ownership="none">
8324           <type name="none"/>
8325         </return-value>
8326         <parameters>
8327           <parameter name="object" transfer-ownership="none">
8328             <type name="gint"/>
8329           </parameter>
8330           <parameter name="p0" transfer-ownership="none">
8331             <type name="gint"/>
8332           </parameter>
8333         </parameters>
8334       </glib:signal>
8335       <glib:signal name="text-selection-changed">
8336         <return-value transfer-ownership="none">
8337           <type name="none"/>
8338         </return-value>
8339       </glib:signal>
8340     </interface>
8341     <enumeration name="TextAttribute"
8342                  glib:type-name="AtkTextAttribute"
8343                  glib:get-type="atk_text_attribute_get_type"
8344                  c:type="AtkTextAttribute">
8345       <member name="invalid"
8346               value="0"
8347               c:identifier="ATK_TEXT_ATTR_INVALID"
8348               glib:nick="invalid"/>
8349       <member name="left_margin"
8350               value="1"
8351               c:identifier="ATK_TEXT_ATTR_LEFT_MARGIN"
8352               glib:nick="left-margin"/>
8353       <member name="right_margin"
8354               value="2"
8355               c:identifier="ATK_TEXT_ATTR_RIGHT_MARGIN"
8356               glib:nick="right-margin"/>
8357       <member name="indent"
8358               value="3"
8359               c:identifier="ATK_TEXT_ATTR_INDENT"
8360               glib:nick="indent"/>
8361       <member name="invisible"
8362               value="4"
8363               c:identifier="ATK_TEXT_ATTR_INVISIBLE"
8364               glib:nick="invisible"/>
8365       <member name="editable"
8366               value="5"
8367               c:identifier="ATK_TEXT_ATTR_EDITABLE"
8368               glib:nick="editable"/>
8369       <member name="pixels_above_lines"
8370               value="6"
8371               c:identifier="ATK_TEXT_ATTR_PIXELS_ABOVE_LINES"
8372               glib:nick="pixels-above-lines"/>
8373       <member name="pixels_below_lines"
8374               value="7"
8375               c:identifier="ATK_TEXT_ATTR_PIXELS_BELOW_LINES"
8376               glib:nick="pixels-below-lines"/>
8377       <member name="pixels_inside_wrap"
8378               value="8"
8379               c:identifier="ATK_TEXT_ATTR_PIXELS_INSIDE_WRAP"
8380               glib:nick="pixels-inside-wrap"/>
8381       <member name="bg_full_height"
8382               value="9"
8383               c:identifier="ATK_TEXT_ATTR_BG_FULL_HEIGHT"
8384               glib:nick="bg-full-height"/>
8385       <member name="rise"
8386               value="10"
8387               c:identifier="ATK_TEXT_ATTR_RISE"
8388               glib:nick="rise"/>
8389       <member name="underline"
8390               value="11"
8391               c:identifier="ATK_TEXT_ATTR_UNDERLINE"
8392               glib:nick="underline"/>
8393       <member name="strikethrough"
8394               value="12"
8395               c:identifier="ATK_TEXT_ATTR_STRIKETHROUGH"
8396               glib:nick="strikethrough"/>
8397       <member name="size"
8398               value="13"
8399               c:identifier="ATK_TEXT_ATTR_SIZE"
8400               glib:nick="size"/>
8401       <member name="scale"
8402               value="14"
8403               c:identifier="ATK_TEXT_ATTR_SCALE"
8404               glib:nick="scale"/>
8405       <member name="weight"
8406               value="15"
8407               c:identifier="ATK_TEXT_ATTR_WEIGHT"
8408               glib:nick="weight"/>
8409       <member name="language"
8410               value="16"
8411               c:identifier="ATK_TEXT_ATTR_LANGUAGE"
8412               glib:nick="language"/>
8413       <member name="family_name"
8414               value="17"
8415               c:identifier="ATK_TEXT_ATTR_FAMILY_NAME"
8416               glib:nick="family-name"/>
8417       <member name="bg_color"
8418               value="18"
8419               c:identifier="ATK_TEXT_ATTR_BG_COLOR"
8420               glib:nick="bg-color"/>
8421       <member name="fg_color"
8422               value="19"
8423               c:identifier="ATK_TEXT_ATTR_FG_COLOR"
8424               glib:nick="fg-color"/>
8425       <member name="bg_stipple"
8426               value="20"
8427               c:identifier="ATK_TEXT_ATTR_BG_STIPPLE"
8428               glib:nick="bg-stipple"/>
8429       <member name="fg_stipple"
8430               value="21"
8431               c:identifier="ATK_TEXT_ATTR_FG_STIPPLE"
8432               glib:nick="fg-stipple"/>
8433       <member name="wrap_mode"
8434               value="22"
8435               c:identifier="ATK_TEXT_ATTR_WRAP_MODE"
8436               glib:nick="wrap-mode"/>
8437       <member name="direction"
8438               value="23"
8439               c:identifier="ATK_TEXT_ATTR_DIRECTION"
8440               glib:nick="direction"/>
8441       <member name="justification"
8442               value="24"
8443               c:identifier="ATK_TEXT_ATTR_JUSTIFICATION"
8444               glib:nick="justification"/>
8445       <member name="stretch"
8446               value="25"
8447               c:identifier="ATK_TEXT_ATTR_STRETCH"
8448               glib:nick="stretch"/>
8449       <member name="variant"
8450               value="26"
8451               c:identifier="ATK_TEXT_ATTR_VARIANT"
8452               glib:nick="variant"/>
8453       <member name="style"
8454               value="27"
8455               c:identifier="ATK_TEXT_ATTR_STYLE"
8456               glib:nick="style"/>
8457       <member name="last_defined"
8458               value="28"
8459               c:identifier="ATK_TEXT_ATTR_LAST_DEFINED"
8460               glib:nick="last-defined"/>
8461     </enumeration>
8462     <enumeration name="TextBoundary"
8463                  glib:type-name="AtkTextBoundary"
8464                  glib:get-type="atk_text_boundary_get_type"
8465                  c:type="AtkTextBoundary">
8466       <member name="char"
8467               value="0"
8468               c:identifier="ATK_TEXT_BOUNDARY_CHAR"
8469               glib:nick="char"/>
8470       <member name="word_start"
8471               value="1"
8472               c:identifier="ATK_TEXT_BOUNDARY_WORD_START"
8473               glib:nick="word-start"/>
8474       <member name="word_end"
8475               value="2"
8476               c:identifier="ATK_TEXT_BOUNDARY_WORD_END"
8477               glib:nick="word-end"/>
8478       <member name="sentence_start"
8479               value="3"
8480               c:identifier="ATK_TEXT_BOUNDARY_SENTENCE_START"
8481               glib:nick="sentence-start"/>
8482       <member name="sentence_end"
8483               value="4"
8484               c:identifier="ATK_TEXT_BOUNDARY_SENTENCE_END"
8485               glib:nick="sentence-end"/>
8486       <member name="line_start"
8487               value="5"
8488               c:identifier="ATK_TEXT_BOUNDARY_LINE_START"
8489               glib:nick="line-start"/>
8490       <member name="line_end"
8491               value="6"
8492               c:identifier="ATK_TEXT_BOUNDARY_LINE_END"
8493               glib:nick="line-end"/>
8494     </enumeration>
8495     <enumeration name="TextClipType"
8496                  glib:type-name="AtkTextClipType"
8497                  glib:get-type="atk_text_clip_type_get_type"
8498                  c:type="AtkTextClipType">
8499       <member name="none"
8500               value="0"
8501               c:identifier="ATK_TEXT_CLIP_NONE"
8502               glib:nick="none"/>
8503       <member name="min"
8504               value="1"
8505               c:identifier="ATK_TEXT_CLIP_MIN"
8506               glib:nick="min"/>
8507       <member name="max"
8508               value="2"
8509               c:identifier="ATK_TEXT_CLIP_MAX"
8510               glib:nick="max"/>
8511       <member name="both"
8512               value="3"
8513               c:identifier="ATK_TEXT_CLIP_BOTH"
8514               glib:nick="both"/>
8515     </enumeration>
8516     <record name="TextIface"
8517             c:type="AtkTextIface"
8518             glib:is-gtype-struct-for="Text">
8519       <field name="parent">
8520         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
8521       </field>
8522       <field name="get_text">
8523         <callback name="get_text">
8524           <return-value transfer-ownership="full">
8525             <doc xml:whitespace="preserve">the text from @start_offset up to, but not including @end_offset.</doc>
8526             <type name="utf8" c:type="gchar*"/>
8527           </return-value>
8528           <parameters>
8529             <parameter name="text" transfer-ownership="none">
8530               <type name="Text" c:type="AtkText*"/>
8531             </parameter>
8532             <parameter name="start_offset" transfer-ownership="none">
8533               <doc xml:whitespace="preserve">start position</doc>
8534               <type name="gint" c:type="gint"/>
8535             </parameter>
8536             <parameter name="end_offset" transfer-ownership="none">
8537               <doc xml:whitespace="preserve">end position</doc>
8538               <type name="gint" c:type="gint"/>
8539             </parameter>
8540           </parameters>
8541         </callback>
8542       </field>
8543       <field name="get_text_after_offset">
8544         <callback name="get_text_after_offset">
8545           <return-value transfer-ownership="full">
8546             <doc xml:whitespace="preserve">the text after @offset bounded by the specified @boundary_type.</doc>
8547             <type name="utf8" c:type="gchar*"/>
8548           </return-value>
8549           <parameters>
8550             <parameter name="text" transfer-ownership="none">
8551               <type name="Text" c:type="AtkText*"/>
8552             </parameter>
8553             <parameter name="offset" transfer-ownership="none">
8554               <doc xml:whitespace="preserve">position</doc>
8555               <type name="gint" c:type="gint"/>
8556             </parameter>
8557             <parameter name="boundary_type" transfer-ownership="none">
8558               <doc xml:whitespace="preserve">An #AtkTextBoundary</doc>
8559               <type name="TextBoundary" c:type="AtkTextBoundary"/>
8560             </parameter>
8561             <parameter name="start_offset" transfer-ownership="none">
8562               <doc xml:whitespace="preserve">the start offset of the returned string</doc>
8563               <type name="gint" c:type="gint*"/>
8564             </parameter>
8565             <parameter name="end_offset" transfer-ownership="none">
8566               <doc xml:whitespace="preserve">the offset of the first character after the returned substring</doc>
8567               <type name="gint" c:type="gint*"/>
8568             </parameter>
8569           </parameters>
8570         </callback>
8571       </field>
8572       <field name="get_text_at_offset">
8573         <callback name="get_text_at_offset">
8574           <return-value transfer-ownership="full">
8575             <doc xml:whitespace="preserve">the text at @offset bounded by the specified @boundary_type.</doc>
8576             <type name="utf8" c:type="gchar*"/>
8577           </return-value>
8578           <parameters>
8579             <parameter name="text" transfer-ownership="none">
8580               <type name="Text" c:type="AtkText*"/>
8581             </parameter>
8582             <parameter name="offset" transfer-ownership="none">
8583               <doc xml:whitespace="preserve">position</doc>
8584               <type name="gint" c:type="gint"/>
8585             </parameter>
8586             <parameter name="boundary_type" transfer-ownership="none">
8587               <doc xml:whitespace="preserve">An #AtkTextBoundary</doc>
8588               <type name="TextBoundary" c:type="AtkTextBoundary"/>
8589             </parameter>
8590             <parameter name="start_offset" transfer-ownership="none">
8591               <doc xml:whitespace="preserve">the start offset of the returned string</doc>
8592               <type name="gint" c:type="gint*"/>
8593             </parameter>
8594             <parameter name="end_offset" transfer-ownership="none">
8595               <doc xml:whitespace="preserve">the offset of the first character after the returned substring</doc>
8596               <type name="gint" c:type="gint*"/>
8597             </parameter>
8598           </parameters>
8599         </callback>
8600       </field>
8601       <field name="get_character_at_offset" introspectable="0">
8602         <callback name="get_character_at_offset" introspectable="0">
8603           <return-value transfer-ownership="none">
8604             <doc xml:whitespace="preserve">the character at @offset.</doc>
8605             <type name="gunichar" c:type="gunichar"/>
8606           </return-value>
8607           <parameters>
8608             <parameter name="text" transfer-ownership="none">
8609               <type name="Text" c:type="AtkText*"/>
8610             </parameter>
8611             <parameter name="offset" transfer-ownership="none">
8612               <doc xml:whitespace="preserve">position</doc>
8613               <type name="gint" c:type="gint"/>
8614             </parameter>
8615           </parameters>
8616         </callback>
8617       </field>
8618       <field name="get_text_before_offset">
8619         <callback name="get_text_before_offset">
8620           <return-value transfer-ownership="full">
8621             <doc xml:whitespace="preserve">the text before @offset bounded by the specified @boundary_type.</doc>
8622             <type name="utf8" c:type="gchar*"/>
8623           </return-value>
8624           <parameters>
8625             <parameter name="text" transfer-ownership="none">
8626               <type name="Text" c:type="AtkText*"/>
8627             </parameter>
8628             <parameter name="offset" transfer-ownership="none">
8629               <doc xml:whitespace="preserve">position</doc>
8630               <type name="gint" c:type="gint"/>
8631             </parameter>
8632             <parameter name="boundary_type" transfer-ownership="none">
8633               <doc xml:whitespace="preserve">An #AtkTextBoundary</doc>
8634               <type name="TextBoundary" c:type="AtkTextBoundary"/>
8635             </parameter>
8636             <parameter name="start_offset" transfer-ownership="none">
8637               <doc xml:whitespace="preserve">the start offset of the returned string</doc>
8638               <type name="gint" c:type="gint*"/>
8639             </parameter>
8640             <parameter name="end_offset" transfer-ownership="none">
8641               <doc xml:whitespace="preserve">the offset of the first character after the returned substring</doc>
8642               <type name="gint" c:type="gint*"/>
8643             </parameter>
8644           </parameters>
8645         </callback>
8646       </field>
8647       <field name="get_caret_offset">
8648         <callback name="get_caret_offset">
8649           <return-value transfer-ownership="none">
8650             <doc xml:whitespace="preserve">the offset position of the caret (cursor).</doc>
8651             <type name="gint" c:type="gint"/>
8652           </return-value>
8653           <parameters>
8654             <parameter name="text" transfer-ownership="none">
8655               <type name="Text" c:type="AtkText*"/>
8656             </parameter>
8657           </parameters>
8658         </callback>
8659       </field>
8660       <field name="get_run_attributes" introspectable="0">
8661         <callback name="get_run_attributes" introspectable="0">
8662           <return-value>
8663             <type name="AttributeSet" c:type="AtkAttributeSet*"/>
8664           </return-value>
8665           <parameters>
8666             <parameter name="text" transfer-ownership="none">
8667               <type name="Text" c:type="AtkText*"/>
8668             </parameter>
8669             <parameter name="offset" transfer-ownership="none">
8670               <type name="gint" c:type="gint"/>
8671             </parameter>
8672             <parameter name="start_offset" transfer-ownership="none">
8673               <type name="gint" c:type="gint*"/>
8674             </parameter>
8675             <parameter name="end_offset" transfer-ownership="none">
8676               <type name="gint" c:type="gint*"/>
8677             </parameter>
8678           </parameters>
8679         </callback>
8680       </field>
8681       <field name="get_default_attributes" introspectable="0">
8682         <callback name="get_default_attributes" introspectable="0">
8683           <return-value>
8684             <type name="AttributeSet" c:type="AtkAttributeSet*"/>
8685           </return-value>
8686           <parameters>
8687             <parameter name="text" transfer-ownership="none">
8688               <type name="Text" c:type="AtkText*"/>
8689             </parameter>
8690           </parameters>
8691         </callback>
8692       </field>
8693       <field name="get_character_extents">
8694         <callback name="get_character_extents">
8695           <return-value transfer-ownership="none">
8696             <type name="none" c:type="void"/>
8697           </return-value>
8698           <parameters>
8699             <parameter name="text" transfer-ownership="none">
8700               <type name="Text" c:type="AtkText*"/>
8701             </parameter>
8702             <parameter name="offset" transfer-ownership="none">
8703               <doc xml:whitespace="preserve">The offset of the text character for which bounding information is required.</doc>
8704               <type name="gint" c:type="gint"/>
8705             </parameter>
8706             <parameter name="x" transfer-ownership="none">
8707               <doc xml:whitespace="preserve">Pointer for the x cordinate of the bounding box</doc>
8708               <type name="gint" c:type="gint*"/>
8709             </parameter>
8710             <parameter name="y" transfer-ownership="none">
8711               <doc xml:whitespace="preserve">Pointer for the y cordinate of the bounding box</doc>
8712               <type name="gint" c:type="gint*"/>
8713             </parameter>
8714             <parameter name="width" transfer-ownership="none">
8715               <doc xml:whitespace="preserve">Pointer for the width of the bounding box</doc>
8716               <type name="gint" c:type="gint*"/>
8717             </parameter>
8718             <parameter name="height" transfer-ownership="none">
8719               <doc xml:whitespace="preserve">Pointer for the height of the bounding box</doc>
8720               <type name="gint" c:type="gint*"/>
8721             </parameter>
8722             <parameter name="coords" transfer-ownership="none">
8723               <doc xml:whitespace="preserve">specify whether coordinates are relative to the screen or widget window</doc>
8724               <type name="CoordType" c:type="AtkCoordType"/>
8725             </parameter>
8726           </parameters>
8727         </callback>
8728       </field>
8729       <field name="get_character_count">
8730         <callback name="get_character_count">
8731           <return-value transfer-ownership="none">
8732             <doc xml:whitespace="preserve">the number of characters.</doc>
8733             <type name="gint" c:type="gint"/>
8734           </return-value>
8735           <parameters>
8736             <parameter name="text" transfer-ownership="none">
8737               <type name="Text" c:type="AtkText*"/>
8738             </parameter>
8739           </parameters>
8740         </callback>
8741       </field>
8742       <field name="get_offset_at_point">
8743         <callback name="get_offset_at_point">
8744           <return-value transfer-ownership="none">
8745             <doc xml:whitespace="preserve">the offset to the character which is located at</doc>
8746             <type name="gint" c:type="gint"/>
8747           </return-value>
8748           <parameters>
8749             <parameter name="text" transfer-ownership="none">
8750               <type name="Text" c:type="AtkText*"/>
8751             </parameter>
8752             <parameter name="x" transfer-ownership="none">
8753               <doc xml:whitespace="preserve">screen x-position of character</doc>
8754               <type name="gint" c:type="gint"/>
8755             </parameter>
8756             <parameter name="y" transfer-ownership="none">
8757               <doc xml:whitespace="preserve">screen y-position of character</doc>
8758               <type name="gint" c:type="gint"/>
8759             </parameter>
8760             <parameter name="coords" transfer-ownership="none">
8761               <doc xml:whitespace="preserve">specify whether coordinates are relative to the screen or widget window</doc>
8762               <type name="CoordType" c:type="AtkCoordType"/>
8763             </parameter>
8764           </parameters>
8765         </callback>
8766       </field>
8767       <field name="get_n_selections">
8768         <callback name="get_n_selections">
8769           <return-value transfer-ownership="none">
8770             <doc xml:whitespace="preserve">The number of selected regions, or -1 if a failure</doc>
8771             <type name="gint" c:type="gint"/>
8772           </return-value>
8773           <parameters>
8774             <parameter name="text" transfer-ownership="none">
8775               <type name="Text" c:type="AtkText*"/>
8776             </parameter>
8777           </parameters>
8778         </callback>
8779       </field>
8780       <field name="get_selection">
8781         <callback name="get_selection">
8782           <return-value transfer-ownership="full">
8783             <doc xml:whitespace="preserve">the selected text.</doc>
8784             <type name="utf8" c:type="gchar*"/>
8785           </return-value>
8786           <parameters>
8787             <parameter name="text" transfer-ownership="none">
8788               <type name="Text" c:type="AtkText*"/>
8789             </parameter>
8790             <parameter name="selection_num" transfer-ownership="none">
8791               <doc xml:whitespace="preserve">The selection number.  The selected regions are assigned numbers that correspond to how far the region is from the start of the text.  The selected region closest to the beginning of the text region is assigned the number 0, etc.  Note that adding, moving or deleting a selected region can change the numbering.</doc>
8792               <type name="gint" c:type="gint"/>
8793             </parameter>
8794             <parameter name="start_offset" transfer-ownership="none">
8795               <doc xml:whitespace="preserve">passes back the start position of the selected region</doc>
8796               <type name="gint" c:type="gint*"/>
8797             </parameter>
8798             <parameter name="end_offset" transfer-ownership="none">
8799               <doc xml:whitespace="preserve">passes back the end position of (e.g. offset immediately past) the selected region</doc>
8800               <type name="gint" c:type="gint*"/>
8801             </parameter>
8802           </parameters>
8803         </callback>
8804       </field>
8805       <field name="add_selection">
8806         <callback name="add_selection">
8807           <return-value transfer-ownership="none">
8808             <doc xml:whitespace="preserve">%TRUE if success, %FALSE otherwise</doc>
8809             <type name="gboolean" c:type="gboolean"/>
8810           </return-value>
8811           <parameters>
8812             <parameter name="text" transfer-ownership="none">
8813               <type name="Text" c:type="AtkText*"/>
8814             </parameter>
8815             <parameter name="start_offset" transfer-ownership="none">
8816               <doc xml:whitespace="preserve">the start position of the selected region</doc>
8817               <type name="gint" c:type="gint"/>
8818             </parameter>
8819             <parameter name="end_offset" transfer-ownership="none">
8820               <doc xml:whitespace="preserve">the offset of the first character after the selected region.</doc>
8821               <type name="gint" c:type="gint"/>
8822             </parameter>
8823           </parameters>
8824         </callback>
8825       </field>
8826       <field name="remove_selection">
8827         <callback name="remove_selection">
8828           <return-value transfer-ownership="none">
8829             <doc xml:whitespace="preserve">%TRUE if success, %FALSE otherwise</doc>
8830             <type name="gboolean" c:type="gboolean"/>
8831           </return-value>
8832           <parameters>
8833             <parameter name="text" transfer-ownership="none">
8834               <type name="Text" c:type="AtkText*"/>
8835             </parameter>
8836             <parameter name="selection_num" transfer-ownership="none">
8837               <doc xml:whitespace="preserve">The selection number.  The selected regions are assigned numbers that correspond to how far the region is from the start of the text.  The selected region closest to the beginning of the text region is assigned the number 0, etc.  Note that adding, moving or deleting a selected region can change the numbering.</doc>
8838               <type name="gint" c:type="gint"/>
8839             </parameter>
8840           </parameters>
8841         </callback>
8842       </field>
8843       <field name="set_selection">
8844         <callback name="set_selection">
8845           <return-value transfer-ownership="none">
8846             <doc xml:whitespace="preserve">%TRUE if success, %FALSE otherwise</doc>
8847             <type name="gboolean" c:type="gboolean"/>
8848           </return-value>
8849           <parameters>
8850             <parameter name="text" transfer-ownership="none">
8851               <type name="Text" c:type="AtkText*"/>
8852             </parameter>
8853             <parameter name="selection_num" transfer-ownership="none">
8854               <doc xml:whitespace="preserve">The selection number.  The selected regions are assigned numbers that correspond to how far the region is from the start of the text.  The selected region closest to the beginning of the text region is assigned the number 0, etc.  Note that adding, moving or deleting a selected region can change the numbering.</doc>
8855               <type name="gint" c:type="gint"/>
8856             </parameter>
8857             <parameter name="start_offset" transfer-ownership="none">
8858               <doc xml:whitespace="preserve">the new start position of the selection</doc>
8859               <type name="gint" c:type="gint"/>
8860             </parameter>
8861             <parameter name="end_offset" transfer-ownership="none">
8862               <doc xml:whitespace="preserve">the new end position of (e.g. offset immediately past) the selection</doc>
8863               <type name="gint" c:type="gint"/>
8864             </parameter>
8865           </parameters>
8866         </callback>
8867       </field>
8868       <field name="set_caret_offset">
8869         <callback name="set_caret_offset">
8870           <return-value transfer-ownership="none">
8871             <doc xml:whitespace="preserve">%TRUE if success, %FALSE otherwise.</doc>
8872             <type name="gboolean" c:type="gboolean"/>
8873           </return-value>
8874           <parameters>
8875             <parameter name="text" transfer-ownership="none">
8876               <type name="Text" c:type="AtkText*"/>
8877             </parameter>
8878             <parameter name="offset" transfer-ownership="none">
8879               <doc xml:whitespace="preserve">position</doc>
8880               <type name="gint" c:type="gint"/>
8881             </parameter>
8882           </parameters>
8883         </callback>
8884       </field>
8885       <field name="text_changed">
8886         <callback name="text_changed">
8887           <return-value transfer-ownership="none">
8888             <type name="none" c:type="void"/>
8889           </return-value>
8890           <parameters>
8891             <parameter name="text" transfer-ownership="none">
8892               <type name="Text" c:type="AtkText*"/>
8893             </parameter>
8894             <parameter name="position" transfer-ownership="none">
8895               <type name="gint" c:type="gint"/>
8896             </parameter>
8897             <parameter name="length" transfer-ownership="none">
8898               <type name="gint" c:type="gint"/>
8899             </parameter>
8900           </parameters>
8901         </callback>
8902       </field>
8903       <field name="text_caret_moved">
8904         <callback name="text_caret_moved">
8905           <return-value transfer-ownership="none">
8906             <type name="none" c:type="void"/>
8907           </return-value>
8908           <parameters>
8909             <parameter name="text" transfer-ownership="none">
8910               <type name="Text" c:type="AtkText*"/>
8911             </parameter>
8912             <parameter name="location" transfer-ownership="none">
8913               <type name="gint" c:type="gint"/>
8914             </parameter>
8915           </parameters>
8916         </callback>
8917       </field>
8918       <field name="text_selection_changed">
8919         <callback name="text_selection_changed">
8920           <return-value transfer-ownership="none">
8921             <type name="none" c:type="void"/>
8922           </return-value>
8923           <parameters>
8924             <parameter name="text" transfer-ownership="none">
8925               <type name="Text" c:type="AtkText*"/>
8926             </parameter>
8927           </parameters>
8928         </callback>
8929       </field>
8930       <field name="text_attributes_changed">
8931         <callback name="text_attributes_changed">
8932           <return-value transfer-ownership="none">
8933             <type name="none" c:type="void"/>
8934           </return-value>
8935           <parameters>
8936             <parameter name="text" transfer-ownership="none">
8937               <type name="Text" c:type="AtkText*"/>
8938             </parameter>
8939           </parameters>
8940         </callback>
8941       </field>
8942       <field name="get_range_extents">
8943         <callback name="get_range_extents">
8944           <return-value transfer-ownership="none">
8945             <type name="none" c:type="void"/>
8946           </return-value>
8947           <parameters>
8948             <parameter name="text" transfer-ownership="none">
8949               <type name="Text" c:type="AtkText*"/>
8950             </parameter>
8951             <parameter name="start_offset" transfer-ownership="none">
8952               <doc xml:whitespace="preserve">The offset of the first text character for which boundary information is required.</doc>
8953               <type name="gint" c:type="gint"/>
8954             </parameter>
8955             <parameter name="end_offset" transfer-ownership="none">
8956               <doc xml:whitespace="preserve">The offset of the text character after the last character for which boundary information is required.</doc>
8957               <type name="gint" c:type="gint"/>
8958             </parameter>
8959             <parameter name="coord_type" transfer-ownership="none">
8960               <doc xml:whitespace="preserve">Specify whether coordinates are relative to the screen or widget window.</doc>
8961               <type name="CoordType" c:type="AtkCoordType"/>
8962             </parameter>
8963             <parameter name="rect" transfer-ownership="none">
8964               <doc xml:whitespace="preserve">A pointer to a AtkTextRectangle which is filled in by this function.</doc>
8965               <type name="TextRectangle" c:type="AtkTextRectangle*"/>
8966             </parameter>
8967           </parameters>
8968         </callback>
8969       </field>
8970       <field name="get_bounded_ranges" introspectable="0">
8971         <callback name="get_bounded_ranges" introspectable="0">
8972           <return-value>
8973             <doc xml:whitespace="preserve">Array of AtkTextRange. The last element of the array returned</doc>
8974             <type name="TextRange" c:type="AtkTextRange**"/>
8975           </return-value>
8976           <parameters>
8977             <parameter name="text" transfer-ownership="none">
8978               <type name="Text" c:type="AtkText*"/>
8979             </parameter>
8980             <parameter name="rect" transfer-ownership="none">
8981               <doc xml:whitespace="preserve">An AtkTextRectagle giving the dimensions of the bounding box.</doc>
8982               <type name="TextRectangle" c:type="AtkTextRectangle*"/>
8983             </parameter>
8984             <parameter name="coord_type" transfer-ownership="none">
8985               <doc xml:whitespace="preserve">Specify whether coordinates are relative to the screen or widget window.</doc>
8986               <type name="CoordType" c:type="AtkCoordType"/>
8987             </parameter>
8988             <parameter name="x_clip_type" transfer-ownership="none">
8989               <doc xml:whitespace="preserve">Specify the horizontal clip type.</doc>
8990               <type name="TextClipType" c:type="AtkTextClipType"/>
8991             </parameter>
8992             <parameter name="y_clip_type" transfer-ownership="none">
8993               <doc xml:whitespace="preserve">Specify the vertical clip type.</doc>
8994               <type name="TextClipType" c:type="AtkTextClipType"/>
8995             </parameter>
8996           </parameters>
8997         </callback>
8998       </field>
8999       <field name="pad4">
9000         <type name="Function" c:type="AtkFunction"/>
9001       </field>
9002     </record>
9003     <record name="TextRange" c:type="AtkTextRange">
9004       <doc xml:whitespace="preserve">A structure used to describe a text range.</doc>
9005       <field name="bounds" writable="1">
9006         <type name="TextRectangle" c:type="AtkTextRectangle"/>
9007       </field>
9008       <field name="start_offset" writable="1">
9009         <type name="gint" c:type="gint"/>
9010       </field>
9011       <field name="end_offset" writable="1">
9012         <type name="gint" c:type="gint"/>
9013       </field>
9014       <field name="content" writable="1">
9015         <type name="utf8" c:type="gchar*"/>
9016       </field>
9017     </record>
9018     <record name="TextRectangle" c:type="AtkTextRectangle">
9019       <doc xml:whitespace="preserve">A structure used to store a rectangle used by AtkText.</doc>
9020       <field name="x" writable="1">
9021         <type name="gint" c:type="gint"/>
9022       </field>
9023       <field name="y" writable="1">
9024         <type name="gint" c:type="gint"/>
9025       </field>
9026       <field name="width" writable="1">
9027         <type name="gint" c:type="gint"/>
9028       </field>
9029       <field name="height" writable="1">
9030         <type name="gint" c:type="gint"/>
9031       </field>
9032     </record>
9033     <class name="Util"
9034            c:symbol-prefix="util"
9035            c:type="AtkUtil"
9036            parent="GObject.Object"
9037            glib:type-name="AtkUtil"
9038            glib:get-type="atk_util_get_type"
9039            glib:type-struct="UtilClass">
9040       <field name="parent">
9041         <type name="GObject.Object" c:type="GObject"/>
9042       </field>
9043     </class>
9044     <record name="UtilClass"
9045             c:type="AtkUtilClass"
9046             glib:is-gtype-struct-for="Util">
9047       <field name="parent">
9048         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
9049       </field>
9050       <field name="add_global_event_listener" introspectable="0">
9051         <callback name="add_global_event_listener" introspectable="0">
9052           <return-value transfer-ownership="none">
9053             <type name="guint" c:type="guint"/>
9054           </return-value>
9055           <parameters>
9056             <parameter name="listener" transfer-ownership="none">
9057               <type name="GObject.SignalEmissionHook"
9058                     c:type="GSignalEmissionHook"/>
9059             </parameter>
9060             <parameter name="event_type" transfer-ownership="none">
9061               <type name="utf8" c:type="gchar*"/>
9062             </parameter>
9063           </parameters>
9064         </callback>
9065       </field>
9066       <field name="remove_global_event_listener">
9067         <callback name="remove_global_event_listener">
9068           <return-value transfer-ownership="none">
9069             <type name="none" c:type="void"/>
9070           </return-value>
9071           <parameters>
9072             <parameter name="listener_id" transfer-ownership="none">
9073               <type name="guint" c:type="guint"/>
9074             </parameter>
9075           </parameters>
9076         </callback>
9077       </field>
9078       <field name="add_key_event_listener" introspectable="0">
9079         <callback name="add_key_event_listener" introspectable="0">
9080           <return-value transfer-ownership="none">
9081             <type name="guint" c:type="guint"/>
9082           </return-value>
9083           <parameters>
9084             <parameter name="listener" transfer-ownership="none" closure="1">
9085               <type name="KeySnoopFunc" c:type="AtkKeySnoopFunc"/>
9086             </parameter>
9087             <parameter name="data" transfer-ownership="none">
9088               <type name="gpointer" c:type="gpointer"/>
9089             </parameter>
9090           </parameters>
9091         </callback>
9092       </field>
9093       <field name="remove_key_event_listener">
9094         <callback name="remove_key_event_listener">
9095           <return-value transfer-ownership="none">
9096             <type name="none" c:type="void"/>
9097           </return-value>
9098           <parameters>
9099             <parameter name="listener_id" transfer-ownership="none">
9100               <type name="guint" c:type="guint"/>
9101             </parameter>
9102           </parameters>
9103         </callback>
9104       </field>
9105       <field name="get_root" introspectable="0">
9106         <callback name="get_root" introspectable="0">
9107           <return-value>
9108             <type name="Object" c:type="AtkObject*"/>
9109           </return-value>
9110         </callback>
9111       </field>
9112       <field name="get_toolkit_name">
9113         <callback name="get_toolkit_name">
9114           <return-value transfer-ownership="none">
9115             <type name="utf8" c:type="gchar*"/>
9116           </return-value>
9117         </callback>
9118       </field>
9119       <field name="get_toolkit_version">
9120         <callback name="get_toolkit_version">
9121           <return-value transfer-ownership="none">
9122             <type name="utf8" c:type="gchar*"/>
9123           </return-value>
9124         </callback>
9125       </field>
9126     </record>
9127     <interface name="Value"
9128                c:symbol-prefix="value"
9129                c:type="AtkValue"
9130                glib:type-name="AtkValue"
9131                glib:get-type="atk_value_get_type"
9132                glib:type-struct="ValueIface">
9133       <virtual-method name="get_current_value" invoker="get_current_value">
9134         <doc xml:whitespace="preserve">Gets the value of this object.</doc>
9135         <return-value transfer-ownership="none">
9136           <type name="none" c:type="void"/>
9137         </return-value>
9138         <parameters>
9139           <parameter name="value" transfer-ownership="none">
9140             <doc xml:whitespace="preserve">a #GValue representing the current accessible value</doc>
9141             <type name="GObject.Value" c:type="GValue*"/>
9142           </parameter>
9143         </parameters>
9144       </virtual-method>
9145       <virtual-method name="get_maximum_value" invoker="get_maximum_value">
9146         <doc xml:whitespace="preserve">Gets the maximum value of this object.</doc>
9147         <return-value transfer-ownership="none">
9148           <type name="none" c:type="void"/>
9149         </return-value>
9150         <parameters>
9151           <parameter name="value" transfer-ownership="none">
9152             <doc xml:whitespace="preserve">a #GValue representing the maximum accessible value</doc>
9153             <type name="GObject.Value" c:type="GValue*"/>
9154           </parameter>
9155         </parameters>
9156       </virtual-method>
9157       <virtual-method name="get_minimum_increment"
9158                       invoker="get_minimum_increment"
9159                       version="1.12">
9160         <doc xml:whitespace="preserve">Gets the minimum increment by which the value of this object may be changed.  If zero,
9161 the minimum increment is undefined, which may mean that it is limited only by the 
9162 floating point precision of the platform.</doc>
9163         <return-value transfer-ownership="none">
9164           <type name="none" c:type="void"/>
9165         </return-value>
9166         <parameters>
9167           <parameter name="value" transfer-ownership="none">
9168             <doc xml:whitespace="preserve">a #GValue representing the minimum increment by which the accessible value may be changed</doc>
9169             <type name="GObject.Value" c:type="GValue*"/>
9170           </parameter>
9171         </parameters>
9172       </virtual-method>
9173       <virtual-method name="get_minimum_value" invoker="get_minimum_value">
9174         <doc xml:whitespace="preserve">Gets the minimum value of this object.</doc>
9175         <return-value transfer-ownership="none">
9176           <type name="none" c:type="void"/>
9177         </return-value>
9178         <parameters>
9179           <parameter name="value" transfer-ownership="none">
9180             <doc xml:whitespace="preserve">a #GValue representing the minimum accessible value</doc>
9181             <type name="GObject.Value" c:type="GValue*"/>
9182           </parameter>
9183         </parameters>
9184       </virtual-method>
9185       <virtual-method name="set_current_value" invoker="set_current_value">
9186         <doc xml:whitespace="preserve">Sets the value of this object.</doc>
9187         <return-value transfer-ownership="none">
9188           <doc xml:whitespace="preserve">%TRUE if new value is successfully set, %FALSE otherwise.</doc>
9189           <type name="gboolean" c:type="gboolean"/>
9190         </return-value>
9191         <parameters>
9192           <parameter name="value" transfer-ownership="none">
9193             <doc xml:whitespace="preserve">a #GValue which is the desired new accessible value.</doc>
9194             <type name="GObject.Value" c:type="GValue*"/>
9195           </parameter>
9196         </parameters>
9197       </virtual-method>
9198       <method name="get_current_value"
9199               c:identifier="atk_value_get_current_value">
9200         <doc xml:whitespace="preserve">Gets the value of this object.</doc>
9201         <return-value transfer-ownership="none">
9202           <type name="none" c:type="void"/>
9203         </return-value>
9204         <parameters>
9205           <parameter name="value" transfer-ownership="none">
9206             <doc xml:whitespace="preserve">a #GValue representing the current accessible value</doc>
9207             <type name="GObject.Value" c:type="GValue*"/>
9208           </parameter>
9209         </parameters>
9210       </method>
9211       <method name="get_maximum_value"
9212               c:identifier="atk_value_get_maximum_value">
9213         <doc xml:whitespace="preserve">Gets the maximum value of this object.</doc>
9214         <return-value transfer-ownership="none">
9215           <type name="none" c:type="void"/>
9216         </return-value>
9217         <parameters>
9218           <parameter name="value" transfer-ownership="none">
9219             <doc xml:whitespace="preserve">a #GValue representing the maximum accessible value</doc>
9220             <type name="GObject.Value" c:type="GValue*"/>
9221           </parameter>
9222         </parameters>
9223       </method>
9224       <method name="get_minimum_increment"
9225               c:identifier="atk_value_get_minimum_increment"
9226               version="1.12">
9227         <doc xml:whitespace="preserve">Gets the minimum increment by which the value of this object may be changed.  If zero,
9228 the minimum increment is undefined, which may mean that it is limited only by the 
9229 floating point precision of the platform.</doc>
9230         <return-value transfer-ownership="none">
9231           <type name="none" c:type="void"/>
9232         </return-value>
9233         <parameters>
9234           <parameter name="value" transfer-ownership="none">
9235             <doc xml:whitespace="preserve">a #GValue representing the minimum increment by which the accessible value may be changed</doc>
9236             <type name="GObject.Value" c:type="GValue*"/>
9237           </parameter>
9238         </parameters>
9239       </method>
9240       <method name="get_minimum_value"
9241               c:identifier="atk_value_get_minimum_value">
9242         <doc xml:whitespace="preserve">Gets the minimum value of this object.</doc>
9243         <return-value transfer-ownership="none">
9244           <type name="none" c:type="void"/>
9245         </return-value>
9246         <parameters>
9247           <parameter name="value" transfer-ownership="none">
9248             <doc xml:whitespace="preserve">a #GValue representing the minimum accessible value</doc>
9249             <type name="GObject.Value" c:type="GValue*"/>
9250           </parameter>
9251         </parameters>
9252       </method>
9253       <method name="set_current_value"
9254               c:identifier="atk_value_set_current_value">
9255         <doc xml:whitespace="preserve">Sets the value of this object.</doc>
9256         <return-value transfer-ownership="none">
9257           <doc xml:whitespace="preserve">%TRUE if new value is successfully set, %FALSE otherwise.</doc>
9258           <type name="gboolean" c:type="gboolean"/>
9259         </return-value>
9260         <parameters>
9261           <parameter name="value" transfer-ownership="none">
9262             <doc xml:whitespace="preserve">a #GValue which is the desired new accessible value.</doc>
9263             <type name="GObject.Value" c:type="GValue*"/>
9264           </parameter>
9265         </parameters>
9266       </method>
9267     </interface>
9268     <record name="ValueIface"
9269             c:type="AtkValueIface"
9270             glib:is-gtype-struct-for="Value">
9271       <field name="parent">
9272         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
9273       </field>
9274       <field name="get_current_value">
9275         <callback name="get_current_value">
9276           <return-value transfer-ownership="none">
9277             <type name="none" c:type="void"/>
9278           </return-value>
9279           <parameters>
9280             <parameter name="obj" transfer-ownership="none">
9281               <type name="Value" c:type="AtkValue*"/>
9282             </parameter>
9283             <parameter name="value" transfer-ownership="none">
9284               <doc xml:whitespace="preserve">a #GValue representing the current accessible value</doc>
9285               <type name="GObject.Value" c:type="GValue*"/>
9286             </parameter>
9287           </parameters>
9288         </callback>
9289       </field>
9290       <field name="get_maximum_value">
9291         <callback name="get_maximum_value">
9292           <return-value transfer-ownership="none">
9293             <type name="none" c:type="void"/>
9294           </return-value>
9295           <parameters>
9296             <parameter name="obj" transfer-ownership="none">
9297               <type name="Value" c:type="AtkValue*"/>
9298             </parameter>
9299             <parameter name="value" transfer-ownership="none">
9300               <doc xml:whitespace="preserve">a #GValue representing the maximum accessible value</doc>
9301               <type name="GObject.Value" c:type="GValue*"/>
9302             </parameter>
9303           </parameters>
9304         </callback>
9305       </field>
9306       <field name="get_minimum_value">
9307         <callback name="get_minimum_value">
9308           <return-value transfer-ownership="none">
9309             <type name="none" c:type="void"/>
9310           </return-value>
9311           <parameters>
9312             <parameter name="obj" transfer-ownership="none">
9313               <type name="Value" c:type="AtkValue*"/>
9314             </parameter>
9315             <parameter name="value" transfer-ownership="none">
9316               <doc xml:whitespace="preserve">a #GValue representing the minimum accessible value</doc>
9317               <type name="GObject.Value" c:type="GValue*"/>
9318             </parameter>
9319           </parameters>
9320         </callback>
9321       </field>
9322       <field name="set_current_value">
9323         <callback name="set_current_value">
9324           <return-value transfer-ownership="none">
9325             <doc xml:whitespace="preserve">%TRUE if new value is successfully set, %FALSE otherwise.</doc>
9326             <type name="gboolean" c:type="gboolean"/>
9327           </return-value>
9328           <parameters>
9329             <parameter name="obj" transfer-ownership="none">
9330               <type name="Value" c:type="AtkValue*"/>
9331             </parameter>
9332             <parameter name="value" transfer-ownership="none">
9333               <doc xml:whitespace="preserve">a #GValue which is the desired new accessible value.</doc>
9334               <type name="GObject.Value" c:type="GValue*"/>
9335             </parameter>
9336           </parameters>
9337         </callback>
9338       </field>
9339       <field name="get_minimum_increment">
9340         <callback name="get_minimum_increment">
9341           <return-value transfer-ownership="none">
9342             <type name="none" c:type="void"/>
9343           </return-value>
9344           <parameters>
9345             <parameter name="obj" transfer-ownership="none">
9346               <type name="Value" c:type="AtkValue*"/>
9347             </parameter>
9348             <parameter name="value" transfer-ownership="none">
9349               <doc xml:whitespace="preserve">a #GValue representing the minimum increment by which the accessible value may be changed</doc>
9350               <type name="GObject.Value" c:type="GValue*"/>
9351             </parameter>
9352           </parameters>
9353         </callback>
9354       </field>
9355       <field name="pad1">
9356         <type name="Function" c:type="AtkFunction"/>
9357       </field>
9358     </record>
9359     <record name="_PropertyValues" c:type="_AtkPropertyValues">
9360       <field name="property_name" writable="1">
9361         <type name="utf8" c:type="gchar*"/>
9362       </field>
9363       <field name="old_value" writable="1">
9364         <type name="GObject.Value" c:type="GValue"/>
9365       </field>
9366       <field name="new_value" writable="1">
9367         <type name="GObject.Value" c:type="GValue"/>
9368       </field>
9369     </record>
9370     <record name="_Registry" c:type="_AtkRegistry">
9371       <field name="parent" writable="1">
9372         <type name="GObject.Object" c:type="GObject"/>
9373       </field>
9374       <field name="factory_type_registry" writable="1">
9375         <type name="GLib.HashTable" c:type="GHashTable*">
9376           <type name="gpointer" c:type="gpointer"/>
9377           <type name="gpointer" c:type="gpointer"/>
9378         </type>
9379       </field>
9380       <field name="factory_singleton_cache" writable="1">
9381         <type name="GLib.HashTable" c:type="GHashTable*">
9382           <type name="gpointer" c:type="gpointer"/>
9383           <type name="gpointer" c:type="gpointer"/>
9384         </type>
9385       </field>
9386     </record>
9387     <record name="_RegistryClass" c:type="_AtkRegistryClass">
9388       <field name="parent_class" writable="1">
9389         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
9390       </field>
9391     </record>
9392     <function name="add_focus_tracker"
9393               c:identifier="atk_add_focus_tracker"
9394               introspectable="0">
9395       <doc xml:whitespace="preserve">Adds the specified function to the list of functions to be called
9396 when an object receives focus.</doc>
9397       <return-value transfer-ownership="none">
9398         <doc xml:whitespace="preserve">added focus tracker id, or 0 on failure.</doc>
9399         <type name="guint" c:type="guint"/>
9400       </return-value>
9401       <parameters>
9402         <parameter name="focus_tracker" transfer-ownership="none">
9403           <doc xml:whitespace="preserve">Function to be added to the list of functions to be called when an object receives focus.</doc>
9404           <type name="EventListener" c:type="AtkEventListener"/>
9405         </parameter>
9406       </parameters>
9407     </function>
9408     <function name="add_global_event_listener"
9409               c:identifier="atk_add_global_event_listener"
9410               introspectable="0">
9411       <doc xml:whitespace="preserve">Adds the specified function to the list of functions to be called
9412 when an event of type event_type occurs.</doc>
9413       <return-value transfer-ownership="none">
9414         <doc xml:whitespace="preserve">added event listener id, or 0 on failure.</doc>
9415         <type name="guint" c:type="guint"/>
9416       </return-value>
9417       <parameters>
9418         <parameter name="listener" transfer-ownership="none">
9419           <doc xml:whitespace="preserve">the listener to notify</doc>
9420           <type name="GObject.SignalEmissionHook"
9421                 c:type="GSignalEmissionHook"/>
9422         </parameter>
9423         <parameter name="event_type" transfer-ownership="none">
9424           <doc xml:whitespace="preserve">the type of event for which notification is requested</doc>
9425           <type name="utf8" c:type="gchar*"/>
9426         </parameter>
9427       </parameters>
9428     </function>
9429     <function name="add_key_event_listener"
9430               c:identifier="atk_add_key_event_listener"
9431               introspectable="0">
9432       <doc xml:whitespace="preserve">Adds the specified function to the list of functions to be called
9433 when a key event occurs.  The @data element will be passed to the
9434 #AtkKeySnoopFunc (@listener) as the @func_data param, on notification.</doc>
9435       <return-value transfer-ownership="none">
9436         <doc xml:whitespace="preserve">added event listener id, or 0 on failure.</doc>
9437         <type name="guint" c:type="guint"/>
9438       </return-value>
9439       <parameters>
9440         <parameter name="listener" transfer-ownership="none" closure="1">
9441           <doc xml:whitespace="preserve">the listener to notify</doc>
9442           <type name="KeySnoopFunc" c:type="AtkKeySnoopFunc"/>
9443         </parameter>
9444         <parameter name="data" transfer-ownership="none">
9445           <doc xml:whitespace="preserve">a #gpointer that points to a block of data that should be sent to the registered listeners, along with the event notification, when it occurs.</doc>
9446           <type name="gpointer" c:type="gpointer"/>
9447         </parameter>
9448       </parameters>
9449     </function>
9450     <function name="attribute_set_free" c:identifier="atk_attribute_set_free">
9451       <doc xml:whitespace="preserve">Frees the memory used by an #AtkAttributeSet, including all its
9452 #AtkAttributes.</doc>
9453       <return-value transfer-ownership="none">
9454         <type name="none" c:type="void"/>
9455       </return-value>
9456       <parameters>
9457         <parameter name="attrib_set" transfer-ownership="none">
9458           <doc xml:whitespace="preserve">The #AtkAttributeSet to free</doc>
9459           <type name="AttributeSet" c:type="AtkAttributeSet*"/>
9460         </parameter>
9461       </parameters>
9462     </function>
9463     <function name="focus_tracker_init"
9464               c:identifier="atk_focus_tracker_init"
9465               introspectable="0">
9466       <doc xml:whitespace="preserve">Specifies the function to be called for focus tracker initialization.
9467 This function should be called by an implementation of the
9468 ATK interface if any specific work needs to be done to enable
9469 focus tracking.</doc>
9470       <return-value transfer-ownership="none">
9471         <type name="none" c:type="void"/>
9472       </return-value>
9473       <parameters>
9474         <parameter name="init" transfer-ownership="none">
9475           <doc xml:whitespace="preserve">Function to be called for focus tracker initialization</doc>
9476           <type name="EventListenerInit" c:type="AtkEventListenerInit"/>
9477         </parameter>
9478       </parameters>
9479     </function>
9480     <function name="focus_tracker_notify"
9481               c:identifier="atk_focus_tracker_notify">
9482       <doc xml:whitespace="preserve">Cause the focus tracker functions which have been specified to be
9483 executed for the object.</doc>
9484       <return-value transfer-ownership="none">
9485         <type name="none" c:type="void"/>
9486       </return-value>
9487       <parameters>
9488         <parameter name="object" transfer-ownership="none">
9489           <doc xml:whitespace="preserve">an #AtkObject</doc>
9490           <type name="Object" c:type="AtkObject*"/>
9491         </parameter>
9492       </parameters>
9493     </function>
9494     <function name="get_default_registry"
9495               c:identifier="atk_get_default_registry"
9496               introspectable="0">
9497       <return-value>
9498         <type name="Registry" c:type="AtkRegistry*"/>
9499       </return-value>
9500     </function>
9501     <function name="get_focus_object"
9502               c:identifier="atk_get_focus_object"
9503               version="1.6"
9504               introspectable="0">
9505       <doc xml:whitespace="preserve">Gets the currently focused object.</doc>
9506       <return-value>
9507         <doc xml:whitespace="preserve">the currently focused object for the current application</doc>
9508         <type name="Object" c:type="AtkObject*"/>
9509       </return-value>
9510     </function>
9511     <function name="get_root" c:identifier="atk_get_root" introspectable="0">
9512       <doc xml:whitespace="preserve">Gets the root accessible container for the current application.</doc>
9513       <return-value>
9514         <doc xml:whitespace="preserve">the root accessible container for the current application</doc>
9515         <type name="Object" c:type="AtkObject*"/>
9516       </return-value>
9517     </function>
9518     <function name="get_toolkit_name" c:identifier="atk_get_toolkit_name">
9519       <doc xml:whitespace="preserve">Gets name string for the GUI toolkit implementing ATK for this application.</doc>
9520       <return-value transfer-ownership="none">
9521         <doc xml:whitespace="preserve">name string for the GUI toolkit implementing ATK for this application</doc>
9522         <type name="utf8" c:type="gchar*"/>
9523       </return-value>
9524     </function>
9525     <function name="get_toolkit_version"
9526               c:identifier="atk_get_toolkit_version">
9527       <doc xml:whitespace="preserve">Gets version string for the GUI toolkit implementing ATK for this application.</doc>
9528       <return-value transfer-ownership="none">
9529         <doc xml:whitespace="preserve">version string for the GUI toolkit implementing ATK for this application</doc>
9530         <type name="utf8" c:type="gchar*"/>
9531       </return-value>
9532     </function>
9533     <function name="get_version" c:identifier="atk_get_version">
9534       <doc xml:whitespace="preserve">Gets the current version for ATK.</doc>
9535       <return-value transfer-ownership="none">
9536         <doc xml:whitespace="preserve">version string for ATK</doc>
9537         <type name="utf8" c:type="gchar*"/>
9538       </return-value>
9539     </function>
9540     <function name="relation_type_for_name"
9541               c:identifier="atk_relation_type_for_name">
9542       <doc xml:whitespace="preserve">Get the #AtkRelationType type corresponding to a relation name.
9543 or #ATK_RELATION_NULL if no matching relation type is found.</doc>
9544       <return-value transfer-ownership="none">
9545         <doc xml:whitespace="preserve">the #AtkRelationType enumerated type corresponding to the specified name,</doc>
9546         <type name="RelationType" c:type="AtkRelationType"/>
9547       </return-value>
9548       <parameters>
9549         <parameter name="name" transfer-ownership="none">
9550           <doc xml:whitespace="preserve">a string which is the (non-localized) name of an ATK relation type.</doc>
9551           <type name="utf8" c:type="gchar*"/>
9552         </parameter>
9553       </parameters>
9554     </function>
9555     <function name="relation_type_get_name"
9556               c:identifier="atk_relation_type_get_name">
9557       <doc xml:whitespace="preserve">Gets the description string describing the #AtkRelationType @type.</doc>
9558       <return-value transfer-ownership="none">
9559         <doc xml:whitespace="preserve">the string describing the AtkRelationType</doc>
9560         <type name="utf8" c:type="gchar*"/>
9561       </return-value>
9562       <parameters>
9563         <parameter name="type" transfer-ownership="none">
9564           <doc xml:whitespace="preserve">The #AtkRelationType whose name is required</doc>
9565           <type name="RelationType" c:type="AtkRelationType"/>
9566         </parameter>
9567       </parameters>
9568     </function>
9569     <function name="relation_type_register"
9570               c:identifier="atk_relation_type_register">
9571       <doc xml:whitespace="preserve">Associate @name with a new #AtkRelationType</doc>
9572       <return-value transfer-ownership="none">
9573         <doc xml:whitespace="preserve">an #AtkRelationType associated with @name</doc>
9574         <type name="RelationType" c:type="AtkRelationType"/>
9575       </return-value>
9576       <parameters>
9577         <parameter name="name" transfer-ownership="none">
9578           <doc xml:whitespace="preserve">a name string</doc>
9579           <type name="utf8" c:type="gchar*"/>
9580         </parameter>
9581       </parameters>
9582     </function>
9583     <function name="remove_focus_tracker"
9584               c:identifier="atk_remove_focus_tracker">
9585       <doc xml:whitespace="preserve">Removes the specified focus tracker from the list of functions
9586 to be called when any object receives focus.</doc>
9587       <return-value transfer-ownership="none">
9588         <type name="none" c:type="void"/>
9589       </return-value>
9590       <parameters>
9591         <parameter name="tracker_id" transfer-ownership="none">
9592           <doc xml:whitespace="preserve">the id of the focus tracker to remove</doc>
9593           <type name="guint" c:type="guint"/>
9594         </parameter>
9595       </parameters>
9596     </function>
9597     <function name="remove_global_event_listener"
9598               c:identifier="atk_remove_global_event_listener">
9599       <doc xml:whitespace="preserve">Removes the specified event listener</doc>
9600       <return-value transfer-ownership="none">
9601         <type name="none" c:type="void"/>
9602       </return-value>
9603       <parameters>
9604         <parameter name="listener_id" transfer-ownership="none">
9605           <doc xml:whitespace="preserve">the id of the event listener to remove</doc>
9606           <type name="guint" c:type="guint"/>
9607         </parameter>
9608       </parameters>
9609     </function>
9610     <function name="remove_key_event_listener"
9611               c:identifier="atk_remove_key_event_listener">
9612       <doc xml:whitespace="preserve">Removes the specified event listener</doc>
9613       <return-value transfer-ownership="none">
9614         <type name="none" c:type="void"/>
9615       </return-value>
9616       <parameters>
9617         <parameter name="listener_id" transfer-ownership="none">
9618           <doc xml:whitespace="preserve">the id of the event listener to remove</doc>
9619           <type name="guint" c:type="guint"/>
9620         </parameter>
9621       </parameters>
9622     </function>
9623     <function name="role_for_name" c:identifier="atk_role_for_name">
9624       <doc xml:whitespace="preserve">Get the #AtkRole type corresponding to a rolew name.
9625 or #ATK_ROLE_INVALID if no matching role is found.</doc>
9626       <return-value transfer-ownership="none">
9627         <doc xml:whitespace="preserve">the #AtkRole enumerated type corresponding to the specified</doc>
9628         <type name="Role" c:type="AtkRole"/>
9629       </return-value>
9630       <parameters>
9631         <parameter name="name" transfer-ownership="none">
9632           <doc xml:whitespace="preserve">a string which is the (non-localized) name of an ATK role.</doc>
9633           <type name="utf8" c:type="gchar*"/>
9634         </parameter>
9635       </parameters>
9636     </function>
9637     <function name="role_get_localized_name"
9638               c:identifier="atk_role_get_localized_name">
9639       <doc xml:whitespace="preserve">Gets the localized description string describing the #AtkRole @role.</doc>
9640       <return-value transfer-ownership="none">
9641         <doc xml:whitespace="preserve">the localized string describing the AtkRole</doc>
9642         <type name="utf8" c:type="gchar*"/>
9643       </return-value>
9644       <parameters>
9645         <parameter name="role" transfer-ownership="none">
9646           <doc xml:whitespace="preserve">The #AtkRole whose localized name is required</doc>
9647           <type name="Role" c:type="AtkRole"/>
9648         </parameter>
9649       </parameters>
9650     </function>
9651     <function name="role_get_name" c:identifier="atk_role_get_name">
9652       <doc xml:whitespace="preserve">Gets the description string describing the #AtkRole @role.</doc>
9653       <return-value transfer-ownership="none">
9654         <doc xml:whitespace="preserve">the string describing the AtkRole</doc>
9655         <type name="utf8" c:type="gchar*"/>
9656       </return-value>
9657       <parameters>
9658         <parameter name="role" transfer-ownership="none">
9659           <doc xml:whitespace="preserve">The #AtkRole whose name is required</doc>
9660           <type name="Role" c:type="AtkRole"/>
9661         </parameter>
9662       </parameters>
9663     </function>
9664     <function name="role_register" c:identifier="atk_role_register">
9665       <doc xml:whitespace="preserve">Registers the role specified by @name.</doc>
9666       <return-value transfer-ownership="none">
9667         <doc xml:whitespace="preserve">an #AtkRole for the new role.</doc>
9668         <type name="Role" c:type="AtkRole"/>
9669       </return-value>
9670       <parameters>
9671         <parameter name="name" transfer-ownership="none">
9672           <doc xml:whitespace="preserve">a character string describing the new role.</doc>
9673           <type name="utf8" c:type="gchar*"/>
9674         </parameter>
9675       </parameters>
9676     </function>
9677     <function name="state_type_for_name"
9678               c:identifier="atk_state_type_for_name">
9679       <doc xml:whitespace="preserve">Gets the #AtkStateType corresponding to the description string @name.</doc>
9680       <return-value transfer-ownership="none">
9681         <doc xml:whitespace="preserve">an #AtkStateType corresponding to @name</doc>
9682         <type name="StateType" c:type="AtkStateType"/>
9683       </return-value>
9684       <parameters>
9685         <parameter name="name" transfer-ownership="none">
9686           <doc xml:whitespace="preserve">a character string state name</doc>
9687           <type name="utf8" c:type="gchar*"/>
9688         </parameter>
9689       </parameters>
9690     </function>
9691     <function name="state_type_get_name"
9692               c:identifier="atk_state_type_get_name">
9693       <doc xml:whitespace="preserve">Gets the description string describing the #AtkStateType @type.</doc>
9694       <return-value transfer-ownership="none">
9695         <doc xml:whitespace="preserve">the string describing the AtkStateType</doc>
9696         <type name="utf8" c:type="gchar*"/>
9697       </return-value>
9698       <parameters>
9699         <parameter name="type" transfer-ownership="none">
9700           <doc xml:whitespace="preserve">The #AtkStateType whose name is required</doc>
9701           <type name="StateType" c:type="AtkStateType"/>
9702         </parameter>
9703       </parameters>
9704     </function>
9705     <function name="state_type_register"
9706               c:identifier="atk_state_type_register">
9707       <doc xml:whitespace="preserve">Register a new object state.</doc>
9708       <return-value transfer-ownership="none">
9709         <doc xml:whitespace="preserve">an #AtkState value for the new state.</doc>
9710         <type name="StateType" c:type="AtkStateType"/>
9711       </return-value>
9712       <parameters>
9713         <parameter name="name" transfer-ownership="none">
9714           <doc xml:whitespace="preserve">a character string describing the new state.</doc>
9715           <type name="utf8" c:type="gchar*"/>
9716         </parameter>
9717       </parameters>
9718     </function>
9719     <function name="text_attribute_for_name"
9720               c:identifier="atk_text_attribute_for_name">
9721       <doc xml:whitespace="preserve">Get the #AtkTextAttribute type corresponding to a text attribute name.
9722 or #ATK_TEXT_ATTRIBUTE_INVALID if no matching text attribute is found.</doc>
9723       <return-value transfer-ownership="none">
9724         <doc xml:whitespace="preserve">the #AtkTextAttribute enumerated type corresponding to the specified</doc>
9725         <type name="TextAttribute" c:type="AtkTextAttribute"/>
9726       </return-value>
9727       <parameters>
9728         <parameter name="name" transfer-ownership="none">
9729           <doc xml:whitespace="preserve">a string which is the (non-localized) name of an ATK text attribute.</doc>
9730           <type name="utf8" c:type="gchar*"/>
9731         </parameter>
9732       </parameters>
9733     </function>
9734     <function name="text_attribute_get_name"
9735               c:identifier="atk_text_attribute_get_name">
9736       <doc xml:whitespace="preserve">Gets the name corresponding to the #AtkTextAttribute</doc>
9737       <return-value transfer-ownership="none">
9738         <doc xml:whitespace="preserve">a string containing the name; this string should not be freed</doc>
9739         <type name="utf8" c:type="gchar*"/>
9740       </return-value>
9741       <parameters>
9742         <parameter name="attr" transfer-ownership="none">
9743           <doc xml:whitespace="preserve">The #AtkTextAttribute whose name is required</doc>
9744           <type name="TextAttribute" c:type="AtkTextAttribute"/>
9745         </parameter>
9746       </parameters>
9747     </function>
9748     <function name="text_attribute_get_value"
9749               c:identifier="atk_text_attribute_get_value">
9750       <doc xml:whitespace="preserve">Gets the value for the index of the #AtkTextAttribute
9751 NULL is returned if there are no values maintained for the attr value.</doc>
9752       <return-value transfer-ownership="none">
9753         <doc xml:whitespace="preserve">a string containing the value; this string should not be freed;</doc>
9754         <type name="utf8" c:type="gchar*"/>
9755       </return-value>
9756       <parameters>
9757         <parameter name="attr" transfer-ownership="none">
9758           <doc xml:whitespace="preserve">The #AtkTextAttribute for which a value is required</doc>
9759           <type name="TextAttribute" c:type="AtkTextAttribute"/>
9760         </parameter>
9761         <parameter name="index_" transfer-ownership="none">
9762           <doc xml:whitespace="preserve">The index of the required value</doc>
9763           <type name="gint" c:type="gint"/>
9764         </parameter>
9765       </parameters>
9766     </function>
9767     <function name="text_attribute_register"
9768               c:identifier="atk_text_attribute_register">
9769       <doc xml:whitespace="preserve">Associate @name with a new #AtkTextAttribute</doc>
9770       <return-value transfer-ownership="none">
9771         <doc xml:whitespace="preserve">an #AtkTextAttribute associated with @name</doc>
9772         <type name="TextAttribute" c:type="AtkTextAttribute"/>
9773       </return-value>
9774       <parameters>
9775         <parameter name="name" transfer-ownership="none">
9776           <doc xml:whitespace="preserve">a name string</doc>
9777           <type name="utf8" c:type="gchar*"/>
9778         </parameter>
9779       </parameters>
9780     </function>
9781     <function name="text_free_ranges"
9782               c:identifier="atk_text_free_ranges"
9783               version="1.3">
9784       <doc xml:whitespace="preserve">Frees the memory associated with an array of AtkTextRange. It is assumed
9785 that the array was returned by the function atk_text_get_bounded_ranges
9786 and is NULL terminated.</doc>
9787       <return-value transfer-ownership="none">
9788         <type name="none" c:type="void"/>
9789       </return-value>
9790       <parameters>
9791         <parameter name="ranges" transfer-ownership="none">
9792           <doc xml:whitespace="preserve">A pointer to an array of  #AtkTextRange which is to be freed.</doc>
9793           <type name="TextRange" c:type="AtkTextRange**"/>
9794         </parameter>
9795       </parameters>
9796     </function>
9797   </namespace>
9798 </repository>