X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fat-spi2-atk.git;a=blobdiff_plain;f=cspi%2Fspi-private.h;h=795d08d4ec57b0a06bb0cb7d2fba5dd0d12d4d51;hp=1ea32bf09000499e9e19903f2e362ee7d8b26b31;hb=5d374cf95f2447a712f94dd2efe2b294ecab58ca;hpb=1f3843d72458da51ffc10aa55cfb004c0b8d8f6a diff --git a/cspi/spi-private.h b/cspi/spi-private.h index 1ea32bf..795d08d 100644 --- a/cspi/spi-private.h +++ b/cspi/spi-private.h @@ -27,21 +27,37 @@ /* Private internal implementation details of at-spi. */ -#include -#include +#include "common/spi-dbus.h" +#include "cspi/spi.h" +#include "string.h" #include "cspi/cspi-lowlevel.h" #include "cspi/spi-listener.h" +#include "dbind/dbind.h" +#include +#include "common/spi-stateset.h" -struct _Accessible { - CORBA_Object objref; - /* And some other bits */ - guint on_loan : 1; - guint ref_count : 30; +typedef struct _CSpiApplication CSpiApplication; +struct _CSpiApplication +{ + GHashTable *hash; + char *bus_name; }; -struct _AccessibleStateSet { - guint ref_count; - GArray *states; +struct _Accessible { + gint ref_count; + Accessible *parent; + GList *children; + CSpiApplication *app; + union + { + gint id; + char *path; + } v; + gint role : 8; + gint interfaces : 24; + char *name; + char *description; + AtkStateSet *states; }; #define SPI_INTERNAL_EVENT_MAGIC 0xc3 @@ -54,37 +70,29 @@ typedef struct { guchar magic; guchar type; guint16 ref_count; - void *data; } InternalEvent; struct _SPIException { SPIExceptionType type; - CORBA_Object source; - CORBA_Environment *ev; + Accessible *source; + DBusError *error; SPIExceptionCode code; char * desc; }; -#define CSPI_OBJREF(a) (((Accessible *)(a))->objref) - -CORBA_Environment *cspi_ev (void); -CORBA_Environment *cspi_peek_ev (void); +DBusConnection *SPI_bus (void); SPIBoolean cspi_exception (void); -Accessibility_Registry cspi_registry (void); -Accessible *cspi_object_add (CORBA_Object corba_object); +Accessible *cspi_object_add (Accessible *accessible); void cspi_object_ref (Accessible *accessible); void cspi_object_unref (Accessible *accessible); -Accessible *cspi_object_borrow (CORBA_Object corba_object); -Accessible *cspi_object_take (CORBA_Object corba_object); -void cspi_object_return (Accessible *accessible); SPIBoolean cspi_accessible_is_a (Accessible *accessible, const char *interface_name); AccessibleRole cspi_role_from_spi_role (Accessibility_Role role); void cspi_streams_close_all (void); -gboolean cspi_exception_throw (CORBA_Environment *ev, char *desc_prefix); +gboolean cspi_exception_throw (DBusError *error, const char *desc_prefix); AccessibleAttributeSet - *_cspi_attribute_set_from_sequence (const Accessibility_AttributeSet *seq); + *_cspi_attribute_set_from_sequence (const GArray *seq); #define cspi_return_if_fail(val) \ if (!(val)) \ return @@ -93,10 +101,19 @@ AccessibleAttributeSet return (ret) #define cspi_return_if_ev(err) \ - if (!cspi_check_ev (err)) \ + if (cspi_exception ()) \ return; #define cspi_return_val_if_ev(err, ret) \ - if (!cspi_check_ev (err)) \ + if (cspi_exception ()) \ return (ret); +typedef struct _Accessibility_BoundingBox Accessibility_BoundingBox; +struct _Accessibility_BoundingBox +{ + dbus_int32_t x; + dbus_int32_t y; + dbus_int32_t width; + dbus_int32_t height; +}; + #endif /* _SPI_PRIVATE_H_ */