X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=cspi%2Fspi_event.c;h=c1adea8f008ab3e71efb42833daee4f24054cf8c;hb=6e15da61065e4bab323c48e3300b59d7642f2053;hp=7ff4858d33c9a5631d0ad33e70439d323f7812bf;hpb=72d587fda7e8dda1632a4a8f4010c6262ffc31be;p=platform%2Fcore%2Fuifw%2Fat-spi2-atk.git diff --git a/cspi/spi_event.c b/cspi/spi_event.c index 7ff4858..c1adea8 100644 --- a/cspi/spi_event.c +++ b/cspi/spi_event.c @@ -20,22 +20,26 @@ * Boston, MA 02111-1307, USA. */ +#include + /** * createAccessibleEventListener: * @callback : an #AccessibleEventListenerCB callback function, or NULL. + * @user_data: a pointer to data which will be passed to the callback when invoked. * - * Create a new #AccessibleEventListener with a specified callback function. + * Create a new #AccessibleEventListener with a specified (in-process) callback function. * * Returns: a pointer to a newly-created #AccessibleEventListener. * **/ AccessibleEventListener * -createAccessibleEventListener (AccessibleEventListenerCB callback) +createAccessibleEventListener (AccessibleEventListenerCB callback, + void *user_data) { - AccessibleEventListener *listener = spi_accessible_event_listener_new (); + AccessibleEventListener *listener = cspi_event_listener_new (); if (callback) { - spi_accessible_event_listener_add_callback (listener, callback); + AccessibleEventListener_addCallback (listener, callback, user_data); } return listener; } @@ -44,21 +48,40 @@ createAccessibleEventListener (AccessibleEventListenerCB callback) * AccessibleEventListener_addCallback: * @listener: the #AccessibleEventListener instance to modify. * @callback: an #AccessibleEventListenerCB function pointer. + * @user_data: a pointer to data which will be passed to the callback when invoked. * * Add an in-process callback function to an existing AccessibleEventListener. + * Note that the callback function must live in the same address + * space as the AccessibleEventListener implementation code, thus one should not + * use this function to attach callbacks to a 'remote' event listener + * (that is, one that was not created by a client call to + * createAccessibleEventListener (); * * Returns: #TRUE if successful, otherwise #FALSE. * **/ -boolean +SPIBoolean AccessibleEventListener_addCallback (AccessibleEventListener *listener, - AccessibleEventListenerCB callback) + AccessibleEventListenerCB callback, + void *user_data) { - spi_accessible_event_listener_add_callback (listener, callback); + cspi_event_listener_add_cb (listener, callback, user_data); return TRUE; } /** + * AccessibleEventListener_unref: + * @listener: a pointer to the #AccessibleEventListener being operated on. + * + * Decrements an #AccessibleEventListener's reference count. + **/ +void +AccessibleEventListener_unref (AccessibleEventListener *listener) +{ + cspi_event_listener_unref (listener); +} + +/** * AccessibleEventListener_removeCallback: * @listener: the #AccessibleEventListener instance to modify. * @callback: an #AccessibleEventListenerCB function pointer. @@ -68,17 +91,18 @@ AccessibleEventListener_addCallback (AccessibleEventListener *listener, * Returns: #TRUE if successful, otherwise #FALSE. * **/ -boolean -AccessibleEventListener_removeCallback (AccessibleEventListener *listener, +SPIBoolean +AccessibleEventListener_removeCallback (AccessibleEventListener *listener, AccessibleEventListenerCB callback) { - spi_accessible_event_listener_remove_callback (listener, callback); + cspi_event_listener_remove_cb (listener, callback); return TRUE; } /** * createAccessibleKeystrokeListener: * @callback : an #AccessibleKeystrokeListenerCB callback function, or NULL. + * @user_data: a pointer to data which will be passed to the callback when invoked. * * Create a new #AccessibleKeystrokeListener with a specified callback function. * @@ -86,31 +110,34 @@ AccessibleEventListener_removeCallback (AccessibleEventListener *listener, * **/ AccessibleKeystrokeListener * -createAccessibleKeystrokeListener (AccessibleKeystrokeListenerCB callback) +createAccessibleKeystrokeListener (AccessibleKeystrokeListenerCB callback, + void *user_data) { - SpiKeystrokeListener *listener = spi_keystroke_listener_new (); + AccessibleKeystrokeListener *listener = cspi_keystroke_listener_new (); if (callback) { - spi_keystroke_listener_add_callback (listener, callback); + AccessibleKeystrokeListener_addCallback (listener, callback, user_data); } - return (AccessibleKeystrokeListener *)listener; + return listener; } /** * AccessibleKeystrokeListener_addCallback: * @listener: the #AccessibleKeystrokeListener instance to modify. * @callback: an #AccessibleKeystrokeListenerCB function pointer. + * @user_data: a pointer to data which will be passed to the callback when invoked. * * Add an in-process callback function to an existing #AccessibleKeystrokeListener. * * Returns: #TRUE if successful, otherwise #FALSE. * **/ -boolean +SPIBoolean AccessibleKeystrokeListener_addCallback (AccessibleKeystrokeListener *listener, - AccessibleKeystrokeListenerCB callback) + AccessibleKeystrokeListenerCB callback, + void *user_data) { - spi_keystroke_listener_add_callback (listener, callback); + cspi_keystroke_listener_add_cb (listener, callback, user_data); return TRUE; } @@ -124,11 +151,22 @@ AccessibleKeystrokeListener_addCallback (AccessibleKeystrokeListener *listener, * Returns: #TRUE if successful, otherwise #FALSE. * **/ -boolean +SPIBoolean AccessibleKeystrokeListener_removeCallback (AccessibleKeystrokeListener *listener, AccessibleKeystrokeListenerCB callback) { - keystroke_listener_remove_callback (listener, callback); + cspi_keystroke_listener_remove_cb (listener, callback); return TRUE; } +/** + * AccessibleKeystrokeListener_unref: + * @listener: a pointer to the #AccessibleKeystrokeListener being operated on. + * + * Decrements an #AccessibleKeystrokeListener's reference count. + **/ +void +AccessibleKeystrokeListener_unref (AccessibleKeystrokeListener *listener) +{ + cspi_keystroke_listener_unref (listener); +}