X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=cspi%2Fspi.h;h=7c7b66af97a8ff5a87800b4d28bbf22afc94772a;hb=b7faf0a7a57b145e2cc6c67887652908fc5db9c3;hp=5b4e92a84558139e027fea7c0de19d9c46a65844;hpb=af1cfd571d14fa5245de225f9868b54401e3c484;p=platform%2Fcore%2Fuifw%2Fat-spi2-atk.git diff --git a/cspi/spi.h b/cspi/spi.h index 5b4e92a..7c7b66a 100644 --- a/cspi/spi.h +++ b/cspi/spi.h @@ -2,10 +2,17 @@ #ifndef _SPI_H #define _SPI_H +/* Implementation private definitions */ #include "spi-impl.h" -/* definitions for ACCESSIBLE_STATE */ +/* + * Definitions for ACCESSIBLE_STATE , ACCESSIBLE_ROLE, AccessibleEvent, + * and event listeners. + */ + +#include "spi-roletypes.h" #include "spi-statetypes.h" +#include "spi-listener.h" /* * @@ -45,51 +52,237 @@ typedef enum +typedef enum _AccessibleCoordType { + COORD_TYPE_WINDOW, + COORD_TYPE_SCREEN +} AccessibleCoordType; + + /* * - * Structure used to encapsulate event information + * Basic SPI initialization and event loop function prototypes * */ -typedef struct _AccessibleEvent { - Accessible *source; - char *type; - char *detail1; - char *detail2; -} AccessibleEvent; +/** + * SPI_init: + * + * Connects to the accessibility registry and initializes the SPI. + * + * Returns: 0 on success, otherwise an integer error code. + **/ +int +SPI_init (void); +/** + * SPI_event_main: + * @isGNOMEApp: a #boolean indicating whether the client of the SPI + * will use the Gnome event loop or not. + * + * Starts/enters the main event loop for the SPI services. + * + * (NOTE: This method does not return control, it is exited via a call to exit() + * from within an event handler). + * + **/ +void +SPI_event_main (boolean isGNOMEApp); +/** + * SPI_event_is_ready: + * + * Checks to see if an SPI event is waiting in the event queue. + * Used by clients that don't wish to use SPI_event_main(). + * Not Yet Implemented. + * + * Returns: #TRUE if an event is waiting, otherwise #FALSE. + * + **/ +boolean +SPI_eventIsReady (); -/* +/** + * SPI_nextEvent: * - * Function prototype typedef for AccessibleEventListener + * Gets the next event in the SPI event queue; blocks if no event + * is pending. + * Used by clients that don't wish to use SPI_event_main(). + * Not Yet Implemented. * - */ + * Returns: the next #AccessibleEvent in the SPI event queue. + * + **/ +AccessibleEvent * +SPI_nextEvent (boolean waitForEvent); -typedef void (*AccessibleEventListener) (AccessibleEvent *e); +/** + * SPI_exit: + * + * Disconnects from the Accessibility Registry and releases resources. + * Not Yet Implemented. + * + **/ +void +SPI_exit (void); +/* + * Event Listener creation and support. + */ +/** + * createEventListener: + * @callback : an #AccessibleEventListenerCB callback function, or NULL. + * + * Create a new #AccessibleEventListener with a specified callback function. + * + * Returns: a pointer to a newly-created #AccessibleEventListener. + * + **/ +AccessibleEventListener * +createEventListener (AccessibleEventListenerCB callback); + +/** + * EventListener_addCallback: + * @listener: the #AccessibleEventListener instance to modify. + * @callback: an #AccessibleEventListenerCB function pointer. + * + * Add an in-process callback function to an existing AccessibleEventListener. + * + * Returns: #TRUE if successful, otherwise #FALSE. + * + **/ +boolean +EventListener_addCallback (AccessibleEventListener *listener, + AccessibleEventListenerCB callback); + +/** + * EventListener_removeCallback: + * @listener: the #AccessibleEventListener instance to modify. + * @callback: an #AccessibleEventListenerCB function pointer. + * + * Remove an in-process callback function from an existing AccessibleEventListener. + * + * Returns: #TRUE if successful, otherwise #FALSE. + * + **/ +boolean +EventListener_removeCallback (AccessibleEventListener *listener, + AccessibleEventListenerCB callback); /* * - * Basic SPI initialization and event loop function prototypes + * Global functions serviced by the registry * */ -int -SPI_init (void); +/** + * registerGlobalEventListener: + * @listener: the #AccessibleEventListener to be registered against an event type. + * @callback: a character string indicating the type of events for which + * notification is requested. Format is + * EventClass:major_type:minor_type:detail + * where all subfields other than EventClass are optional. + * EventClasses include "Focus", "Window", "Mouse", + * and toolkit events (e.g. "Gtk", "AWT"). + * Examples: "focus:", "Gtk:GtkWidget:button_press_event". + * + * NOTE: this string may be UTF-8, but should not contain byte value 56 (ascii ':'), + * except as a delimiter, since non-UTF-8 string delimiting + * functions are used internally. In general, listening to + * toolkit-specific events is not recommended. + * + * Add an in-process callback function to an existing AccessibleEventListener. + * + * Returns: #TRUE if successful, otherwise #FALSE. + * + **/ +boolean +registerGlobalEventListener (AccessibleEventListener *listener, + char *eventType); -void -SPI_event_main (boolean isGNOMEApp); +/** + * getDesktopCount: + * + * Get the number of virtual desktops. + * NOTE: currently multiple virtual desktops are not implemented, this + * function always returns '1'. + * + * Returns: an integer indicating the number of active virtual desktops. + * + **/ +int +getDesktopCount (); -boolean -SPI_eventIsReady (); +/** + * getDesktop: + * @i: an integer indicating which of the accessible desktops is to be returned. + * + * Get the virtual desktop indicated by index @i. + * NOTE: currently multiple virtual desktops are not implemented, this + * function always returns '1'. + * + * Returns: a pointer to the 'i-th' virtual desktop's #Accessible representation. + * + **/ +Accessible* +getDesktop (int n); -AccessibleEvent * -SPI_nextEvent (boolean waitForEvent); +/** + * getDesktopList: + * @list: a pointer to an array of #Accessible objects. + * + * Get the list of virtual desktops. On return, @list will point + * to a newly-created array of virtual desktop pointers. + * It is the responsibility of the caller to free this array when + * it is no longer needed. + * + * Not Yet Implemented. + * + * Returns: an integer indicating how many virtual desktops have been + * placed in the list pointed to by parameter @list. + **/ +int +getDesktopList (Accessible **list); +/** + * registerKeystrokeListener: + * @listener: a pointer to the #KeystrokeListener for which + * keystroke events are requested. + * + * Not Yet Implemented. + * + **/ void -SPI_exit (void); +registerKeystrokeListener (KeystrokeListener *listener); + +/** + * generateKeyEvent: + * @keycode: a #long indicating the keycode of the key event + * being synthesized. + * @meta: a #long indicating the key modifiers to be sent + * with the event, if any. + * + * Synthesize a keyboard event (as if a hardware keyboard event occurred in the + * current UI context). + * Not Yet Implemented. + * + **/ +void +generateKeyEvent (long keyCode, long meta); + +/** + * generateMouseEvent: + * @x: a #long indicating the screen x coordinate of the mouse event. + * @y: a #long indicating the screen y coordinate of the mouse event. + * @name: a string indicating which mouse event to be synthesized + * (e.g. "button1", "button2", "mousemove"). + * + * Synthesize a mouse event at a specific screen coordinate. + * Not Yet Implemented. + * + **/ +void +generateMouseEvent (long x, long y, char *name); /* * @@ -97,40 +290,335 @@ SPI_exit (void); * */ +/** + * Accessible_ref: + * @obj: a pointer to the #Accessible object on which to operate. + * + * Increment the reference count for an #Accessible object. + * + * Returns: (no return code implemented yet). + * + **/ int Accessible_ref (Accessible *obj); +/** + * Accessible_unref: + * @obj: a pointer to the #Accessible object on which to operate. + * + * Decrement the reference count for an #Accessible object. + * + * Returns: (no return code implemented yet). + * + **/ int Accessible_unref (Accessible *obj); +/** + * Accessible_getName: + * @obj: a pointer to the #Accessible object on which to operate. + * + * Get the name of an #Accessible object. + * + * Returns: a UTF-8 string indicating the name of the #Accessible object. + * + **/ char * Accessible_getName (Accessible *obj); +/** + * Accessible_getDescription: + * @obj: a pointer to the #Accessible object on which to operate. + * + * Get the description of an #Accessible object. + * + * Returns: a UTF-8 string describing the #Accessible object. + * + **/ char * Accessible_getDescription (Accessible *obj); +/** + * Accessible_getParent: + * @obj: a pointer to the #Accessible object to query. + * + * Get an #Accessible object's parent container. + * + * Returns: a pointer to the #Accessible object which contains the given + * #Accessible instance, or NULL if the @obj has no parent container. + * + **/ Accessible * Accessible_getParent (Accessible *obj); +/** + * Accessible_getChildCount: + * + * @obj: a pointer to the #Accessible object on which to operate. + * + * Get the number of children contained by an #Accessible object. + * + * Returns: a #long indicating the number of #Accessible children + * contained by an #Accessible object. + * + **/ long Accessible_getChildCount (Accessible *obj); +/** + * Accessible_getChildAtIndex: + * + * @obj: a pointer to the #Accessible object on which to operate. + * @childIndex: a #long indicating which child is specified. + * + * Get the #Accessible child of an #Accessible object at a given index. + * + * Returns: a pointer to the #Accessible child object at index + * @childIndex. + * + **/ Accessible * Accessible_getChildAtIndex (Accessible *obj, long childIndex); +/** + * Accessible_getIndexInParent: + * + * @obj: a pointer to the #Accessible object on which to operate. + * + * Get the index of an #Accessible object in its containing #Accessible. + * + * Returns: a #long indicating the index of the #Accessible object + * in its parent (i.e. containing) #Accessible instance, + * or -1 if @obj has no containing parent. + * + **/ long Accessible_getIndexInParent (Accessible *obj); +/** + * Accessible_getRelationSet: + * + * Not Yet Implemented. + * + **/ AccessibleRelation ** Accessible_getRelationSet (Accessible *obj); +/** + * Accessible_getRole: + * @obj: a pointer to the #Accessible object on which to operate. + * + * Get the UI role of an #Accessible object. + * + * Returns: a UTF-8 string indicating the UI role of the #Accessible object. + * + **/ char * Accessible_getRole (Accessible *obj); +/** + * Accessible_getStateSet: + * + * Not Yet Implemented. + * + **/ AccessibleStateSet * Accessible_getStateSet (Accessible *obj); +/* Interface query methods */ + +/** + * Accessible_isAction: + * @obj: a pointer to the #Accessible instance to query. + * + * Query whether the specified #Accessible implements #AccessibleAction. + * Not Yet Implemented. + * + * Returns: #TRUE if @obj implements the #AccessibleAction interface, + * #FALSE otherwise. + **/ +boolean +Accessible_isAction (Accessible *obj); + +/** + * Accessible_isComponent: + * @obj: a pointer to the #Accessible instance to query. + * + * Query whether the specified #Accessible implements #AccessibleComponent. + * + * Returns: #TRUE if @obj implements the #AccessibleComponent interface, + * #FALSE otherwise. + **/ +boolean +Accessible_isComponent (Accessible *obj); + +/** + * Accessible_isEditableText: + * @obj: a pointer to the #Accessible instance to query. + * + * Query whether the specified #Accessible implements #AccessibleEditableText. + * Not Yet Implemented. + * + * Returns: #TRUE if @obj implements the #AccessibleEditableText interface, + * #FALSE otherwise. + **/ +boolean +Accessible_isEditableText (Accessible *obj); + +/** + * Accessible_isHypertext: + * @obj: a pointer to the #Accessible instance to query. + * + * Query whether the specified #Accessible implements #AccessibleHypertext. + * Not Yet Implemented. + * + * Returns: #TRUE if @obj implements the #AccessibleHypertext interface, + * #FALSE otherwise. + **/ +boolean +Accessible_isHypertext (Accessible *obj); + +/** + * Accessible_isImage: + * @obj: a pointer to the #Accessible instance to query. + * + * Query whether the specified #Accessible implements #AccessibleImage. + * Not Yet Implemented. + * + * Returns: #TRUE if @obj implements the #AccessibleImage interface, + * #FALSE otherwise. +**/ +boolean +Accessible_isImage (Accessible *obj); + +/** + * Accessible_isSelection: + * @obj: a pointer to the #Accessible instance to query. + * + * Query whether the specified #Accessible implements #AccessibleSelection. + * Not Yet Implemented. + * + * Returns: #TRUE if @obj implements the #AccessibleSelection interface, + * #FALSE otherwise. +**/ +boolean +Accessible_isSelection (Accessible *obj); + +/** + * Accessible_isTable: + * @obj: a pointer to the #Accessible instance to query. + * + * Query whether the specified #Accessible implements #AccessibleTable. + * Not Yet Implemented. + * + * Returns: #TRUE if @obj implements the #AccessibleTable interface, + * #FALSE otherwise. +**/ +boolean +Accessible_isTable (Accessible *obj); + +/** + * Accessible_isText: + * @obj: a pointer to the #Accessible instance to query. + * + * Query whether the specified #Accessible implements #AccessibleText. + * Not Yet Implemented. + * + * Returns: #TRUE if @obj implements the #AccessibleText interface, + * #FALSE otherwise. +**/ +boolean +Accessible_isText (Accessible *obj); + +/** + * Accessible_getAction: + * + * Not Yet Implemented. + * + **/ +AccessibleAction * +Accessible_getAction (Accessible *obj); + +/** + * Accessible_getComponent: + * @obj: a pointer to the #Accessible instance to query. + * + * Get the #AccessibleComponent interface for an #Accessible. + * + * Returns: a pointer to an #AccessibleComponent interface instance, or + * NULL if @obj does not implement #AccessibleComponent. + **/ +AccessibleComponent * +Accessible_getComponent (Accessible *obj); + +/** + * Accessible_getEditableText: + * + * Not Yet Implemented. + * + **/ +AccessibleEditableText * +Accessible_getEditableText (Accessible *obj); + +/** + * Accessible_getHypertext: + * + * Not Yet Implemented. + * + **/ +AccessibleHypertext * +Accessible_getHypertext (Accessible *obj); + +/** + * Accessible_getImage: + * + * Not Yet Implemented. + * + **/ +AccessibleImage * +Accessible_getImage (Accessible *obj); + +/** + * Accessible_getSelection: + * + * Not Yet Implemented. + * + **/ +AccessibleSelection * +Accessible_getSelection (Accessible *obj); + +/** + * Accessible_getTable: + * + * Not Yet Implemented. + * + **/ +AccessibleTable * +Accessible_getTable (Accessible *obj); + +/** + * Accessible_getText: + * + * Not Yet Implemented. + * + **/ +AccessibleText * +Accessible_getText (Accessible *obj); + +/** + * Accessible_queryInterface: + * @obj: a pointer to the #Accessible instance to query. + * @interface_name: a UTF-8 character string specifiying the requested interface. + * + * Query an #Accessible object to for a named interface. + * + * Returns: an instance of the named interface object, if it is implemented + * by @obj, or NULL otherwise. + * + **/ +GenericInterface * +Accessible_queryInterface (Accessible *obj, char *interface_name); /* * @@ -148,11 +636,23 @@ AccessibleAction_unref (AccessibleAction *obj); long AccessibleAction_getNActions (AccessibleAction *obj); +/** + * AccessibleAction_getDescription: + * @obj: a pointer to the #AccessibleAction to query. + * + * Get the description of 'i-th' action invokable on an + * object implementing #AccessibleAction. + * + * Not Yet Implemented. + * + * Returns: a UTF-8 string describing the 'i-th' invokable action. + * + **/ char * AccessibleAction_getDescription (AccessibleAction *obj, long index); -void +boolean AccessibleAction_doAction (AccessibleAction *obj, long index); @@ -166,24 +666,93 @@ AccessibleAction_getKeyBinding (AccessibleAction *obj, * */ +/** + * AccessibleApplication_unref: + * @obj: a pointer to the #AccessibleApplication on which to operate. + * + * Decrement the reference count for an #AccessibleApplication. + * + * Returns: (no return code implemented yet). + * + **/ int AccessibleApplication_ref (AccessibleApplication *obj); +/** + * AccessibleApplication_unref: + * @obj: a pointer to the #AccessibleApplication object on which to operate. + * + * Decrement the reference count for an #AccessibleApplication. + * + * Returns: (no return code implemented yet). + * + **/ int AccessibleApplication_unref (AccessibleApplication *obj); +/** + * AccessibleApplication_getToolkitName: + * @obj: a pointer to the #AccessibleApplication to query. + * + * Get the name of the UI toolkit used by an #AccessibleApplication. + * + * Returns: a UTF-8 string indicating which UI toolkit is + * used by an application. + * + **/ char * AccessibleApplication_getToolkitName (AccessibleApplication *obj); +/** + * AccessibleApplication_getVersion: + * @obj: a pointer to the #AccessibleApplication being queried. + * + * Get the version of the at-spi bridge exported by an + * #AccessibleApplication instance. + * + * Returns: a UTF-8 string indicating the application's + * at-spi version. + * + **/ char * AccessibleApplication_getVersion (AccessibleApplication *obj); +/** + * AccessibleApplication_getID: + * @obj: a pointer to the #AccessibleApplication being queried. + * + * Get the unique ID assigned by the Registry to an + * #AccessibleApplication instance. + * (Not Yet Implemented by the registry). + * + * Returns: a unique #long integer associated with the application + * by the Registry, or 0 if the application is not registered. + **/ long AccessibleApplication_getID (AccessibleApplication *obj); +/** + * AccessibleApplication_pause: + * + * Attempt to pause the application (used when client event queue is + * over-full). + * Not Yet Implemented. + * + * Returns: #TRUE if the application was paused successfully, #FALSE otherwise. + * + **/ boolean AccessibleApplication_pause (AccessibleApplication *obj); +/** + * AccessibleApplication_pause: + * + * Attempt to resume the application (used after #AccessibleApplication_pause). + * Not Yet Implemented. + * + * Returns: #TRUE if application processing resumed successfully, #FALSE otherwise. + * + **/ boolean AccessibleApplication_resume (AccessibleApplication *obj); @@ -211,6 +780,19 @@ AccessibleComponent_getAccessibleAtPoint (AccessibleComponent *obj, long y, AccessibleCoordType ctype); +/** + * AccessibleComponent_getExtents: + * @obj: a pointer to the #AccessibleComponent to query. + * @x: a pointer to a #long into which the minimum x coordinate will be returned. + * @y: a pointer to a #long into which the minimum y coordinate will be returned. + * @width: a pointer to a #long into which the x extents (width) will be returned. + * @height: a pointer to a #long into which the y extents (height) will be returned. + * @ctype: the desired coordinate system into which to return the results, + * (e.g. COORD_TYPE_WINDOW, COORD_TYPE_SCREEN). + * + * Get the bounding box of the specified #AccessibleComponent. + * + **/ void AccessibleComponent_getExtents (AccessibleComponent *obj, long *x, @@ -245,9 +827,14 @@ AccessibleEditableText_ref (AccessibleEditableText *obj); int AccessibleEditableText_unref (AccessibleEditableText *obj); +boolean +AccessibleEditableText_setRunAttributes (AccessibleEditableText *obj, + const char *attributes, + long startPos, long endPos); + void AccessibleEditableText_setTextContents (AccessibleEditableText *obj, - char *newContents); + const char *newContents); void AccessibleEditableText_insertText (AccessibleEditableText *obj, @@ -255,17 +842,6 @@ AccessibleEditableText_insertText (AccessibleEditableText *obj, char *text, long length); -boolean -AccessibleEditableText_selectText (AccessibleEditableText *obj, - long startPos, - long endPos); - -boolean -AccessibleEditableText_setAttributes (AccessibleEditableText *obj, - long startPos, - long endPos, - char *attributes); - void AccessibleEditableText_copyText (AccessibleText *obj, long startPos, @@ -287,16 +863,6 @@ AccessibleEditableText_pasteText (AccessibleEditableText *obj, /* * - * registerEventListener - * - */ - -boolean -RegisterGlobalEventListener (AccessibleEventListener listener, - char *eventType); - -/* - * * AccessibleHyperlink function prototypes * */ @@ -315,7 +881,7 @@ AccessibleHyperlink_getURI (AccessibleHyperlink *obj, long i); Accessible -AccessibleHyperlink_getAnchor (AccessibleHyperlink *obj, +AccessibleHyperlink_getObject (AccessibleHyperlink *obj, long i); void @@ -367,8 +933,8 @@ AccessibleImage_getImageDescription (AccessibleImage *obj); void AccessibleImage_getImageSize (AccessibleImage *obj, long *width, - long *height, - AccessibleCoordType ctype); + long *height); + void AccessibleImage_getImagePosition (AccessibleImage *obj, long *x, @@ -408,10 +974,10 @@ int AccessibleSelection_unref (AccessibleSelection *obj); long -AccessibleSelwection_getNSelectedChildren (AccessibleSelection *obj); +AccessibleSelection_getNSelectedChildren (AccessibleSelection *obj); Accessible * -AccessibleSelection_getSelectedChild (AccessibleSelection *obj, +AccessibleSelection_refSelectedChild (AccessibleSelection *obj, long selectedChildIndex); boolean @@ -495,7 +1061,7 @@ long AccessibleTable_getNColumns (AccessibleTable *obj); Accessible * -AccessibleTable_getAccessibleAt (AccessibleTable *obj, +AccessibleTable_refAt (AccessibleTable *obj, long row, long column); @@ -513,10 +1079,12 @@ AccessibleTable_getColumnAtIndex (AccessibleTable *obj, long index); char * -AccessibleTable_getRowDescription (AccessibleTable *obj); +AccessibleTable_getRowDescription (AccessibleTable *obj, + long row); char * -AccessibleTable_getColumnDescription (AccessibleTable *obj); +AccessibleTable_getColumnDescription (AccessibleTable *obj, + long column); long AccessibleTable_getRowExtentAt (AccessibleTable *obj, @@ -528,23 +1096,25 @@ AccessibleTable_getColumnExtentAt (AccessibleTable *obj, long row, long column); -AccessibleTable * -AccessibleTable_getRowHeaders (AccessibleTable *obj); +Accessible * +AccessibleTable_getRowHeader (AccessibleTable *obj, + long row); -AccessibleTable * -AccessibleTable_getColumnHeaders (AccessibleTable *obj); +Accessible * +AccessibleTable_getColumnHeader (AccessibleTable *obj, + long column); long AccessibleTable_getNSelectedRows (AccessibleTable *obj); -void +long AccessibleTable_getSelectedRows (AccessibleTable *obj, long **selectedRows); long AccessibleTable_getNSelectedColumns (AccessibleTable *obj); -void +long AccessibleTable_getSelectedColumns (AccessibleTable *obj, long **selectedColumns); @@ -584,6 +1154,13 @@ AccessibleText_getText (AccessibleText *obj, long AccessibleText_getCaretOffset (AccessibleText *obj); +char * +AccessibleText_getAttributes (AccessibleText *obj, + long offset, + long *startOffset, + long *endOfset); + + boolean AccessibleText_setCaretOffset (AccessibleText *obj, long newOffset); @@ -591,52 +1168,59 @@ AccessibleText_setCaretOffset (AccessibleText *obj, char * AccessibleText_getTextBeforeOffset (AccessibleText *obj, long offset, - TEXT_BOUNDARY_TYPE type); + TEXT_BOUNDARY_TYPE type, + long *startOffset, long *endOffset); char * -AccessibleText_getTextAtOffset (Accessible *obj, - long offset, - TEXT_BOUNDARY_TYPE type); +AccessibleText_getTextAtOffset (AccessibleText *obj, + long offset, + TEXT_BOUNDARY_TYPE type, + long *startOffset, long *endOffset); char * AccessibleText_getTextAfterOffset (AccessibleText *obj, - long offset, - TEXT_BOUNDARY_TYPE type); - + long offset, + TEXT_BOUNDARY_TYPE type, + long *startOffset, long *endOffset); char AccessibleText_getCharacterAtOffset (AccessibleText *obj, long offset); -char * -AccessibleText_getAttributes (AccessibleText *obj, - long startOffset, - long endOffset); - -boolean +void AccessibleText_getCharacterExtents (AccessibleText *obj, long offset, long *x, long *y, long *width, - long *height); + long *height, AccessibleCoordType type); long AccessibleText_getOffsetAtPoint (AccessibleText *obj, long x, - long y); + long y, AccessibleCoordType type); -char * -AccessibleText_getSelectedText (AccessibleText *obj); +long +AccessibleText_getNSelections (AccessibleText *obj); void -AccessibleText_getSelectionBounds (AccessibleText *obj, - long *startOffset, - long *endOffset); +AccessibleText_getSelection (AccessibleText *obj, + long selectionNum, long *startOffset, + long *endOffset); + + +boolean +AccessibleText_addSelection (AccessibleText *obj, + long startOffset, long endOffset); + +boolean +AccessibleText_removeSelection (AccessibleText *obj, + long selectionNum); boolean -AccessibleText_setSelectionBounds (AccessibleText *obj, - long startOffset, - long endOffset); +AccessibleText_setSelection (AccessibleText *obj, + long selectionNum, + long startOffset, + long endOffset); /* *