5 /* Implementation private definitions */
9 * Definitions for ACCESSIBLE_STATE , ACCESSIBLE_ROLE, AccessibleEvent,
10 * and event listeners.
13 #include "spi-roletypes.h"
14 #include "spi-statetypes.h"
15 #include "spi-listener.h"
19 * Enumerated type for text boundary types
26 TEXT_BOUNDARY_CURSOR_POS,
27 TEXT_BOUNDARY_WORD_START,
28 TEXT_BOUNDARY_WORD_END,
29 TEXT_BOUNDARY_SENTENCE_START,
30 TEXT_BOUNDARY_SENTENCE_END,
31 TEXT_BOUNDARY_LINE_START,
32 TEXT_BOUNDARY_LINE_END,
33 TEXT_BOUNDARY_ATTRIBUTE_RANGE
40 * Enumerated type for relation types
48 RELATION_CONTROLLER_FOR,
49 RELATION_CONTROLLED_BY,
54 /* don't change the order of these ! */
55 typedef enum _AccessibleCoordType {
58 } AccessibleCoordType;
60 typedef enum _KeyEventType {
65 typedef enum _KeySynthType {
72 typedef enum _KeyListenerSyncType {
73 KEYLISTENER_SYNCHRONOUS = 1,
74 KEYLISTENER_CANCONSUME = 2,
75 KEYLISTENER_ALLWINDOWS = 4
76 } KeyListenerSyncType;
78 typedef unsigned long KeyEventMask;
80 typedef struct _KeyStroke
85 unsigned short modifiers;
88 typedef struct _KeySet
90 unsigned long *keysyms;
91 unsigned short *keycodes;
95 #define ALL_KEYS ((void *)NULL)
99 * Basic SPI initialization and event loop function prototypes
106 * Connects to the accessibility registry and initializes the SPI.
108 * Returns: 0 on success, otherwise an integer error code.
115 * @isGNOMEApp: a #boolean indicating whether the client of the SPI
116 * will use the Gnome event loop or not.
118 * Starts/enters the main event loop for the SPI services.
120 * (NOTE: This method does not return control, it is exited via a call to exit()
121 * from within an event handler).
125 SPI_event_main (boolean isGNOMEApp);
128 * SPI_event_is_ready:
130 * Checks to see if an SPI event is waiting in the event queue.
131 * Used by clients that don't wish to use SPI_event_main().
132 * Not Yet Implemented.
134 * Returns: #TRUE if an event is waiting, otherwise #FALSE.
143 * Gets the next event in the SPI event queue; blocks if no event
145 * Used by clients that don't wish to use SPI_event_main().
146 * Not Yet Implemented.
148 * Returns: the next #AccessibleEvent in the SPI event queue.
152 SPI_nextEvent (boolean waitForEvent);
157 * Disconnects from the Accessibility Registry and releases resources.
158 * Not Yet Implemented.
165 * Event Listener creation and support.
169 * createEventListener:
170 * @callback : an #AccessibleEventListenerCB callback function, or NULL.
172 * Create a new #AccessibleEventListener with a specified callback function.
174 * Returns: a pointer to a newly-created #AccessibleEventListener.
177 AccessibleEventListener *
178 createEventListener (AccessibleEventListenerCB callback);
181 * EventListener_addCallback:
182 * @listener: the #AccessibleEventListener instance to modify.
183 * @callback: an #AccessibleEventListenerCB function pointer.
185 * Add an in-process callback function to an existing AccessibleEventListener.
187 * Returns: #TRUE if successful, otherwise #FALSE.
191 EventListener_addCallback (AccessibleEventListener *listener,
192 AccessibleEventListenerCB callback);
195 * EventListener_removeCallback:
196 * @listener: the #AccessibleEventListener instance to modify.
197 * @callback: an #AccessibleEventListenerCB function pointer.
199 * Remove an in-process callback function from an existing AccessibleEventListener.
201 * Returns: #TRUE if successful, otherwise #FALSE.
205 EventListener_removeCallback (AccessibleEventListener *listener,
206 AccessibleEventListenerCB callback);
210 * @callback : an #KeystrokeListenerCB callback function, or NULL.
212 * Create a new #KeystrokeListener with a specified callback function.
214 * Returns: a pointer to a newly-created #KeystrokeListener.
218 createKeystrokeListener (KeystrokeListenerCB callback);
221 * KeystrokeListener_addCallback:
222 * @listener: the #KeystrokeListener instance to modify.
223 * @callback: an #KeystrokeListenerCB function pointer.
225 * Add an in-process callback function to an existing #KeystrokeListener.
227 * Returns: #TRUE if successful, otherwise #FALSE.
231 KeystrokeListener_addCallback (KeystrokeListener *listener,
232 KeystrokeListenerCB callback);
235 * KeystrokeListener_removeCallback:
236 * @listener: the #KeystrokeListener instance to modify.
237 * @callback: an #KeystrokeListenerCB function pointer.
239 * Remove an in-process callback function from an existing #KeystrokeListener.
241 * Returns: #TRUE if successful, otherwise #FALSE.
245 KeystrokeListener_removeCallback (KeystrokeListener *listener,
246 KeystrokeListenerCB callback);
250 * Global functions serviced by the registry
255 * registerGlobalEventListener:
256 * @listener: the #AccessibleEventListener to be registered against an event type.
257 * @callback: a character string indicating the type of events for which
258 * notification is requested. Format is
259 * EventClass:major_type:minor_type:detail
260 * where all subfields other than EventClass are optional.
261 * EventClasses include "Focus", "Window", "Mouse",
262 * and toolkit events (e.g. "Gtk", "AWT").
263 * Examples: "focus:", "Gtk:GtkWidget:button_press_event".
265 * NOTE: this string may be UTF-8, but should not contain byte value 56 (ascii ':'),
266 * except as a delimiter, since non-UTF-8 string delimiting
267 * functions are used internally. In general, listening to
268 * toolkit-specific events is not recommended.
270 * Add an in-process callback function to an existing AccessibleEventListener.
272 * Returns: #TRUE if successful, otherwise #FALSE.
276 registerGlobalEventListener (AccessibleEventListener *listener,
282 * Get the number of virtual desktops.
283 * NOTE: currently multiple virtual desktops are not implemented, this
284 * function always returns '1'.
286 * Returns: an integer indicating the number of active virtual desktops.
294 * @i: an integer indicating which of the accessible desktops is to be returned.
296 * Get the virtual desktop indicated by index @i.
297 * NOTE: currently multiple virtual desktops are not implemented, this
298 * function always returns '1'.
300 * Returns: a pointer to the 'i-th' virtual desktop's #Accessible representation.
308 * @list: a pointer to an array of #Accessible objects.
310 * Get the list of virtual desktops. On return, @list will point
311 * to a newly-created array of virtual desktop pointers.
312 * It is the responsibility of the caller to free this array when
313 * it is no longer needed.
315 * Not Yet Implemented.
317 * Returns: an integer indicating how many virtual desktops have been
318 * placed in the list pointed to by parameter @list.
321 getDesktopList (Accessible **list);
324 * registerKeystrokeListener:
325 * @listener: a pointer to the #KeystrokeListener for which
326 * keystroke events are requested.
328 * Not Yet Implemented.
332 registerKeystrokeListener (KeystrokeListener *listener,
335 KeyEventMask eventmask,
336 KeyListenerSyncType sync_type);
340 * @keycode: a #long indicating the keycode of the key event
342 * @synth_type: a #KeySynthType indicating whether this should be a
343 * KEY_PRESS, KEY_RELEASE, both (KEY_PRESSRELEASE), or
344 * a press/release pair for a KEYSYM.
346 * Synthesize a keyboard event (as if a hardware keyboard event occurred in the
347 * current UI context).
351 generateKeyEvent (long keyCode, KeySynthType synth_type);
354 * generateMouseEvent:
355 * @x: a #long indicating the screen x coordinate of the mouse event.
356 * @y: a #long indicating the screen y coordinate of the mouse event.
357 * @name: a string indicating which mouse event to be synthesized
358 * (e.g. "button1", "button2", "mousemove").
360 * Synthesize a mouse event at a specific screen coordinate.
361 * Not Yet Implemented.
365 generateMouseEvent (long x, long y, char *name);
369 * Accessible function prototypes
375 * @obj: a pointer to the #Accessible object on which to operate.
377 * Increment the reference count for an #Accessible object.
379 * Returns: (no return code implemented yet).
383 Accessible_ref (Accessible *obj);
387 * @obj: a pointer to the #Accessible object on which to operate.
389 * Decrement the reference count for an #Accessible object.
391 * Returns: (no return code implemented yet).
395 Accessible_unref (Accessible *obj);
398 * Accessible_getName:
399 * @obj: a pointer to the #Accessible object on which to operate.
401 * Get the name of an #Accessible object.
403 * Returns: a UTF-8 string indicating the name of the #Accessible object.
407 Accessible_getName (Accessible *obj);
410 * Accessible_getDescription:
411 * @obj: a pointer to the #Accessible object on which to operate.
413 * Get the description of an #Accessible object.
415 * Returns: a UTF-8 string describing the #Accessible object.
419 Accessible_getDescription (Accessible *obj);
422 * Accessible_getParent:
423 * @obj: a pointer to the #Accessible object to query.
425 * Get an #Accessible object's parent container.
427 * Returns: a pointer to the #Accessible object which contains the given
428 * #Accessible instance, or NULL if the @obj has no parent container.
432 Accessible_getParent (Accessible *obj);
435 * Accessible_getChildCount:
437 * @obj: a pointer to the #Accessible object on which to operate.
439 * Get the number of children contained by an #Accessible object.
441 * Returns: a #long indicating the number of #Accessible children
442 * contained by an #Accessible object.
446 Accessible_getChildCount (Accessible *obj);
449 * Accessible_getChildAtIndex:
451 * @obj: a pointer to the #Accessible object on which to operate.
452 * @childIndex: a #long indicating which child is specified.
454 * Get the #Accessible child of an #Accessible object at a given index.
456 * Returns: a pointer to the #Accessible child object at index
461 Accessible_getChildAtIndex (Accessible *obj,
465 * Accessible_getIndexInParent:
467 * @obj: a pointer to the #Accessible object on which to operate.
469 * Get the index of an #Accessible object in its containing #Accessible.
471 * Returns: a #long indicating the index of the #Accessible object
472 * in its parent (i.e. containing) #Accessible instance,
473 * or -1 if @obj has no containing parent.
477 Accessible_getIndexInParent (Accessible *obj);
480 * Accessible_getRelationSet:
482 * Not Yet Implemented.
485 AccessibleRelation **
486 Accessible_getRelationSet (Accessible *obj);
489 * Accessible_getRole:
490 * @obj: a pointer to the #Accessible object on which to operate.
492 * Get the UI role of an #Accessible object.
494 * Returns: a UTF-8 string indicating the UI role of the #Accessible object.
498 Accessible_getRole (Accessible *obj);
501 * Accessible_getStateSet:
503 * Not Yet Implemented.
507 Accessible_getStateSet (Accessible *obj);
509 /* Interface query methods */
512 * Accessible_isAction:
513 * @obj: a pointer to the #Accessible instance to query.
515 * Query whether the specified #Accessible implements #AccessibleAction.
516 * Not Yet Implemented.
518 * Returns: #TRUE if @obj implements the #AccessibleAction interface,
522 Accessible_isAction (Accessible *obj);
525 * Accessible_isComponent:
526 * @obj: a pointer to the #Accessible instance to query.
528 * Query whether the specified #Accessible implements #AccessibleComponent.
530 * Returns: #TRUE if @obj implements the #AccessibleComponent interface,
534 Accessible_isComponent (Accessible *obj);
537 * Accessible_isEditableText:
538 * @obj: a pointer to the #Accessible instance to query.
540 * Query whether the specified #Accessible implements #AccessibleEditableText.
541 * Not Yet Implemented.
543 * Returns: #TRUE if @obj implements the #AccessibleEditableText interface,
547 Accessible_isEditableText (Accessible *obj);
550 * Accessible_isHypertext:
551 * @obj: a pointer to the #Accessible instance to query.
553 * Query whether the specified #Accessible implements #AccessibleHypertext.
554 * Not Yet Implemented.
556 * Returns: #TRUE if @obj implements the #AccessibleHypertext interface,
560 Accessible_isHypertext (Accessible *obj);
563 * Accessible_isImage:
564 * @obj: a pointer to the #Accessible instance to query.
566 * Query whether the specified #Accessible implements #AccessibleImage.
567 * Not Yet Implemented.
569 * Returns: #TRUE if @obj implements the #AccessibleImage interface,
573 Accessible_isImage (Accessible *obj);
576 * Accessible_isSelection:
577 * @obj: a pointer to the #Accessible instance to query.
579 * Query whether the specified #Accessible implements #AccessibleSelection.
580 * Not Yet Implemented.
582 * Returns: #TRUE if @obj implements the #AccessibleSelection interface,
586 Accessible_isSelection (Accessible *obj);
589 * Accessible_isTable:
590 * @obj: a pointer to the #Accessible instance to query.
592 * Query whether the specified #Accessible implements #AccessibleTable.
593 * Not Yet Implemented.
595 * Returns: #TRUE if @obj implements the #AccessibleTable interface,
599 Accessible_isTable (Accessible *obj);
603 * @obj: a pointer to the #Accessible instance to query.
605 * Query whether the specified #Accessible implements #AccessibleText.
606 * Not Yet Implemented.
608 * Returns: #TRUE if @obj implements the #AccessibleText interface,
612 Accessible_isText (Accessible *obj);
615 * Accessible_getAction:
617 * Not Yet Implemented.
621 Accessible_getAction (Accessible *obj);
624 * Accessible_getComponent:
625 * @obj: a pointer to the #Accessible instance to query.
627 * Get the #AccessibleComponent interface for an #Accessible.
629 * Returns: a pointer to an #AccessibleComponent interface instance, or
630 * NULL if @obj does not implement #AccessibleComponent.
632 AccessibleComponent *
633 Accessible_getComponent (Accessible *obj);
636 * Accessible_getEditableText:
638 * Not Yet Implemented.
641 AccessibleEditableText *
642 Accessible_getEditableText (Accessible *obj);
645 * Accessible_getHypertext:
647 * Not Yet Implemented.
650 AccessibleHypertext *
651 Accessible_getHypertext (Accessible *obj);
654 * Accessible_getImage:
656 * Not Yet Implemented.
660 Accessible_getImage (Accessible *obj);
663 * Accessible_getSelection:
665 * Not Yet Implemented.
668 AccessibleSelection *
669 Accessible_getSelection (Accessible *obj);
672 * Accessible_getTable:
674 * Not Yet Implemented.
678 Accessible_getTable (Accessible *obj);
681 * Accessible_getText:
683 * Not Yet Implemented.
687 Accessible_getText (Accessible *obj);
690 * Accessible_queryInterface:
691 * @obj: a pointer to the #Accessible instance to query.
692 * @interface_name: a UTF-8 character string specifiying the requested interface.
694 * Query an #Accessible object to for a named interface.
696 * Returns: an instance of the named interface object, if it is implemented
697 * by @obj, or NULL otherwise.
701 Accessible_queryInterface (Accessible *obj, char *interface_name);
705 * AccessibleAction function prototypes
710 AccessibleAction_ref (
711 AccessibleAction *obj);
714 AccessibleAction_unref (AccessibleAction *obj);
717 AccessibleAction_getNActions (AccessibleAction *obj);
720 * AccessibleAction_getDescription:
721 * @obj: a pointer to the #AccessibleAction to query.
723 * Get the description of 'i-th' action invokable on an
724 * object implementing #AccessibleAction.
726 * Not Yet Implemented.
728 * Returns: a UTF-8 string describing the 'i-th' invokable action.
732 AccessibleAction_getDescription (AccessibleAction *obj,
736 AccessibleAction_doAction (AccessibleAction *obj,
740 AccessibleAction_getKeyBinding (AccessibleAction *obj,
745 * AccessibleApplication function prototypes
750 * AccessibleApplication_unref:
751 * @obj: a pointer to the #AccessibleApplication on which to operate.
753 * Decrement the reference count for an #AccessibleApplication.
755 * Returns: (no return code implemented yet).
759 AccessibleApplication_ref (AccessibleApplication *obj);
762 * AccessibleApplication_unref:
763 * @obj: a pointer to the #AccessibleApplication object on which to operate.
765 * Decrement the reference count for an #AccessibleApplication.
767 * Returns: (no return code implemented yet).
771 AccessibleApplication_unref (AccessibleApplication *obj);
774 * AccessibleApplication_getToolkitName:
775 * @obj: a pointer to the #AccessibleApplication to query.
777 * Get the name of the UI toolkit used by an #AccessibleApplication.
779 * Returns: a UTF-8 string indicating which UI toolkit is
780 * used by an application.
784 AccessibleApplication_getToolkitName (AccessibleApplication *obj);
787 * AccessibleApplication_getVersion:
788 * @obj: a pointer to the #AccessibleApplication being queried.
790 * Get the version of the at-spi bridge exported by an
791 * #AccessibleApplication instance.
793 * Returns: a UTF-8 string indicating the application's
798 AccessibleApplication_getVersion (AccessibleApplication *obj);
801 * AccessibleApplication_getID:
802 * @obj: a pointer to the #AccessibleApplication being queried.
804 * Get the unique ID assigned by the Registry to an
805 * #AccessibleApplication instance.
806 * (Not Yet Implemented by the registry).
808 * Returns: a unique #long integer associated with the application
809 * by the Registry, or 0 if the application is not registered.
812 AccessibleApplication_getID (AccessibleApplication *obj);
815 * AccessibleApplication_pause:
817 * Attempt to pause the application (used when client event queue is
819 * Not Yet Implemented.
821 * Returns: #TRUE if the application was paused successfully, #FALSE otherwise.
825 AccessibleApplication_pause (AccessibleApplication *obj);
828 * AccessibleApplication_pause:
830 * Attempt to resume the application (used after #AccessibleApplication_pause).
831 * Not Yet Implemented.
833 * Returns: #TRUE if application processing resumed successfully, #FALSE otherwise.
837 AccessibleApplication_resume (AccessibleApplication *obj);
841 * AccessibleComponent function prototypes
846 AccessibleComponent_ref (AccessibleComponent *obj);
849 AccessibleComponent_unref (AccessibleComponent *obj);
852 AccessibleComponent_contains (AccessibleComponent *obj,
855 AccessibleCoordType ctype);
858 AccessibleComponent_getAccessibleAtPoint (AccessibleComponent *obj,
861 AccessibleCoordType ctype);
864 * AccessibleComponent_getExtents:
865 * @obj: a pointer to the #AccessibleComponent to query.
866 * @x: a pointer to a #long into which the minimum x coordinate will be returned.
867 * @y: a pointer to a #long into which the minimum y coordinate will be returned.
868 * @width: a pointer to a #long into which the x extents (width) will be returned.
869 * @height: a pointer to a #long into which the y extents (height) will be returned.
870 * @ctype: the desired coordinate system into which to return the results,
871 * (e.g. COORD_TYPE_WINDOW, COORD_TYPE_SCREEN).
873 * Get the bounding box of the specified #AccessibleComponent.
877 AccessibleComponent_getExtents (AccessibleComponent *obj,
882 AccessibleCoordType ctype);
885 AccessibleComponent_getPosition (AccessibleComponent *obj,
888 AccessibleCoordType ctype);
891 AccessibleComponent_getSize (AccessibleComponent *obj,
896 AccessibleComponent_grabFocus (AccessibleComponent *obj);
900 * AccessibleEditableText function prototypes
905 AccessibleEditableText_ref (AccessibleEditableText *obj);
908 AccessibleEditableText_unref (AccessibleEditableText *obj);
911 AccessibleEditableText_setRunAttributes (AccessibleEditableText *obj,
912 const char *attributes,
913 long startPos, long endPos);
916 AccessibleEditableText_setTextContents (AccessibleEditableText *obj,
917 const char *newContents);
920 AccessibleEditableText_insertText (AccessibleEditableText *obj,
926 AccessibleEditableText_copyText (AccessibleText *obj,
931 AccessibleEditableText_cutText (AccessibleEditableText *obj,
936 AccessibleEditableText_deleteText (AccessibleEditableText *obj,
941 AccessibleEditableText_pasteText (AccessibleEditableText *obj,
946 * AccessibleHyperlink function prototypes
951 AccessibleHyperlink_ref (AccessibleHyperlink *obj);
954 AccessibleHyperlink_unref (AccessibleHyperlink *obj);
957 AccessibleHyperlink_getNAnchors (AccessibleHyperlink *obj);
960 AccessibleHyperlink_getURI (AccessibleHyperlink *obj,
964 AccessibleHyperlink_getObject (AccessibleHyperlink *obj,
968 AccessibleHyperlink_getIndexRange (AccessibleHyperlink *obj,
973 AccessibleHyperlink_isValid (AccessibleHyperlink *obj);
977 * AccessibleHypertext function prototypes
982 AccessibleHypertext_ref (AccessibleHypertext *obj);
985 AccessibleHypertext_unref (AccessibleHypertext *obj);
988 AccessibleHypertext_getNLinks (AccessibleHypertext *obj);
990 AccessibleHyperlink *
991 AccessibleHyperText_getLink (AccessibleHypertext *obj,
995 AccessibleHypertext_getLinkIndex (AccessibleHypertext *obj,
996 long characterIndex);
1000 * AccessibleImage function prototypes
1005 AccessibleImage_ref (AccessibleImage *obj);
1008 AccessibleImage_unref (AccessibleImage *obj);
1011 AccessibleImage_getImageDescription (AccessibleImage *obj);
1014 AccessibleImage_getImageSize (AccessibleImage *obj,
1019 AccessibleImage_getImagePosition (AccessibleImage *obj,
1022 AccessibleCoordType ctype);
1026 * AccessibleRelation function prototypes
1031 AccessibleRelation_ref (AccessibleRelation *obj);
1034 AccessibleRelation_unref (AccessibleRelation *obj);
1037 AccessibleRelation_getRelationType (AccessibleRelation *obj);
1040 AccessibleRelation_getTarget (AccessibleRelation *obj);
1046 * AccessibleSelection function prototypes
1051 AccessibleSelection_ref (AccessibleSelection *obj);
1054 AccessibleSelection_unref (AccessibleSelection *obj);
1057 AccessibleSelection_getNSelectedChildren (AccessibleSelection *obj);
1060 AccessibleSelection_getSelectedChild (AccessibleSelection *obj,
1061 long selectedChildIndex);
1064 AccessibleSelection_selectChild (AccessibleSelection *obj,
1068 AccessibleSelection_deselectSelectedChild (AccessibleSelection *obj,
1069 long selectedChildIndex);
1072 AccessibleSelection_isChildSelected (AccessibleSelection *obj,
1076 AccessibleSelection_selectAll (AccessibleSelection *obj);
1079 AccessibleSelection_clearSelection (AccessibleSelection *obj);
1084 * AccessibleStateSet function prototypes
1089 AccessibleStateSet_ref (AccessibleStateSet *obj);
1092 AccessibleStateSet_unref (AccessibleStateSet *obj);
1095 AccessibleStateSet_contains (AccessibleStateSet *obj,
1096 ACCESSIBLE_STATE state);
1099 AccessibleStateSet_add (AccessibleStateSet *obj,
1100 ACCESSIBLE_STATE state);
1103 AccessibleStateSet_remove (AccessibleStateSet *obj,
1104 ACCESSIBLE_STATE state);
1107 AccessibleStateSet_equals (AccessibleStateSet *obj,
1108 AccessibleStateSet *obj2);
1111 AccessibleStateSet_compare (AccessibleStateSet *obj,
1112 AccessibleStateSet *obj2,
1113 AccessibleStateSet **differenceSet);
1116 AccessibleStateSet_isEmpty (AccessibleStateSet *obj);
1121 * AccessibleTable function prototypes
1126 AccessibleTable_ref (AccessibleTable *obj);
1129 AccessibleTable_unref (AccessibleTable *obj);
1132 AccessibleTable_getCaption (AccessibleTable *obj);
1135 AccessibleTable_getSummary (AccessibleTable *obj);
1138 AccessibleTable_getNRows (AccessibleTable *obj);
1141 AccessibleTable_getNColumns (AccessibleTable *obj);
1144 AccessibleTable_refAt (AccessibleTable *obj,
1149 AccessibleTable_getIndexAt (AccessibleTable *obj,
1154 AccessibleTable_getRowAtIndex (AccessibleTable *obj,
1158 AccessibleTable_getColumnAtIndex (AccessibleTable *obj,
1162 AccessibleTable_getRowDescription (AccessibleTable *obj,
1166 AccessibleTable_getColumnDescription (AccessibleTable *obj,
1170 AccessibleTable_getRowExtentAt (AccessibleTable *obj,
1175 AccessibleTable_getColumnExtentAt (AccessibleTable *obj,
1180 AccessibleTable_getRowHeader (AccessibleTable *obj,
1184 AccessibleTable_getColumnHeader (AccessibleTable *obj,
1188 AccessibleTable_getNSelectedRows (AccessibleTable *obj);
1191 AccessibleTable_getSelectedRows (AccessibleTable *obj,
1192 long **selectedRows);
1195 AccessibleTable_getNSelectedColumns (AccessibleTable *obj);
1198 AccessibleTable_getSelectedColumns (AccessibleTable *obj,
1199 long **selectedColumns);
1202 AccessibleTable_isRowSelected (AccessibleTable *obj,
1206 AccessibleTable_isColumnSelected (AccessibleTable *obj,
1210 AccessibleTable_isSelected (AccessibleTable *obj,
1216 * AccessibleText function prototypes
1221 AccessibleText_ref (AccessibleText *obj);
1224 AccessibleText_unref (AccessibleText *obj);
1227 AccessibleText_getCharacterCount (AccessibleText *obj);
1230 AccessibleText_getText (AccessibleText *obj,
1235 AccessibleText_getCaretOffset (AccessibleText *obj);
1238 AccessibleText_getAttributes (AccessibleText *obj,
1245 AccessibleText_setCaretOffset (AccessibleText *obj,
1249 AccessibleText_getTextBeforeOffset (AccessibleText *obj,
1251 TEXT_BOUNDARY_TYPE type,
1252 long *startOffset, long *endOffset);
1255 AccessibleText_getTextAtOffset (AccessibleText *obj,
1257 TEXT_BOUNDARY_TYPE type,
1258 long *startOffset, long *endOffset);
1261 AccessibleText_getTextAfterOffset (AccessibleText *obj,
1263 TEXT_BOUNDARY_TYPE type,
1264 long *startOffset, long *endOffset);
1266 AccessibleText_getCharacterAtOffset (AccessibleText *obj,
1270 AccessibleText_getCharacterExtents (AccessibleText *obj,
1275 long *height, AccessibleCoordType type);
1278 AccessibleText_getOffsetAtPoint (AccessibleText *obj,
1280 long y, AccessibleCoordType type);
1283 AccessibleText_getNSelections (AccessibleText *obj);
1286 AccessibleText_getSelection (AccessibleText *obj,
1287 long selectionNum, long *startOffset,
1292 AccessibleText_addSelection (AccessibleText *obj,
1293 long startOffset, long endOffset);
1296 AccessibleText_removeSelection (AccessibleText *obj,
1300 AccessibleText_setSelection (AccessibleText *obj,
1307 * AccessibleValue Function Prototypes:
1312 AccessibleValue_getMinimumValue (AccessibleValue *value);
1315 AccessibleValue_getCurrentValue (AccessibleValue *value);
1318 AccessibleValue_getMaximumValue (AccessibleValue *value);
1321 AccessibleValue_setCurrentValue (AccessibleValue *value,
1325 spi_freeString (char *s);