* 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
* 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_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_listener_get_type (void);
-SpiAccessibleEventListener *spi_accessible_event_listener_new (void);
-void spi_accessible_event_listener_add_callback (SpiAccessibleEventListener *listener,
- VoidEventListenerCB callback);
-void spi_accessible_event_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_ */