2001-12-10 Michael Meeks <michael@ximian.com>
[platform/core/uifw/at-spi2-atk.git] / libspi / eventlistener.h
index 68d36ee..1c79b22 100644 (file)
  * Boston, MA 02111-1307, USA.
  */
 
-#ifndef SPI_ACCESSIBLE_EVENT_SPI_LISTENER_H_
-#define SPI_ACCESSIBLE_EVENT_SPI_LISTENER_H_
+#ifndef SPI_ACCESSIBLE_EVENT_LISTENER_H_
+#define SPI_ACCESSIBLE_EVENT_LISTENER_H_
 
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
+#include <libspi/listener.h>
 
-#include "listener.h"
+G_BEGIN_DECLS
 
-#define SPI_ACCESSIBLE_EVENT_SPI_LISTENER_TYPE        (spi_accessible_event_spi_listener_get_type ())
-#define SPI_ACCESSIBLE_EVENT_SPI_LISTENER(o)          (G_TYPE_CHECK_INSTANCE_CAST ((o), SPI_ACCESSIBLE_EVENT_SPI_LISTENER_TYPE, SpiAccessibleEventListener))
-#define SPI_ACCESSIBLE_EVENT_SPI_LISTENER_CLASS(k)    (G_TYPE_CHECK_CLASS_CAST((k), SPI_ACCESSIBLE_EVENT_SPI_LISTENER_TYPE, SpiAccessibleEventListenerClass))
-#define IS_SPI_ACCESSIBLE_EVENT_SPI_LISTENER(o)       (G_TYPE_CHECK__INSTANCE_TYPE ((o), SPI_ACCESSIBLE_EVENT_SPI_LISTENER_TYPE))
-#define IS_SPI_ACCESSIBLE_EVENT_SPI_LISTENER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SPI_ACCESSIBLE_EVENT_SPI_LISTENER_TYPE))
+#define SPI_EVENT_LISTENER_TYPE        (spi_event_listener_get_type ())
+#define SPI_EVENT_LISTENER(o)          (G_TYPE_CHECK_INSTANCE_CAST ((o), SPI_EVENT_LISTENER_TYPE, SpiEventListener))
+#define SPI_EVENT_LISTENER_CLASS(k)    (G_TYPE_CHECK_CLASS_CAST((k), SPI_EVENT_LISTENER_TYPE, SpiEventListenerClass))
+#define SPI_IS_EVENT_LISTENER(o)       (G_TYPE_CHECK__INSTANCE_TYPE ((o), SPI_EVENT_LISTENER_TYPE))
+#define SPI_IS_EVENT_LISTENER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SPI_EVENT_LISTENER_TYPE))
 
-typedef void (*VoidEventListenerCB) (gpointer event_ptr);
+typedef struct _SpiEventListener SpiEventListener;
 
-typedef struct {
+struct _SpiEventListener {
   SpiListener parent;
-  GList *callbacks;
-} SpiAccessibleEventListener;
+};
 
 typedef struct {
   SpiListenerClass parent_class;
-} SpiAccessibleEventListenerClass;
-
-GType                    spi_accessible_event_spi_listener_get_type     (void);
-SpiAccessibleEventListener  *spi_accessible_event_spi_listener_new         (void);
-void   spi_accessible_event_spi_listener_add_callback (SpiAccessibleEventListener *listener,
-                                               VoidEventListenerCB callback);
-void   spi_accessible_event_spi_listener_remove_callback (SpiAccessibleEventListener *listener,
-                                                  VoidEventListenerCB callback);
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
+
+  /* signals */
+  void (*event) (SpiEventListener    *listener,
+                Accessibility_Event *e);
+  
+} SpiEventListenerClass;
+
+GType              spi_event_listener_get_type        (void);
+SpiEventListener  *spi_event_listener_new             (void);
+
+G_END_DECLS
 
 #endif /* SPI_ACCESSIBLE_EVENT_SPI_LISTENER_H_ */