Added state-change signal to AtkObject (will deprecate accessible-state property)
authorBill Haneman <billh@src.gnome.org>
Mon, 19 Nov 2001 10:48:31 +0000 (10:48 +0000)
committerBill Haneman <billh@src.gnome.org>
Mon, 19 Nov 2001 10:48:31 +0000 (10:48 +0000)
Fixed API problem in atk_util_add_key_listener.

ChangeLog
atk/atkobject.c
atk/atkobject.h
atk/atkutil.c
atk/atkutil.h

index a03b20e..688324b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2001-11-19  Bill Haneman <bill.haneman@sun.com>
+       * atk/atkobject.c:
+       * atk/atkstate.c:
+       Added state-changed signal to atkobject, in anticipation of 
+       deprecating the accessible-state property.
+
+       * atk/atkutil.[ch]:
+       Fixed signature of atk_util_add_key_listener () to
+       take an AtkKeySnoopFunc instead of a pointer to same.
+
 2001-11-19  Padraig O'Briain  <padraig.obriain@sun.com>
 
        * atk/atkobject.c (atk_object_notify_state_change):
index 682c837..141ac5b 100755 (executable)
@@ -48,7 +48,8 @@ enum {
   FOCUS_EVENT,
   PROPERTY_CHANGE,
   VISIBLE_DATA_CHANGED,
-
+  STATE_CHANGE,
+  
   LAST_SIGNAL
 };
 
@@ -299,6 +300,18 @@ atk_object_class_init (AtkObjectClass *klass)
                   g_cclosure_marshal_VOID__POINTER,
                   G_TYPE_NONE, 1,
                   G_TYPE_POINTER);
+  /*
+   * The "state_change" signal supports details, one for each accessible state type
+   * (see atkstate.c).
+   */
+    g_signal_new ("state_change",
+                  G_TYPE_FROM_CLASS (klass),
+                  G_SIGNAL_RUN_LAST | G_SIGNAL_DETAILED,
+                  G_STRUCT_OFFSET (AtkObjectClass, state_change),
+                  (GSignalAccumulator) NULL, NULL,
+                  g_cclosure_marshal_VOID__POINTER,
+                  G_TYPE_NONE, 1,
+                  G_TYPE_POINTER);
   atk_object_signals[VISIBLE_DATA_CHANGED] =
     g_signal_new ("visible_data_changed",
                   G_TYPE_FROM_CLASS (klass),
index 80ea0ad..2b79df0 100755 (executable)
@@ -345,6 +345,12 @@ void                      (* remove_property_change_handler)     (AtkObject
   gint                    (*property_change)      (AtkObject                  *accessible,
                                                    AtkPropertyValues          *values);
   /*
+   * The signal handler which is executed  when there is a state_change 
+   * signal for an object.
+   */
+  gint                    (*state_change)         (AtkObject                  *accessible,
+                                                   AtkPropertyValues          *values);
+  /*
    * The signal handler which is executed when there is a change in the
    * visible data for an object
    */
index 97e4d12..87caa73 100755 (executable)
@@ -241,7 +241,7 @@ atk_remove_global_event_listener (guint listener_id)
  * Returns: added event listener id, or 0 on failure.
  **/
 guint
-atk_add_key_event_listener (AtkKeySnoopFunc *listener, gpointer data)
+atk_add_key_event_listener (AtkKeySnoopFunc listener, gpointer data)
 {
   guint retval;
   AtkUtilClass *klass = g_type_class_ref (ATK_TYPE_UTIL);
index ba94a08..00fd8f5 100755 (executable)
@@ -71,7 +71,7 @@ struct _AtkUtilClass
    guint        (* add_global_event_listener)    (GSignalEmissionHook listener,
                                                  gchar*               event_type);
    void         (* remove_global_event_listener) (guint               listener_id);
-   guint       (* add_key_event_listener)       (AtkKeySnoopFunc    *listener,
+   guint       (* add_key_event_listener)       (AtkKeySnoopFunc     listener,
                                                  gpointer data);
    void         (* remove_key_event_listener)    (guint               listener_id);
    AtkObject*   (* get_root)                     (void);
@@ -136,7 +136,7 @@ void        atk_remove_global_event_listener (guint listener_id);
  * Adds the specified function to the list of functions to be called
  * when an keyboard event occurs.
  */
-guint  atk_add_key_event_listener (AtkKeySnoopFunc *listener, gpointer data);
+guint  atk_add_key_event_listener (AtkKeySnoopFunc listener, gpointer data);
 
 /*
  * Removes the specified event listener