2 * AT-SPI - Assistive Technology Service Provider Interface
3 * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap)
5 * Copyright 2002 Ximian, Inc.
6 * 2002 Sun Microsystems Inc.
9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Library General Public
11 * License as published by the Free Software Foundation; either
12 * version 2 of the License, or (at your option) any later version.
14 * This library is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 * Library General Public License for more details.
19 * You should have received a copy of the GNU Library General Public
20 * License along with this library; if not, write to the
21 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
22 * Boston, MA 02111-1307, USA.
25 #ifndef _ATSPI_COMPONENT_H_
26 #define _ATSPI_COMPONENT_H_
28 #include "glib-object.h"
30 #include "atspi-accessible.h"
31 #include "atspi-constants.h"
33 typedef struct _AtspiRect AtspiRect;
45 * The #GType for a boxed type holding a #AtspiRect.
47 #define ATSPI_TYPE_RECT (atspi_rect_get_type ())
49 typedef struct _AtspiPoint AtspiPoint;
59 * The #GType for a boxed type holding a #AtspiPoint.
61 #define ATSPI_TYPE_POINT (atspi_point_get_type ())
63 #define ATSPI_TYPE_COMPONENT (atspi_component_get_type ())
64 #define ATSPI_IS_COMPONENT(obj) G_TYPE_CHECK_INSTANCE_TYPE ((obj), ATSPI_TYPE_COMPONENT)
65 #define ATSPI_COMPONENT(obj) G_TYPE_CHECK_INSTANCE_CAST ((obj), ATSPI_TYPE_COMPONENT, AtspiComponent)
66 #define ATSPI_COMPONENT_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), ATSPI_TYPE_COMPONENT, AtspiComponent))
68 GType atspi_component_get_type ();
70 struct _AtspiComponent
72 GTypeInterface parent;
73 gboolean (*contains) (AtspiComponent *component, gint x, gint y, AtspiCoordType ctype, GError **error);
74 AtspiAccessible *(*ref_accessible_at_point) (AtspiComponent *component, gint x, gint y, AtspiCoordType ctype, GError **error);
75 AtspiRect (*get_extents) (AtspiComponent *component, gint *x, gint *y, gint *width, gint *height, AtspiCoordType ctype, GError **error);
76 AtspiPoint (*get_position) (AtspiComponent *component, AtspiCoordType ctype, GError **error);
77 AtspiPoint (*get_size) (AtspiComponent *component, GError **error);
78 AtspiComponentLayer (*get_layer) (AtspiComponent *component, GError **error);
80 gshort (*get_mdi_z_order) (AtspiComponent *component, GError **error);
81 gboolean (*grab_focus) (AtspiComponent *component, GError **error);
82 gdouble (*get_alpha) (AtspiComponent *component, GError **error);
85 gboolean atspi_component_contains (AtspiComponent *obj, gint x, gint y, AtspiCoordType ctype, GError **error);
87 AtspiAccessible *atspi_component_ref_accessible_at_point (AtspiComponent *obj, gint x, gint y, AtspiCoordType ctype, GError **error);
89 AtspiRect atspi_component_get_extents (AtspiComponent *obj, gint *x, gint *y, gint *width, gint *height, AtspiCoordType ctype, GError **error);
91 AtspiPoint atspi_component_get_position (AtspiComponent *obj, AtspiCoordType ctype, GError **error);
93 AtspiPoint atspi_component_get_size (AtspiComponent *obj, GError **error);
95 AtspiComponentLayer atspi_component_get_layer (AtspiComponent *obj, GError **error);
97 gshort atspi_component_get_mdi_z_order (AtspiComponent *obj, GError **error);
99 gboolean atspi_component_grab_focus (AtspiComponent *obj, GError **error);
101 gdouble atspi_component_get_alpha (AtspiComponent *obj, GError **error);
102 #endif /* _ATSPI_COMPONENT_H_ */