X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=cspi%2Fspi-private.h;h=feec49576ed90fba48009d604e19951ce270a81a;hb=caf5183a69a4be4acb685030e0579a05cd227fa8;hp=7d0ff2083e16dacdcd9af28c29b4e25d931a6b7a;hpb=d35cd400a36b0f1393c17ce47015bf753327ccae;p=platform%2Fcore%2Fuifw%2Fat-spi2-atk.git diff --git a/cspi/spi-private.h b/cspi/spi-private.h index 7d0ff20..feec495 100644 --- a/cspi/spi-private.h +++ b/cspi/spi-private.h @@ -1,19 +1,68 @@ +/* + * AT-SPI - Assistive Technology Service Provider Interface + * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap) + * + * Copyright 2002 Ximian, Inc. + * 2002 Sun Microsystems Inc. + * + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 59 Temple Place - Suite 330, + * Boston, MA 02111-1307, USA. + */ + #ifndef _SPI_PRIVATE_H_ #define _SPI_PRIVATE_H_ -/* - * Private internal implementation details of at-spi. - */ +/* Private internal implementation details of at-spi. */ -#include #include #include +#include "cspi/cspi-lowlevel.h" #include "cspi/spi-listener.h" struct _Accessible { CORBA_Object objref; /* And some other bits */ - guint ref_count; + guint on_loan : 1; + guint ref_count : 30; +}; + +struct _AccessibleStateSet { + guint ref_count; + GArray *states; +}; + +#define SPI_INTERNAL_EVENT_MAGIC 0xc3 +/* + * For internal use by CSPI implementation only + */ +typedef struct { + AccessibleEvent event; + guint id; + guchar magic; + guchar type; + guint16 ref_count; + void *data; +} InternalEvent; + +struct _SPIException { + SPIExceptionType type; + CORBA_Object source; + CORBA_Environment *ev; + SPIExceptionCode code; + char * desc; }; #define CSPI_OBJREF(a) (((Accessible *)(a))->objref) @@ -21,12 +70,14 @@ struct _Accessible { CORBA_Environment *cspi_ev (void); SPIBoolean cspi_exception (void); Accessibility_Registry cspi_registry (void); -Accessible *cspi_object_add (CORBA_Object corba_object); -void cspi_object_ref (Accessible *accessible); -void cspi_object_unref (Accessible *accessible); -SPIBoolean cspi_accessible_is_a (Accessible *obj, - const char *interface_name); -SPIBoolean cspi_check_ev (const char *error_string); +Accessible *cspi_object_add (CORBA_Object corba_object); +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); #define cspi_return_if_fail(val) \ if (!(val)) \