From 4c7ff5585cd7ddcf4bb0a3b8332d21ae25b68c55 Mon Sep 17 00:00:00 2001 From: Marcel Holtmann Date: Fri, 14 Dec 2012 17:00:07 +0100 Subject: [PATCH] client: Add support for setting controller name --- client/main.c | 41 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 40 insertions(+), 1 deletion(-) diff --git a/client/main.c b/client/main.c index 40bee16f3..d0aff551c 100644 --- a/client/main.c +++ b/client/main.c @@ -304,6 +304,44 @@ static void cmd_power(const char *arg) power_callback, GUINT_TO_POINTER(powered), NULL); } +static void name_callback(const DBusError *error, void *user_data) +{ + char *name = user_data; + + begin_message(); + + if (dbus_error_is_set(error)) + printf("Failed to set name \"%s\": %s\n", name, error->name); + else + printf("Changed name to \"%s\"\n", name); + + end_message(); +} + +static void cmd_name(const char *arg) +{ + char *name; + + if (!arg || !strlen(arg)) { + printf("Missing name argument\n"); + return; + } + + if (!default_ctrl) { + printf("No default controller available\n"); + return; + } + + name = g_strdup(arg); + + if (g_dbus_proxy_set_property_basic(default_ctrl, "Name", + DBUS_TYPE_STRING, &name, + name_callback, name, g_free) == TRUE) + return; + + g_free(name); +} + static void cmd_quit(const char *arg) { g_main_loop_quit(main_loop); @@ -353,7 +391,8 @@ static const struct { ctrl_generator }, { "select", "", cmd_select, "Select default controller", ctrl_generator }, - { "power", "",cmd_power, "Power on/off" }, + { "power", "",cmd_power, "Set controller power" }, + { "name", "