X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=cspi%2Fspi.h;h=4afe11eac98c1769a21e8cdd8be026321b737e68;hb=c139071b7cef3e8ea132abc5f994bd42e78e539c;hp=67dbaf459d5ebc9e2ba5ed45c7659cf33da31ba5;hpb=d35cd400a36b0f1393c17ce47015bf753327ccae;p=platform%2Fcore%2Fuifw%2Fat-spi2-atk.git diff --git a/cspi/spi.h b/cspi/spi.h index 67dbaf4..4afe11e 100644 --- a/cspi/spi.h +++ b/cspi/spi.h @@ -1,8 +1,6 @@ #ifndef _SPI_H #define _SPI_H -#include - #include /* * Definitions for AccessibleRole, AccessibleState, @@ -17,7 +15,9 @@ */ #include -G_BEGIN_DECLS +#ifdef __cplusplus +extern "C" { +#endif /* * Enumerated type for text boundary types @@ -43,11 +43,15 @@ typedef enum typedef enum { + SPI_RELATION_NULL, SPI_RELATION_LABEL_FOR, SPI_RELATION_LABELED_BY, SPI_RELATION_CONTROLLER_FOR, SPI_RELATION_CONTROLLED_BY, - SPI_RELATION_MEMBER_OF + SPI_RELATION_MEMBER_OF, + SPI_RELATION_NODE_CHILD_OF, + SPI_RELATION_EXTENDED, + SPI_RELATION_LAST_DEFINED } AccessibleRelationType; @@ -61,7 +65,8 @@ typedef enum { SPI_KEY_PRESS, SPI_KEY_RELEASE, SPI_KEY_PRESSRELEASE, - SPI_KEY_SYM + SPI_KEY_SYM, + SPI_KEY_STRING } AccessibleKeySynthType; typedef enum { @@ -111,9 +116,10 @@ typedef enum { **/ typedef struct _AccessibleKeySet { - unsigned long *keysyms; - unsigned short *keycodes; - short len; + unsigned long *keysyms; + unsigned short *keycodes; + char **keystrings; + short len; } AccessibleKeySet; /** @@ -137,53 +143,71 @@ int SPI_exit (void); /* Event Listener creation and support. */ -AccessibleEventListener * - createAccessibleEventListener (AccessibleEventListenerCB callback, +void SPI_freeAccessibleKeySet ( + AccessibleKeySet *keyset); +AccessibleKeySet * SPI_createAccessibleKeySet ( + int len, + const char *keysyms, + short *keycodes, + const char **keystrings); +AccessibleEventListener * SPI_createAccessibleEventListener ( + AccessibleEventListenerCB callback, void *user_data); -SPIBoolean AccessibleEventListener_addCallback (AccessibleEventListener *listener, +SPIBoolean AccessibleEventListener_addCallback ( + AccessibleEventListener *listener, AccessibleEventListenerCB callback, void *user_data); -SPIBoolean AccessibleEventListener_removeCallback (AccessibleEventListener *listener, +SPIBoolean AccessibleEventListener_removeCallback ( + AccessibleEventListener *listener, AccessibleEventListenerCB callback); -void AccessibleEventListener_unref (AccessibleEventListener *listener); +void AccessibleEventListener_unref ( + AccessibleEventListener *listener); /* Keystroke Listener creation and support. */ -AccessibleKeystrokeListener * - createAccessibleKeystrokeListener (AccessibleKeystrokeListenerCB callback, - void *user_data); -SPIBoolean AccessibleKeystrokeListener_addCallback (AccessibleKeystrokeListener *listener, - AccessibleKeystrokeListenerCB callback, - void *user_data); -SPIBoolean AccessibleKeystrokeListener_removeCallback (AccessibleKeystrokeListener *listener, - AccessibleKeystrokeListenerCB callback); -void AccessibleKeystrokeListener_unref (AccessibleKeystrokeListener *listener); +AccessibleKeystrokeListener * SPI_createAccessibleKeystrokeListener ( + AccessibleKeystrokeListenerCB callback, + void *user_data); +SPIBoolean AccessibleKeystrokeListener_addCallback ( + AccessibleKeystrokeListener *listener, + AccessibleKeystrokeListenerCB callback, + void *user_data); +SPIBoolean AccessibleKeystrokeListener_removeCallback ( + AccessibleKeystrokeListener *listener, + AccessibleKeystrokeListenerCB callback); +void AccessibleKeystrokeListener_unref ( + AccessibleKeystrokeListener *listener); /* Global functions serviced by the registry */ -SPIBoolean registerGlobalEventListener (AccessibleEventListener *listener, - const char *eventType); -SPIBoolean deregisterGlobalEventListener (AccessibleEventListener *listener, - const char *eventType); -SPIBoolean deregisterGlobalEventListenerAll (AccessibleEventListener *listener); - -void registerAccessibleKeystrokeListener ( - AccessibleKeystrokeListener *listener, - AccessibleKeySet *keys, - AccessibleKeyMaskType modmask, - AccessibleKeyEventMask eventmask, - AccessibleKeyListenerSyncType sync_type); -void deregisterAccessibleKeystrokeListener ( - AccessibleKeystrokeListener *listener, - AccessibleKeyMaskType modmask); - -int getDesktopCount (void); -Accessible *getDesktop (int i); -int getDesktopList (Accessible **list); - -void generateKeyEvent (long int keyval, - AccessibleKeySynthType synth_type); -void generateMouseEvent (long int x, long int y, char *name); +SPIBoolean SPI_registerGlobalEventListener ( + AccessibleEventListener *listener, + const char *eventType); +SPIBoolean SPI_deregisterGlobalEventListener ( + AccessibleEventListener *listener, + const char *eventType); +SPIBoolean SPI_deregisterGlobalEventListenerAll ( + AccessibleEventListener *listener); +SPIBoolean SPI_registerAccessibleKeystrokeListener ( + AccessibleKeystrokeListener *listener, + AccessibleKeySet *keys, + AccessibleKeyMaskType modmask, + AccessibleKeyEventMask eventmask, + AccessibleKeyListenerSyncType sync_type); +SPIBoolean SPI_deregisterAccessibleKeystrokeListener ( + AccessibleKeystrokeListener *listener, + AccessibleKeyMaskType modmask); + +int SPI_getDesktopCount (void); +Accessible *SPI_getDesktop (int i); +int SPI_getDesktopList (Accessible ***desktop_list); +void SPI_freeDesktopList (Accessible **desktop_list); + +SPIBoolean SPI_generateKeyboardEvent (long int keyval, + char *keystring, + AccessibleKeySynthType synth_type); + +SPIBoolean SPI_generateMouseEvent (long int x, long int y, char *name); /* Accessible function prototypes */ @@ -197,279 +221,94 @@ Accessible * Accessible_getChildAtIndex (Accessible *obj, long int childIndex); long Accessible_getIndexInParent (Accessible *obj); AccessibleRelation **Accessible_getRelationSet (Accessible *obj); -const char * Accessible_getRole (Accessible *obj); +AccessibleRole Accessible_getRole (Accessible *obj); +char * Accessible_getRoleName (Accessible *obj); AccessibleStateSet * Accessible_getStateSet (Accessible *obj); /* Interface query methods */ -SPIBoolean Accessible_isAction (Accessible *obj); -SPIBoolean Accessible_isApplication (Accessible *obj); -SPIBoolean Accessible_isComponent (Accessible *obj); -SPIBoolean Accessible_isEditableText (Accessible *obj); -SPIBoolean Accessible_isHypertext (Accessible *obj); -SPIBoolean Accessible_isImage (Accessible *obj); -SPIBoolean Accessible_isSelection (Accessible *obj); -SPIBoolean Accessible_isTable (Accessible *obj); -SPIBoolean Accessible_isText (Accessible *obj); -SPIBoolean Accessible_isValue (Accessible *obj); - -AccessibleAction * Accessible_getAction (Accessible *obj); -AccessibleApplication * Accessible_getApplication (Accessible *obj); -AccessibleComponent * Accessible_getComponent (Accessible *obj); -AccessibleEditableText * Accessible_getEditableText (Accessible *obj); -AccessibleHypertext * Accessible_getHypertext (Accessible *obj); -AccessibleImage * Accessible_getImage (Accessible *obj); -AccessibleSelection * Accessible_getSelection (Accessible *obj); -AccessibleTable * Accessible_getTable (Accessible *obj); -AccessibleText * Accessible_getText (Accessible *obj); -AccessibleValue * Accessible_getValue (Accessible *obj); -GenericInterface * Accessible_queryInterface (Accessible *obj, - const char *interface_name); - -/* - * AccessibleAction function prototypes - */ - -void AccessibleAction_ref (AccessibleAction *obj); -void AccessibleAction_unref (AccessibleAction *obj); -long -AccessibleAction_getNActions (AccessibleAction *obj); - -/** - * AccessibleAction_getName: - * @obj: a pointer to the #AccessibleAction implementor to query. - * @i: a long integer indicating which action to query. - * - * Get the name of the '@i-th' action invokable on an - * object implementing #AccessibleAction. - * - * Returns: the 'event type' name of the action, as a UTF-8 string. - * - **/ -char * -AccessibleAction_getName (AccessibleAction *obj, long int i); - -/** - * AccessibleAction_getDescription: - * @obj: a pointer to the #AccessibleAction to query. - * @i: a long integer indicating which action to query. - * - * Get the description of '@i-th' action invokable on an - * object implementing #AccessibleAction. - * - * Returns: a UTF-8 string describing the '@i-th' invokable action. - * - **/ -char * -AccessibleAction_getDescription (AccessibleAction *obj, - long int i); - -SPIBoolean -AccessibleAction_doAction (AccessibleAction *obj, - long int i); - -/** - * AccessibleAction_getKeybinding: - * @obj: a pointer to the #AccessibleAction implementor to query. - * @i: a long integer indicating which action to query. - * - * Get the keybindings for the @i-th action invokable on an - * object implementing #AccessibleAction, if any are defined. - * - * Returns: a UTF-8 string which can be parsed to determine the @i-th - * invokable action's keybindings. - * - **/ -char * -AccessibleAction_getKeyBinding (AccessibleAction *obj, - long int i); - -/* - * - * AccessibleApplication function prototypes - * - */ - -/** - * 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). - * - **/ -void -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). - * - **/ -void -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: - * @obj: a pointer to the #Accessible object on which to operate. - * - * 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. - * - **/ -SPIBoolean -AccessibleApplication_pause (AccessibleApplication *obj); - -/** - * AccessibleApplication_resume: - * @obj: a pointer to the #Accessible object on which to operate. - * - * Attempt to resume the application (used after #AccessibleApplication_pause). - * Not Yet Implemented. - * - * Returns: #TRUE if application processing resumed successfully, #FALSE otherwise. - * - **/ -SPIBoolean -AccessibleApplication_resume (AccessibleApplication *obj); - -/* - * - * AccessibleComponent function prototypes - * - */ - -void -AccessibleComponent_ref (AccessibleComponent *obj); - -void -AccessibleComponent_unref (AccessibleComponent *obj); - -SPIBoolean -AccessibleComponent_contains (AccessibleComponent *obj, - long int x, - long int y, - AccessibleCoordType ctype); - -Accessible * -AccessibleComponent_getAccessibleAtPoint (AccessibleComponent *obj, - long int x, - long int 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 int *x, - long int *y, - long int *width, - long int *height, - AccessibleCoordType ctype); - -void -AccessibleComponent_getPosition (AccessibleComponent *obj, - long int *x, - long int *y, - AccessibleCoordType ctype); - -void -AccessibleComponent_getSize (AccessibleComponent *obj, - long int *width, - long int *height); - -/** - * AccessibleComponent_getLayer: - * @obj: a pointer to the #AccessibleComponent to query. - * - * Query which layer the component is painted into, to help determine its - * visibility in terms of stacking order. - * - * Returns: the #AccessibleComponentLayer into which this component is painted. - **/ +SPIBoolean Accessible_isAction (Accessible *obj); +SPIBoolean Accessible_isApplication (Accessible *obj); +SPIBoolean Accessible_isComponent (Accessible *obj); +SPIBoolean Accessible_isEditableText (Accessible *obj); +SPIBoolean Accessible_isHypertext (Accessible *obj); +SPIBoolean Accessible_isImage (Accessible *obj); +SPIBoolean Accessible_isSelection (Accessible *obj); +SPIBoolean Accessible_isStreamableContent (Accessible *obj); +SPIBoolean Accessible_isTable (Accessible *obj); +SPIBoolean Accessible_isText (Accessible *obj); +SPIBoolean Accessible_isValue (Accessible *obj); + +AccessibleAction * Accessible_getAction (Accessible *obj); +AccessibleApplication * Accessible_getApplication (Accessible *obj); +AccessibleComponent * Accessible_getComponent (Accessible *obj); +AccessibleEditableText * Accessible_getEditableText (Accessible *obj); +AccessibleHypertext * Accessible_getHypertext (Accessible *obj); +AccessibleImage * Accessible_getImage (Accessible *obj); +AccessibleSelection * Accessible_getSelection (Accessible *obj); +AccessibleStreamableContent * Accessible_getStreamableContent (Accessible *obj); +AccessibleTable * Accessible_getTable (Accessible *obj); +AccessibleText * Accessible_getText (Accessible *obj); +AccessibleValue * Accessible_getValue (Accessible *obj); +AccessibleUnknown * Accessible_queryInterface (Accessible *obj, + const char *interface_name); + +/* AccessibleAction function prototypes */ + +void AccessibleAction_ref (AccessibleAction *obj); +void AccessibleAction_unref (AccessibleAction *obj); +long AccessibleAction_getNActions (AccessibleAction *obj); +char *AccessibleAction_getName (AccessibleAction *obj, + long int i); +char *AccessibleAction_getDescription (AccessibleAction *obj, + long int i); +SPIBoolean AccessibleAction_doAction (AccessibleAction *obj, + long int i); +char *AccessibleAction_getKeyBinding (AccessibleAction *obj, + long int i); + +/* AccessibleApplication function prototypes */ + +void AccessibleApplication_ref (AccessibleApplication *obj); +void AccessibleApplication_unref (AccessibleApplication *obj); +char *AccessibleApplication_getToolkitName (AccessibleApplication *obj); +char *AccessibleApplication_getVersion (AccessibleApplication *obj); +long AccessibleApplication_getID (AccessibleApplication *obj); +SPIBoolean AccessibleApplication_pause (AccessibleApplication *obj); +SPIBoolean AccessibleApplication_resume (AccessibleApplication *obj); + +/* AccessibleComponent function prototypes */ + +void AccessibleComponent_ref (AccessibleComponent *obj); +void AccessibleComponent_unref (AccessibleComponent *obj); +SPIBoolean AccessibleComponent_contains (AccessibleComponent *obj, + long int x, + long int y, + AccessibleCoordType ctype); +Accessible *AccessibleComponent_getAccessibleAtPoint ( + AccessibleComponent *obj, + long int x, + long int y, + AccessibleCoordType ctype); +void AccessibleComponent_getExtents (AccessibleComponent *obj, + long int *x, + long int *y, + long int *width, + long int *height, + AccessibleCoordType ctype); +void AccessibleComponent_getPosition (AccessibleComponent *obj, + long int *x, + long int *y, + AccessibleCoordType ctype); +void AccessibleComponent_getSize (AccessibleComponent *obj, + long int *width, + long int *height); AccessibleComponentLayer -AccessibleComponent_getLayer (AccessibleComponent *obj); - -/** - * AccessibleComponent_getMDIZOrder: - * @obj: a pointer to the #AccessibleComponent to query. - * - * Query the z stacking order of a component which is in the MDI layer. - * - * Returns: a short integer indicating the stacking order of the component - * in the MDI layer, or -1 if the component is not in the MDI layer. - **/ -short -AccessibleComponent_getMDIZOrder (AccessibleComponent *obj); + AccessibleComponent_getLayer (AccessibleComponent *obj); +void AccessibleComponent_grabFocus (AccessibleComponent *obj); +short AccessibleComponent_getMDIZOrder(AccessibleComponent *obj); -void -AccessibleComponent_grabFocus (AccessibleComponent *obj); - -/* - * - * AccessibleEditableText function prototypes - * - */ +/* AccessibleEditableText function prototypes */ void AccessibleEditableText_ref (AccessibleEditableText *obj); @@ -517,6 +356,10 @@ AccessibleEditableText_pasteText (AccessibleEditableText *obj, * AccessibleHyperlink function prototypes * */ +void +AccessibleHyperlink_ref (AccessibleHyperlink *obj); +void +AccessibleHyperlink_unref (AccessibleHyperlink *obj); long AccessibleHyperlink_getNAnchors (AccessibleHyperlink *obj); @@ -679,7 +522,23 @@ AccessibleStateSet_compare (AccessibleStateSet *obj, SPIBoolean AccessibleStateSet_isEmpty (AccessibleStateSet *obj); - +void +AccessibleStreamableContent_ref (AccessibleStreamableContent *obj); +void +AccessibleStreamableContent_unref (AccessibleStreamableContent *obj); +char ** +AccessibleStreamableContent_getContentTypes (AccessibleStreamableContent *obj); +SPIBoolean +AccessibleStreamableContent_open (AccessibleStreamableContent *obj, + const char *content_type); +SPIBoolean +AccessibleStreamableContent_seek (AccessibleStreamableContent *obj, + long int offset); +SPIBoolean +AccessibleStreamableContent_read (AccessibleStreamableContent *obj, + void *buff, + long int nbytes, + unsigned int read_type); /* * * AccessibleTable function prototypes @@ -868,31 +727,21 @@ AccessibleText_setSelection (AccessibleText *obj, long int startOffset, long int endOffset); -/* - * - * AccessibleValue Function Prototypes: - * - */ - -void AccessibleValue_ref (AccessibleValue *obj); -void AccessibleValue_unref (AccessibleValue *obj); - -float -AccessibleValue_getMinimumValue (AccessibleValue *obj); - -float -AccessibleValue_getCurrentValue (AccessibleValue *obj); +/* AccessibleValue Function Prototypes: */ -float -AccessibleValue_getMaximumValue (AccessibleValue *obj); +void AccessibleValue_ref (AccessibleValue *obj); +void AccessibleValue_unref (AccessibleValue *obj); +double AccessibleValue_getMinimumValue (AccessibleValue *obj); +double AccessibleValue_getCurrentValue (AccessibleValue *obj); +double AccessibleValue_getMaximumValue (AccessibleValue *obj); +SPIBoolean AccessibleValue_setCurrentValue (AccessibleValue *obj, + double newValue); -SPIBoolean -AccessibleValue_setCurrentValue (AccessibleValue *obj, - float newValue); - -void -SPI_freeString (char *s); +/* Misc methods */ +void SPI_freeString (char *s); -G_END_DECLS +#ifdef __cplusplus +} +#endif #endif