atkvalue.h (3210B)
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_VALUE_H__ 21 #define __ATK_VALUE_H__ 22 23 #include <atk/atkobject.h> 24 25 #ifdef __cplusplus 26 extern "C" { 27 #endif /* __cplusplus */ 28 29 /* 30 * The AtkValue interface should be supported by any object that 31 * supports a numerical value (e.g., a scroll bar). This interface 32 * provides the standard mechanism for an assistive technology to 33 * determine and set the numerical value as well as get the minimum 34 * and maximum values. 35 */ 36 37 #define ATK_TYPE_VALUE (atk_value_get_type ()) 38 #define ATK_IS_VALUE(obj) G_TYPE_CHECK_INSTANCE_TYPE ((obj), ATK_TYPE_VALUE) 39 #define ATK_VALUE(obj) G_TYPE_CHECK_INSTANCE_CAST ((obj), ATK_TYPE_VALUE, AtkValue) 40 #define ATK_VALUE_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), ATK_TYPE_VALUE, AtkValueIface)) 41 42 #ifndef _TYPEDEF_ATK_VALUE_ 43 #define _TYPEDEF_ATK_VALUE__ 44 typedef struct _AtkValue AtkValue; 45 #endif 46 typedef struct _AtkValueIface AtkValueIface; 47 48 struct _AtkValueIface 49 { 50 GTypeInterface parent; 51 52 void (* get_current_value) (AtkValue *obj, 53 GValue *value); 54 void (* get_maximum_value) (AtkValue *obj, 55 GValue *value); 56 void (* get_minimum_value) (AtkValue *obj, 57 GValue *value); 58 gboolean (* set_current_value) (AtkValue *obj, 59 const GValue *value); 60 void (* get_minimum_increment) (AtkValue *obj, 61 GValue *value); 62 AtkFunction pad1; 63 }; 64 65 GType atk_value_get_type (void); 66 67 void atk_value_get_current_value (AtkValue *obj, 68 GValue *value); 69 70 71 void atk_value_get_maximum_value (AtkValue *obj, 72 GValue *value); 73 74 void atk_value_get_minimum_value (AtkValue *obj, 75 GValue *value); 76 77 gboolean atk_value_set_current_value (AtkValue *obj, 78 const GValue *value); 79 80 void atk_value_get_minimum_increment (AtkValue *obj, 81 GValue *value); 82 83 /* 84 * Additional GObject properties exported by GaccessibleValue: 85 * "accessible_value" 86 * (the accessible value has changed) 87 */ 88 89 90 #ifdef __cplusplus 91 } 92 #endif /* __cplusplus */ 93 94 95 #endif /* __ATK_VALUE_H__ */