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-constants.h"
32 #include "atspi-types.h"
36 typedef struct _AtspiRect AtspiRect;
48 * The #GType for a boxed type holding a #AtspiRect.
50 #define ATSPI_TYPE_RECT (atspi_rect_get_type ())
52 GType atspi_rect_get_type ();
54 AtspiRect *atspi_rect_copy (AtspiRect *src);
56 typedef struct _AtspiPoint AtspiPoint;
66 * The #GType for a boxed type holding a #AtspiPoint.
68 #define ATSPI_TYPE_POINT (atspi_point_get_type ())
70 GType atspi_point_get_type ();
72 AtspiPoint *atspi_point_copy (AtspiPoint *src);
74 #define ATSPI_TYPE_COMPONENT (atspi_component_get_type ())
75 #define ATSPI_IS_COMPONENT(obj) G_TYPE_CHECK_INSTANCE_TYPE ((obj), ATSPI_TYPE_COMPONENT)
76 #define ATSPI_COMPONENT(obj) G_TYPE_CHECK_INSTANCE_CAST ((obj), ATSPI_TYPE_COMPONENT, AtspiComponent)
77 #define ATSPI_COMPONENT_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), ATSPI_TYPE_COMPONENT, AtspiComponent))
79 GType atspi_component_get_type ();
81 struct _AtspiComponent
83 GTypeInterface parent;
86 gboolean atspi_component_contains (AtspiComponent *obj, gint x, gint y, AtspiCoordType ctype, GError **error);
88 AtspiAccessible *atspi_component_get_accessible_at_point (AtspiComponent *obj, gint x, gint y, AtspiCoordType ctype, GError **error);
90 AtspiRect *atspi_component_get_extents (AtspiComponent *obj, AtspiCoordType ctype, GError **error);
92 AtspiPoint *atspi_component_get_position (AtspiComponent *obj, AtspiCoordType ctype, GError **error);
94 AtspiPoint *atspi_component_get_size (AtspiComponent *obj, GError **error);
96 AtspiComponentLayer atspi_component_get_layer (AtspiComponent *obj, GError **error);
98 gshort atspi_component_get_mdi_z_order (AtspiComponent *obj, GError **error);
100 gboolean atspi_component_grab_focus (AtspiComponent *obj, GError **error);
102 gdouble atspi_component_get_alpha (AtspiComponent *obj, GError **error);
104 gboolean atspi_component_set_extents (AtspiComponent *obj, gint x, gint y, gint width, gint height, AtspiCoordType ctype, GError **error);
106 gboolean atspi_component_set_position (AtspiComponent *obj, gint x, gint y, AtspiCoordType ctype, GError **error);
108 gboolean atspi_component_set_size (AtspiComponent *obj, gint width, gint height, GError **error);
110 gboolean atspi_component_grab_highlight (AtspiComponent *obj, GError **error);
112 gboolean atspi_component_clear_highlight (AtspiComponent *obj, GError **error);
114 int atspi_component_get_highlight_index(AtspiComponent *obj, GError **error);
118 #endif /* _ATSPI_COMPONENT_H_ */