* AtkObject in a sequential way, (for instance text-flow).
*@SPI_RELATION_FLOWS_FROM: Indicates that the object has content that flows logically from
* another AtkObject in a sequential way, (for instance text-flow).
- *@SPI_RELATION_SUBWINDOW_OF:
+ *@SPI_RELATION_SUBWINDOW_OF: Indicates a subwindow attached to a component but otherwise has no connection in the UI heirarchy to that component.
*@SPI_RELATION_EMBEDS: Indicates that the object visually embeds
* another object's content, i.e. this object's content flows around
* another's content.
} AccessibleKeyListenerSyncType;
+/**
+ *AccessibleStreamableContentSeekType
+ *@SPI_STREAM_SEEK_SET: seek from the 'top' of the streamable
+ *@SPI_STREAM_SEEK_CUR: seek from the current position in the stream
+ *@SPI_STREAM_SEEK_END: seek from the end of the stream (if known)
+ *
+ *The seek type for a specified offset in AccessibleStreamableContent_seek.
+ **/
+typedef enum
+{
+ SPI_STREAM_SEEK_SET,
+ SPI_STREAM_SEEK_CUR,
+ SPI_STREAM_SEEK_END
+} AccessibleStreamableContentSeekType;
+
typedef struct _SPIException SPIException;
typedef SPIBoolean
typedef unsigned long AccessibleKeyEventMask;
typedef unsigned long AccessibleDeviceEventMask;
+typedef struct {
+ long x;
+ long y;
+ long width;
+ long height;
+} SPIRect;
+
/**
*AccessibleComponentLayer:
*@SPI_LAYER_INVALID: The layer cannot be determined or is somehow undefined.
typedef AccessibleModifierMaskType AccessibleKeyMaskType;
+typedef struct _AccessibleAttributeSet
+{
+ int len;
+ char **attributes;
+} AccessibleAttributeSet;
+
/* Basic SPI initialization and event loop function prototypes */
int SPI_init (void);
AccessibleRelation **Accessible_getRelationSet (Accessible *obj);
AccessibleRole Accessible_getRole (Accessible *obj);
char * Accessible_getRoleName (Accessible *obj);
+char * Accessible_getLocalizedRoleName (Accessible *obj);
AccessibleStateSet * Accessible_getStateSet (Accessible *obj);
+AccessibleAttributeSet *Accessible_getAttributes (Accessible *obj);
+AccessibleApplication *Accessible_getHostApplication (Accessible *obj);
/* Interface query methods */
char *AccessibleApplication_getToolkitName (AccessibleApplication *obj);
char *AccessibleApplication_getVersion (AccessibleApplication *obj);
long AccessibleApplication_getID (AccessibleApplication *obj);
+char *AccessibleApplication_getLocale (AccessibleApplication *obj, int lc_category);
SPIBoolean AccessibleApplication_pause (AccessibleApplication *obj);
SPIBoolean AccessibleApplication_resume (AccessibleApplication *obj);
AccessibleComponent_getLayer (AccessibleComponent *obj);
SPIBoolean AccessibleComponent_grabFocus (AccessibleComponent *obj);
short AccessibleComponent_getMDIZOrder(AccessibleComponent *obj);
+double AccessibleComponent_getAlpha (AccessibleComponent *obj);
/* AccessibleEditableText function prototypes */
long int *width,
long int *height,
AccessibleCoordType ctype);
+char *
+AccessibleImage_getImageLocale (AccessibleImage *obj);
+
/*
*
* AccessibleRelation function prototypes
AccessibleStreamableContent_unref (AccessibleStreamableContent *obj);
char **
AccessibleStreamableContent_getContentTypes (AccessibleStreamableContent *obj);
+void
+AccessibleStreamableContent_freeContentTypeList (AccessibleStreamableContent *obj,
+ char **list);
SPIBoolean
AccessibleStreamableContent_open (AccessibleStreamableContent *obj,
const char *content_type);
SPIBoolean
+AccessibleStreamableContent_close (AccessibleStreamableContent *obj);
+
+long int
AccessibleStreamableContent_seek (AccessibleStreamableContent *obj,
long int offset,
- unsigned int seek_type);
+ AccessibleStreamableContentSeekType seek_type);
SPIBoolean
AccessibleStreamableContent_read (AccessibleStreamableContent *obj,
void *buff,
long int row,
long int column);
+SPIBoolean
+AccessibleTable_addRowSelection (AccessibleTable *obj,
+ long int row);
+SPIBoolean
+AccessibleTable_addColumnSelection (AccessibleTable *obj,
+ long int column);
+
+SPIBoolean
+AccessibleTable_removeRowSelection (AccessibleTable *obj,
+ long int row);
+SPIBoolean
+AccessibleTable_removeColumnSelection (AccessibleTable *obj,
+ long int column);
+
/*
*
* AccessibleText function prototypes
long int *startOffset,
long int *endOffset);
+char *
+AccessibleText_getDefaultAttributes (AccessibleText *obj);
SPIBoolean
AccessibleText_setCaretOffset (AccessibleText *obj,
* information for accessible events.
*/
+char* AccessibleEvent_getSourceName (const AccessibleEvent *e);
+AccessibleRole AccessibleEvent_getSourceRole (const AccessibleEvent *e);
+AccessibleApplication* AccessibleEvent_getSourceApplication (const AccessibleEvent *e);
+SPIBoolean AccessibleEvent_getSourceDetails (const AccessibleEvent *e, char **name,
+ AccessibleRole *role,
+ AccessibleApplication **app);
+
char* AccessibleTextChangedEvent_getChangeString (const AccessibleEvent *e);
Accessible * AccessibleChildChangedEvent_getChildAccessible (const AccessibleEvent *e);
char * AccessibleDescriptionChangedEvent_getDescriptionString (const AccessibleEvent *e);
char * AccessibleNameChangedEvent_getNameString (const AccessibleEvent *e);
+SPIRect * AccessibleBoundsChangedEvent_getNewBounds (const AccessibleEvent *e);
/* Misc methods and error handling */
void SPI_freeString (char *s);
char* SPI_dupString (char *s);
+void SPI_freeRect (SPIRect *rect);
+
SPIBoolean SPI_exceptionHandlerPush (SPIExceptionHandler *handler);
SPIExceptionHandler* SPI_exceptionHandlerPop (void);