* AT-SPI - Assistive Technology Service Provider Interface
* (Gnome Accessibility Project; http://developer.gnome.org/projects/gap)
*
- * Copyright 2001 Sun Microsystems Inc.
+ * Copyright 2001, 2002 Sun Microsystems Inc.,
+ * Copyright 2001, 2002 Ximian, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
#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_event_listener_get_type ())
-#define SPI_ACCESSIBLE_EVENT_SPI_LISTENER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SPI_ACCESSIBLE_EVENT_SPI_LISTENER_TYPE, SpiEventListener))
-#define SPI_ACCESSIBLE_EVENT_SPI_LISTENER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), SPI_ACCESSIBLE_EVENT_SPI_LISTENER_TYPE, SpiEventListenerClass))
-#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 (*VoidSpiEventListenerCB) (gpointer event_ptr);
+typedef struct _SpiEventListener SpiEventListener;
-typedef struct {
+struct _SpiEventListener {
SpiListener parent;
- GList *callbacks;
-} SpiEventListener;
+};
typedef struct {
SpiListenerClass parent_class;
+
+ /* signals */
+ void (*event) (SpiEventListener *listener,
+ Accessibility_Event *e);
+
} SpiEventListenerClass;
-GType spi_event_listener_get_type (void);
-SpiEventListener *spi_event_listener_new (void);
-void spi_event_listener_add_callback (SpiEventListener *listener,
- VoidSpiEventListenerCB callback);
-void spi_event_listener_remove_callback (SpiEventListener *listener,
- VoidSpiEventListenerCB callback);
+GType spi_event_listener_get_type (void);
+SpiEventListener *spi_event_listener_new (void);
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
+G_END_DECLS
#endif /* SPI_ACCESSIBLE_EVENT_SPI_LISTENER_H_ */