diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2008-12-18 09:35:05 +0100 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2008-12-18 09:35:05 +0100 |
commit | f545b6f84f7800b0619fbae6311d10f51be84d9c (patch) | |
tree | 9d42b005521f36adde4c48e0bbeef0f3d219a51f | |
parent | bf26162084c361fa5716c92505365855bcc4dafe (diff) | |
download | connman-gnome-f545b6f84f7800b0619fbae6311d10f51be84d9c.tar.gz |
Track signal strength of connections
-rw-r--r-- | common/connman-dbus.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/common/connman-dbus.c b/common/connman-dbus.c index d977c1b..c368e50 100644 --- a/common/connman-dbus.c +++ b/common/connman-dbus.c @@ -438,6 +438,10 @@ static void connection_changed(DBusGProxy *proxy, const char *property, gboolean enabled = g_value_get_boolean(value); gtk_tree_store_set(store, &iter, CONNMAN_COLUMN_ENABLED, enabled, -1); + } else if (g_str_equal(property, "Strength") == TRUE) { + guint strength = g_value_get_uchar(value); + gtk_tree_store_set(store, &iter, + CONNMAN_COLUMN_STRENGTH, strength, -1); } } @@ -447,7 +451,7 @@ static void connection_properties(DBusGProxy *proxy, GHashTable *hash, GtkTreeStore *store = user_data; GValue *value; const gchar *name; - guint type; + guint type, strength; gboolean enabled; GtkTreeIter iter; @@ -457,6 +461,9 @@ static void connection_properties(DBusGProxy *proxy, GHashTable *hash, value = g_hash_table_lookup(hash, "Type"); type = get_type(value); + value = g_hash_table_lookup(hash, "Strength"); + strength = value ? g_value_get_uchar(value) : 0; + value = g_hash_table_lookup(hash, "Default"); enabled = value ? g_value_get_boolean(value) : FALSE; @@ -466,7 +473,8 @@ static void connection_properties(DBusGProxy *proxy, GHashTable *hash, gtk_tree_store_insert_with_values(store, &iter, NULL, -1, CONNMAN_COLUMN_PROXY, proxy, CONNMAN_COLUMN_TYPE, type, - CONNMAN_COLUMN_ENABLED, enabled, -1); + CONNMAN_COLUMN_ENABLED, enabled, + CONNMAN_COLUMN_STRENGTH, strength, -1); dbus_g_proxy_add_signal(proxy, "PropertyChanged", G_TYPE_STRING, G_TYPE_VALUE, G_TYPE_INVALID); @@ -476,7 +484,8 @@ static void connection_properties(DBusGProxy *proxy, GHashTable *hash, gtk_tree_store_set(store, &iter, CONNMAN_COLUMN_NAME, name, CONNMAN_COLUMN_TYPE, type, - CONNMAN_COLUMN_ENABLED, enabled, -1); + CONNMAN_COLUMN_ENABLED, enabled, + CONNMAN_COLUMN_STRENGTH, strength, -1); done: g_object_unref(proxy); |