Add a check for lack of memory
[platform/core/uifw/at-spi2-atk.git] / libspi / stateset.h
index aa20352..51c376d 100644 (file)
@@ -2,7 +2,8 @@
  * AT-SPI - Assistive Technology Service Provider Interface
  * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap)
  *
- * Copyright 2001 Sun Microsystems Inc.
+ * Copyright 2001, 2002 Sun Microsystems Inc.,
+ * Copyright 2001, 2002 Ximian, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Library General Public
@@ -49,6 +50,21 @@ struct _SpiStateSetClass {
 GType        spi_state_set_get_type (void);
 SpiStateSet *spi_state_set_new      (AtkStateSet *set);
 
+/* private - internal API to abstract away atk API */
+AtkStateSet *spi_state_set_cache_from_sequence(const Accessibility_StateSeq *seq);
+AtkState     spi_atk_state_from_spi_state     (Accessibility_StateType state);
+#define      spi_state_set_cache_ref(s)        g_object_ref (s)
+#define      spi_state_set_cache_unref(s)      g_object_unref (s)
+#define      spi_state_set_cache_new(seq)      spi_state_set_cache_from_sequence (seq)
+#define      spi_state_set_cache_contains(s,a) atk_state_set_contains_state (ATK_STATE_SET (s), \
+                                                                            spi_atk_state_from_spi_state (a))
+#define      spi_state_set_cache_add(s,a)      atk_state_set_add_state (ATK_STATE_SET (s), \
+                                                                            spi_atk_state_from_spi_state (a))
+#define      spi_state_set_cache_remove(s,a)   atk_state_set_remove_state (ATK_STATE_SET (s), \
+                                                                            spi_atk_state_from_spi_state (a))
+#define      spi_state_set_cache_xor(a,b)      atk_state_set_xor_sets (ATK_STATE_SET (a), ATK_STATE_SET (b))
+#define      spi_state_set_cache_is_empty(a)   atk_state_set_is_empty (ATK_STATE_SET (a))
+
 G_END_DECLS
 
 #endif /* SPI_STATE_SET_H_ */