You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

94 lines
3.2 KiB

  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. #if defined(ATK_DISABLE_SINGLE_INCLUDES) && !defined (__ATK_H_INSIDE__) && !defined (ATK_COMPILATION)
  20. #error "Only <atk/atk.h> can be included directly."
  21. #endif
  22. #ifndef __ATK_VALUE_H__
  23. #define __ATK_VALUE_H__
  24. #include <atk/atkobject.h>
  25. G_BEGIN_DECLS
  26. /*
  27. * The AtkValue interface should be supported by any object that
  28. * supports a numerical value (e.g., a scroll bar). This interface
  29. * provides the standard mechanism for an assistive technology to
  30. * determine and set the numerical value as well as get the minimum
  31. * and maximum values.
  32. */
  33. #define ATK_TYPE_VALUE (atk_value_get_type ())
  34. #define ATK_IS_VALUE(obj) G_TYPE_CHECK_INSTANCE_TYPE ((obj), ATK_TYPE_VALUE)
  35. #define ATK_VALUE(obj) G_TYPE_CHECK_INSTANCE_CAST ((obj), ATK_TYPE_VALUE, AtkValue)
  36. #define ATK_VALUE_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), ATK_TYPE_VALUE, AtkValueIface))
  37. #ifndef _TYPEDEF_ATK_VALUE_
  38. #define _TYPEDEF_ATK_VALUE__
  39. typedef struct _AtkValue AtkValue;
  40. #endif
  41. typedef struct _AtkValueIface AtkValueIface;
  42. struct _AtkValueIface
  43. {
  44. GTypeInterface parent;
  45. void (* get_current_value) (AtkValue *obj,
  46. GValue *value);
  47. void (* get_maximum_value) (AtkValue *obj,
  48. GValue *value);
  49. void (* get_minimum_value) (AtkValue *obj,
  50. GValue *value);
  51. gboolean (* set_current_value) (AtkValue *obj,
  52. const GValue *value);
  53. void (* get_minimum_increment) (AtkValue *obj,
  54. GValue *value);
  55. AtkFunction pad1;
  56. };
  57. GType atk_value_get_type (void);
  58. void atk_value_get_current_value (AtkValue *obj,
  59. GValue *value);
  60. void atk_value_get_maximum_value (AtkValue *obj,
  61. GValue *value);
  62. void atk_value_get_minimum_value (AtkValue *obj,
  63. GValue *value);
  64. gboolean atk_value_set_current_value (AtkValue *obj,
  65. const GValue *value);
  66. void atk_value_get_minimum_increment (AtkValue *obj,
  67. GValue *value);
  68. /*
  69. * Additional GObject properties exported by GaccessibleValue:
  70. * "accessible_value"
  71. * (the accessible value has changed)
  72. */
  73. G_END_DECLS
  74. #endif /* __ATK_VALUE_H__ */