Revved to 1.7.4; Fixes for cspi event handlers for EventDetails.
[platform/core/uifw/at-spi2-atk.git] / cspi / spi.h
index 639e61e..6054f2f 100644 (file)
@@ -101,12 +101,14 @@ more target objects.
  *  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.
  *@SPI_RELATION_EMBEDDED_BY: Inverse of %SPI_RELATION_EMBEDS, indicates that
  *  this object's content is visualy embedded in another object.
+ *@SPI_RELATION_POPUP_FOR: Indicates that an object is a popup for another objec
+t.
  *@SPI_RELATION_LAST_DEFINED:
  *
  *Describes the type of the relation
@@ -126,6 +128,7 @@ typedef enum
   SPI_RELATION_SUBWINDOW_OF,
   SPI_RELATION_EMBEDS,
   SPI_RELATION_EMBEDDED_BY,
+  SPI_RELATION_POPUP_FOR,
   SPI_RELATION_LAST_DEFINED
 } AccessibleRelationType;
 
@@ -180,6 +183,21 @@ typedef enum {
 } 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 
@@ -203,6 +221,13 @@ typedef enum {
 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.
@@ -288,6 +313,12 @@ typedef unsigned long AccessibleModifierMaskType;
 
 typedef AccessibleModifierMaskType AccessibleKeyMaskType;
 
+typedef struct _AccessibleAttributeSet
+{
+    int len;
+    char **attributes;
+} AccessibleAttributeSet;
+
 /* Basic SPI initialization and event loop function prototypes */
 
 int              SPI_init         (void);
@@ -402,7 +433,10 @@ long                 Accessible_getIndexInParent (Accessible *obj);
 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 */
 
@@ -453,6 +487,7 @@ void       AccessibleApplication_unref          (AccessibleApplication *obj);
 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);
 
@@ -486,6 +521,7 @@ AccessibleComponentLayer
             AccessibleComponent_getLayer    (AccessibleComponent *obj);
 SPIBoolean  AccessibleComponent_grabFocus   (AccessibleComponent *obj);
 short       AccessibleComponent_getMDIZOrder(AccessibleComponent *obj);
+double      AccessibleComponent_getAlpha    (AccessibleComponent *obj);
 
 /* AccessibleEditableText function prototypes  */
 
@@ -615,6 +651,9 @@ AccessibleImage_getImageExtents (AccessibleImage *obj,
                                 long int *width,
                                 long int *height,
                                 AccessibleCoordType ctype);
+char *
+AccessibleImage_getImageLocale  (AccessibleImage *obj);
+
 /*
  *
  * AccessibleRelation function prototypes
@@ -707,13 +746,19 @@ void
 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,
@@ -811,6 +856,20 @@ AccessibleTable_isSelected (AccessibleTable *obj,
                             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
@@ -837,6 +896,8 @@ AccessibleText_getAttributes (AccessibleText *obj,
                                 long int *startOffset,
                                 long int *endOffset);
 
+char *
+AccessibleText_getDefaultAttributes (AccessibleText *obj);
 
 SPIBoolean
 AccessibleText_setCaretOffset (AccessibleText *obj,
@@ -949,6 +1010,13 @@ void AccessibleEvent_unref (const AccessibleEvent *e);
  * 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);
 
@@ -973,12 +1041,15 @@ char *       AccessibleTableColumnDescriptionChangedEvent_getDescriptionString (
 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);