summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog10
-rwxr-xr-xatk/atkobject.c15
-rwxr-xr-xatk/atkobject.h6
-rwxr-xr-xatk/atkutil.c2
-rwxr-xr-xatk/atkutil.h4
5 files changed, 33 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index a03b20e..688324b 100644
--- 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):
diff --git a/atk/atkobject.c b/atk/atkobject.c
index 682c837..141ac5b 100755
--- a/atk/atkobject.c
+++ b/atk/atkobject.c
@@ -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),
diff --git a/atk/atkobject.h b/atk/atkobject.h
index 80ea0ad..2b79df0 100755
--- a/atk/atkobject.h
+++ b/atk/atkobject.h
@@ -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
*/
diff --git a/atk/atkutil.c b/atk/atkutil.c
index 97e4d12..87caa73 100755
--- a/atk/atkutil.c
+++ b/atk/atkutil.c
@@ -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);
diff --git a/atk/atkutil.h b/atk/atkutil.h
index ba94a08..00fd8f5 100755
--- a/atk/atkutil.h
+++ b/atk/atkutil.h
@@ -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