diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2009-07-19 20:16:53 +0200 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2009-07-19 20:16:53 +0200 |
commit | e635fa13209085fdda417c21b205415e1cd770d0 (patch) | |
tree | 62f3261d78621c13b1a683d41f92407a2fe7cb82 | |
parent | 7a999b5b2bfa88290d242a16ab84885e1b3f88b4 (diff) | |
download | connman-gnome-e635fa13209085fdda417c21b205415e1cd770d0.tar.gz |
Handle all technology properties correctly
-rw-r--r-- | common/test-config.c | 30 |
1 files changed, 27 insertions, 3 deletions
diff --git a/common/test-config.c b/common/test-config.c index 1fa2794..91e4883 100644 --- a/common/test-config.c +++ b/common/test-config.c @@ -33,6 +33,7 @@ static GtkWidget *label_systemstate; static GtkWidget *label_offlinemode; static GtkWidget *label_available; static GtkWidget *label_enabled; +static GtkWidget *label_connected; static void property_changed(DBusGProxy *proxy, const char *property, GValue *value, gpointer user_data) @@ -48,7 +49,7 @@ static void property_changed(DBusGProxy *proxy, const char *property, gtk_label_set_text(GTK_LABEL(label_offlinemode), g_value_get_boolean(value) == TRUE ? "yes" : "no"); - if (g_str_equal(property, "Technologies") == TRUE) { + if (g_str_equal(property, "AvailableTechnologies") == TRUE) { GString *text = g_string_sized_new(0); gchar **list = g_value_get_boxed(value); guint i; @@ -71,6 +72,18 @@ static void property_changed(DBusGProxy *proxy, const char *property, gtk_label_set_text(GTK_LABEL(label_enabled), g_string_free(text, FALSE)); } + + if (g_str_equal(property, "ConnectedTechnologies") == TRUE) { + GString *text = g_string_sized_new(0); + gchar **list = g_value_get_boxed(value); + guint i; + + for (i = 0; i < g_strv_length(list); i++) + g_string_append_printf(text, "%s ", *(list + i)); + + gtk_label_set_text(GTK_LABEL(label_connected), + g_string_free(text, FALSE)); + } } static void properties_callback(DBusGProxy *proxy, @@ -97,11 +110,14 @@ static void properties_callback(DBusGProxy *proxy, value = g_hash_table_lookup(hash, "OfflineMode"); property_changed(proxy, "OfflineMode", value, user_data); - value = g_hash_table_lookup(hash, "Technologies"); - property_changed(proxy, "Technologies", value, user_data); + value = g_hash_table_lookup(hash, "AvailableTechnologies"); + property_changed(proxy, "AvailableTechnologies", value, user_data); value = g_hash_table_lookup(hash, "EnabledTechnologies"); property_changed(proxy, "EnabledTechnologies", value, user_data); + + value = g_hash_table_lookup(hash, "ConnectedTechnologies"); + property_changed(proxy, "ConnectedTechnologies", value, user_data); } static void get_properties(DBusGProxy *proxy) @@ -196,6 +212,14 @@ static GtkWidget *create_window(void) label_enabled = gtk_label_new(NULL); gtk_box_pack_end(GTK_BOX(hbox), label_enabled, FALSE, FALSE, 0); + hbox = gtk_hbox_new(FALSE, 6); + gtk_container_set_border_width(GTK_CONTAINER(mainbox), 24); + gtk_box_pack_start(GTK_BOX(mainbox), hbox, FALSE, FALSE, 0); + label = gtk_label_new("Connected technologies:"); + gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); + label_connected = gtk_label_new(NULL); + gtk_box_pack_end(GTK_BOX(hbox), label_connected, FALSE, FALSE, 0); + gtk_widget_show_all(window); return window; |