#include <atk/atk.h>
#include <droute/droute.h>
-#include "spi-common/spi-dbus.h"
+#include "common/spi-dbus.h"
static dbus_bool_t
-impl_get_minimumValue (DBusMessageIter * iter,
+impl_get_MinimumValue (DBusMessageIter * iter,
void *user_data)
{
AtkValue *value = (AtkValue *) user_data;
if (g_value_transform (&src, &dest))
{
dub = g_value_get_double (&dest);
- dbus_message_iter_append_basic (iter, DBUS_TYPE_DOUBLE, &dub);
- return TRUE;
+ return droute_return_v_double (iter, dub);
}
else
{
}
static dbus_bool_t
-impl_get_maximumValue (DBusMessageIter * iter,
+impl_get_MaximumValue (DBusMessageIter * iter,
void *user_data)
{
AtkValue *value = (AtkValue *) user_data;
if (g_value_transform (&src, &dest))
{
dub = g_value_get_double (&dest);
- dbus_message_iter_append_basic (iter, DBUS_TYPE_DOUBLE, &dub);
- return TRUE;
+ return droute_return_v_double (iter, dub);
}
else
{
}
static dbus_bool_t
-impl_get_minimumIncrement (DBusMessageIter * iter,
+impl_get_MinimumIncrement (DBusMessageIter * iter,
void *user_data)
{
AtkValue *value = (AtkValue *) user_data;
if (g_value_transform (&src, &dest))
{
dub = g_value_get_double (&dest);
- dbus_message_iter_append_basic (iter, DBUS_TYPE_DOUBLE, &dub);
- return TRUE;
+ return droute_return_v_double (iter, dub);
}
else
{
}
static dbus_bool_t
-impl_get_currentValue (DBusMessageIter * iter,
+impl_get_CurrentValue (DBusMessageIter * iter,
void *user_data)
{
AtkValue *value = (AtkValue *) user_data;
if (g_value_transform (&src, &dest))
{
dub = g_value_get_double (&dest);
- dbus_message_iter_append_basic (iter, DBUS_TYPE_DOUBLE, &dub);
- return TRUE;
+ return droute_return_v_double (iter, dub);
}
else
{
GValue src = {0};
GValue dest = {0};
gdouble dub;
+ DBusMessageIter iter_variant;
g_return_val_if_fail (ATK_IS_VALUE (user_data), FALSE);
- dbus_message_iter_get_basic (iter, &dub);
+ dbus_message_iter_recurse (iter, &iter_variant);
+ if (dbus_message_iter_get_arg_type (&iter_variant) != DBUS_TYPE_DOUBLE)
+ {
+ G_WARNING ("TODO: Support setting value from a non-double");
+ return FALSE;
+ }
+ dbus_message_iter_get_basic (&iter_variant, &dub);
g_value_init (&src, G_TYPE_DOUBLE);
g_value_set_double (&src, dub);
}
static DRouteProperty properties[] = {
- {impl_get_minimumValue, NULL, "minimumValue"},
- {impl_get_maximumValue, NULL, "maximumValue"},
- {impl_get_minimumIncrement, NULL, "minimumIncrement"},
- {impl_get_currentValue, impl_set_currentValue, "currentValue"},
+ {impl_get_MinimumValue, NULL, "MinimumValue"},
+ {impl_get_MaximumValue, NULL, "MaximumValue"},
+ {impl_get_MinimumIncrement, NULL, "MinimumIncrement"},
+ {impl_get_CurrentValue, impl_set_currentValue, "CurrentValue"},
{NULL, NULL, NULL}
};