atkimage.h (3469B)
1 /* ATK - Accessibility Toolkit 2 * Copyright 2001 Sun Microsystems Inc. 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Library General Public 6 * License as published by the Free Software Foundation; either 7 * version 2 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Library General Public License for more details. 13 * 14 * You should have received a copy of the GNU Library General Public 15 * License along with this library; if not, write to the 16 * Free Software Foundation, Inc., 59 Temple Place - Suite 330, 17 * Boston, MA 02111-1307, USA. 18 */ 19 20 #ifndef __ATK_IMAGE_H__ 21 #define __ATK_IMAGE_H__ 22 23 #include <atk/atkobject.h> 24 #include <atk/atkutil.h> 25 26 #ifdef __cplusplus 27 extern "C" { 28 #endif /* __cplusplus */ 29 30 /* 31 * The AtkImage interface should be supported by any object that has an 32 * associated image. This interface provides the standard mechanism for 33 * an assistive technology to get descriptive information about images. 34 */ 35 36 #define ATK_TYPE_IMAGE (atk_image_get_type ()) 37 #define ATK_IS_IMAGE(obj) G_TYPE_CHECK_INSTANCE_TYPE ((obj), ATK_TYPE_IMAGE) 38 #define ATK_IMAGE(obj) G_TYPE_CHECK_INSTANCE_CAST ((obj), ATK_TYPE_IMAGE, AtkImage) 39 #define ATK_IMAGE_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), ATK_TYPE_IMAGE, AtkImageIface)) 40 41 #ifndef _TYPEDEF_ATK_IMAGE_ 42 #define _TYPEDEF_ATK_IMAGE_ 43 typedef struct _AtkImage AtkImage; 44 #endif 45 typedef struct _AtkImageIface AtkImageIface; 46 47 struct _AtkImageIface 48 { 49 GTypeInterface parent; 50 void ( *get_image_position) (AtkImage *image, 51 gint *x, 52 gint *y, 53 AtkCoordType coord_type); 54 G_CONST_RETURN gchar* ( *get_image_description) (AtkImage *image); 55 void ( *get_image_size) (AtkImage *image, 56 gint *width, 57 gint *height); 58 gboolean ( *set_image_description) (AtkImage *image, 59 const gchar *description); 60 G_CONST_RETURN gchar* ( *get_image_locale) (AtkImage *image); 61 62 AtkFunction pad1; 63 64 }; 65 66 GType atk_image_get_type (void); 67 68 G_CONST_RETURN gchar* atk_image_get_image_description (AtkImage *image); 69 70 void atk_image_get_image_size (AtkImage *image, 71 gint *width, 72 gint *height); 73 74 gboolean atk_image_set_image_description (AtkImage *image, 75 const gchar *description); 76 void atk_image_get_image_position (AtkImage *image, 77 gint *x, 78 gint *y, 79 AtkCoordType coord_type); 80 81 G_CONST_RETURN gchar* atk_image_get_image_locale (AtkImage *image); 82 83 #ifdef __cplusplus 84 } 85 #endif /* __cplusplus */ 86 #endif /* __ATK_IMAGE_H__ */