2001-12-10 Michael Meeks <michael@ximian.com>
[platform/core/uifw/at-spi2-atk.git] / cspi / spi_event.c
index 808b4dd..7574c93 100644 (file)
@@ -26,6 +26,7 @@
 /**
  * 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 (in-process) callback function.
  *
  *
  **/
 AccessibleEventListener *
-createAccessibleEventListener (AccessibleEventListenerCB callback)
+createAccessibleEventListener (AccessibleEventListenerCB callback,
+                              void                     *user_data)
 {
   AccessibleEventListener *listener = cspi_event_listener_new ();
   if (callback)
     {
-      AccessibleEventListener_addCallback (listener, callback);
+      AccessibleEventListener_addCallback (listener, callback, user_data);
     }
   return listener;
 }
@@ -47,6 +49,7 @@ 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
@@ -58,15 +61,29 @@ createAccessibleEventListener (AccessibleEventListenerCB callback)
  * Returns: #TRUE if successful, otherwise #FALSE.
  *
  **/
-boolean
+SPIBoolean
 AccessibleEventListener_addCallback (AccessibleEventListener *listener,
-                                    AccessibleEventListenerCB callback)
+                                    AccessibleEventListenerCB callback,
+                                    void                     *user_data)
 {
-  cspi_event_listener_add_callback (listener, callback);
+  cspi_event_listener_add_callback (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)
+{
+  /* Would prefer this not to be bonobo api */
+  bonobo_object_unref (BONOBO_OBJECT (listener));
+}
+
+/**
  * AccessibleEventListener_removeCallback:
  * @listener: the #AccessibleEventListener instance to modify.
  * @callback: an #AccessibleEventListenerCB function pointer.
@@ -76,7 +93,7 @@ AccessibleEventListener_addCallback (AccessibleEventListener *listener,
  * Returns: #TRUE if successful, otherwise #FALSE.
  *
  **/
-boolean
+SPIBoolean
 AccessibleEventListener_removeCallback (AccessibleEventListener  *listener,
                                        AccessibleEventListenerCB callback)
 {
@@ -87,6 +104,7 @@ AccessibleEventListener_removeCallback (AccessibleEventListener  *listener,
 /**
  * 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.
  *
@@ -94,12 +112,13 @@ AccessibleEventListener_removeCallback (AccessibleEventListener  *listener,
  *
  **/
 AccessibleKeystrokeListener *
-createAccessibleKeystrokeListener (AccessibleKeystrokeListenerCB callback)
+createAccessibleKeystrokeListener (AccessibleKeystrokeListenerCB callback,
+                                  void                         *user_data)
 {
   CSpiKeystrokeListener *listener = cspi_keystroke_listener_new ();
   if (callback)
     {
-      AccessibleKeystrokeListener_addCallback (listener, callback);
+      AccessibleKeystrokeListener_addCallback (listener, callback, user_data);
     }
   return (AccessibleKeystrokeListener *)listener;
 }
@@ -108,17 +127,19 @@ createAccessibleKeystrokeListener (AccessibleKeystrokeListenerCB callback)
  * 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)
 {
-  cspi_keystroke_listener_add_callback (listener, callback);
+  cspi_keystroke_listener_add_callback (listener, callback, user_data);
   return TRUE;
 }
 
@@ -132,7 +153,7 @@ AccessibleKeystrokeListener_addCallback (AccessibleKeystrokeListener *listener,
  * Returns: #TRUE if successful, otherwise #FALSE.
  *
  **/
-boolean
+SPIBoolean
 AccessibleKeystrokeListener_removeCallback (AccessibleKeystrokeListener *listener,
                                            AccessibleKeystrokeListenerCB callback)
 {
@@ -140,14 +161,14 @@ AccessibleKeystrokeListener_removeCallback (AccessibleKeystrokeListener *listene
   return TRUE;
 }
 
-
 /**
  * AccessibleKeystrokeListener_unref:
  * @listener: a pointer to the #AccessibleKeystrokeListener being operated on.
  *
  * Decrements an #AccessibleKeystrokeListener's reference count.
  **/
-void AccessibleKeystrokeListener_unref (AccessibleKeystrokeListener *listener)
+void
+AccessibleKeystrokeListener_unref (AccessibleKeystrokeListener *listener)
 {
   /* Would prefer this not to be bonobo api */
   bonobo_object_unref (BONOBO_OBJECT (listener));