From: billh Date: Mon, 10 Dec 2001 13:42:39 +0000 (+0000) Subject: Fix for spi_value, AccessibleValue interface should work correctly for known X-Git-Tag: AT_SPI2_ATK_2_12_0~1493 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1c614c21cc4c82d35a7a445cd82019f5cb0d1f56;p=platform%2Fcore%2Fuifw%2Fat-spi2-atk.git Fix for spi_value, AccessibleValue interface should work correctly for known implementors of AtkValue. git-svn-id: http://svn.gnome.org/svn/at-spi/trunk@156 e2bd861d-eb25-0410-b326-f6ed22b6b98c --- diff --git a/ChangeLog b/ChangeLog index 960ead7..89f9249 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2001-12-10 Bill Haneman + + * libspi/value.c: + Fixes for spi_value, use G_TYPE_DOUBLE for atk_value values (as + used by all current implementors of AtkValue), and coerce to + CORBA_float. (Proper general case fix may require change to Value.idl). + 2001-12-09 Bill Haneman * cspi/spi.h: diff --git a/at-bridge/bridge.c b/at-bridge/bridge.c index ed9bd7e..e32dfaf 100644 --- a/at-bridge/bridge.c +++ b/at-bridge/bridge.c @@ -276,14 +276,15 @@ bridge_property_event_listener (GSignalInvocationHint *signal_hint, #ifdef SPI_BRIDGE_DEBUG GSignalQuery signal_query; const gchar *name; - gchar *s; + gchar *s, *s2; g_signal_query (signal_hint->signal_id, &signal_query); name = signal_query.signal_name; + s2 = g_type_name (G_OBJECT_TYPE (g_value_get_object (param_values + 0))); s = atk_object_get_name (ATK_OBJECT (g_value_get_object (param_values + 0))); - fprintf (stderr, "Received (property) signal %s:%s from object %s\n", - g_type_name (signal_query.itype), name, s); + fprintf (stderr, "Received (property) signal %s:%s from object %s (gail %s)\n", + g_type_name (signal_query.itype), name, s, s2); #endif gobject = g_value_get_object (param_values + 0); @@ -395,14 +396,19 @@ bridge_signal_listener (GSignalInvocationHint *signal_hint, GObject *gobject; GSignalQuery signal_query; const gchar *name; +#ifdef SPI_BRIDGE_DEBUG + gchar *s, *s2; +#endif g_signal_query (signal_hint->signal_id, &signal_query); name = signal_query.signal_name; #ifdef SPI_BRIDGE_DEBUG - fprintf (stderr, "Received signal %s:%s\n", - g_type_name (signal_query.itype), name); + s2 = g_type_name (G_OBJECT_TYPE (g_value_get_object (param_values + 0))); + s = atk_object_get_name (ATK_OBJECT (g_value_get_object (param_values + 0))); + fprintf (stderr, "Received signal %s:%s from object %s (gail %s)\n", + g_type_name (signal_query.itype), name, s, s2); #endif gobject = g_value_get_object (param_values + 0); diff --git a/atk-bridge/bridge.c b/atk-bridge/bridge.c index ed9bd7e..e32dfaf 100644 --- a/atk-bridge/bridge.c +++ b/atk-bridge/bridge.c @@ -276,14 +276,15 @@ bridge_property_event_listener (GSignalInvocationHint *signal_hint, #ifdef SPI_BRIDGE_DEBUG GSignalQuery signal_query; const gchar *name; - gchar *s; + gchar *s, *s2; g_signal_query (signal_hint->signal_id, &signal_query); name = signal_query.signal_name; + s2 = g_type_name (G_OBJECT_TYPE (g_value_get_object (param_values + 0))); s = atk_object_get_name (ATK_OBJECT (g_value_get_object (param_values + 0))); - fprintf (stderr, "Received (property) signal %s:%s from object %s\n", - g_type_name (signal_query.itype), name, s); + fprintf (stderr, "Received (property) signal %s:%s from object %s (gail %s)\n", + g_type_name (signal_query.itype), name, s, s2); #endif gobject = g_value_get_object (param_values + 0); @@ -395,14 +396,19 @@ bridge_signal_listener (GSignalInvocationHint *signal_hint, GObject *gobject; GSignalQuery signal_query; const gchar *name; +#ifdef SPI_BRIDGE_DEBUG + gchar *s, *s2; +#endif g_signal_query (signal_hint->signal_id, &signal_query); name = signal_query.signal_name; #ifdef SPI_BRIDGE_DEBUG - fprintf (stderr, "Received signal %s:%s\n", - g_type_name (signal_query.itype), name); + s2 = g_type_name (G_OBJECT_TYPE (g_value_get_object (param_values + 0))); + s = atk_object_get_name (ATK_OBJECT (g_value_get_object (param_values + 0))); + fprintf (stderr, "Received signal %s:%s from object %s (gail %s)\n", + g_type_name (signal_query.itype), name, s, s2); #endif gobject = g_value_get_object (param_values + 0); diff --git a/libspi/value.c b/libspi/value.c index 16e64fb..71b1f64 100644 --- a/libspi/value.c +++ b/libspi/value.c @@ -114,10 +114,10 @@ impl__get_minimumValue (PortableServer_Servant servant, * What we really need is a generic value API here */ - g_value_init (&gvalue, G_TYPE_FLOAT); + g_value_init (&gvalue, G_TYPE_DOUBLE); atk_value_get_minimum_value (value, &gvalue); - return (CORBA_float) g_value_get_float (&gvalue); + return (CORBA_float) g_value_get_double (&gvalue); } @@ -130,10 +130,10 @@ impl__get_maximumValue (PortableServer_Servant servant, g_return_val_if_fail (value != NULL, 0.0); - g_value_init (&gvalue, G_TYPE_FLOAT); + g_value_init (&gvalue, G_TYPE_DOUBLE); atk_value_get_maximum_value (value, &gvalue); - return (CORBA_float) g_value_get_float (&gvalue); + return (CORBA_float) g_value_get_double (&gvalue); } @@ -146,10 +146,10 @@ impl__get_currentValue (PortableServer_Servant servant, g_return_val_if_fail (value != NULL, 0.0); - g_value_init (&gvalue, G_TYPE_FLOAT); + g_value_init (&gvalue, G_TYPE_DOUBLE); atk_value_get_current_value (value, &gvalue); - return (CORBA_float) g_value_get_float (&gvalue); + return (CORBA_float) g_value_get_double (&gvalue); } @@ -163,8 +163,8 @@ impl__set_currentValue (PortableServer_Servant servant, g_return_if_fail (avalue != NULL); - g_value_init (&gvalue, G_TYPE_FLOAT); - g_value_set_float (&gvalue, (gfloat) value); + g_value_init (&gvalue, G_TYPE_DOUBLE); + g_value_set_float (&gvalue, (gdouble) value); atk_value_set_current_value (avalue, &gvalue); }