* 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_REGISTRY_H_
#define SPI_REGISTRY_H_
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
+#include <glib.h>
+#include <glib-object.h>
+
+#include <dbus/dbus.h>
+
+typedef struct _SpiRegistry SpiRegistry;
+typedef struct _SpiRegistryClass SpiRegistryClass;
-#include <glib/gmain.h>
-#include <libspi/Accessibility.h>
-#include "listener.h"
-#include "desktop.h"
#include "deviceeventcontroller.h"
+G_BEGIN_DECLS
+
#define SPI_REGISTRY_TYPE (spi_registry_get_type ())
#define SPI_REGISTRY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SPI_REGISTRY_TYPE, SpiRegistry))
#define SPI_REGISTRY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), SPI_REGISTRY_TYPE, SpiRegistryClass))
-#define IS_SPI_REGISTRY(o) (G_TYPE_CHECK__INSTANCE_TYPE ((o), SPI_REGISTRY_TYPE))
-#define IS_SPI_REGISTRY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SPI_REGISTRY_TYPE))
+#define SPI_IS_REGISTRY(o) (G_TYPE_CHECK__INSTANCE_TYPE ((o), SPI_REGISTRY_TYPE))
+#define SPI_IS_REGISTRY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), SPI_REGISTRY_TYPE))
+
+struct _SpiRegistry {
+ GObject parent;
+ SpiDEController *dec;
+ GPtrArray *apps;
+ dbus_int32_t id;
-typedef struct {
- SpiListener parent;
- GList *object_listeners;
- GList *window_listeners;
- GList *toolkit_listeners;
- GList *applications;
- SpiDeviceEventController *device_event_controller;
- SpiDesktop *desktop;
- gboolean (*kbd_event_hook) (gpointer source);
-} SpiRegistry;
+ DBusConnection *bus;
+ GList *events;
+};
-typedef struct {
- SpiListenerClass parent_class;
- POA_Accessibility_Registry__epv epv;
-} SpiRegistryClass;
+struct _SpiRegistryClass {
+ GObjectClass parent_class;
+};
-GType spi_registry_get_type (void);
-SpiRegistry *spi_registry_new (void);
+GType spi_registry_get_type (void);
+SpiRegistry *spi_registry_new (DBusConnection *bus);
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
+G_END_DECLS
#endif /* SPI_REGISTRY_H_ */