[gnome-bluetooth] Remove use of device-selected- properties
- From: Bastien Nocera <hadess src gnome org>
- To: svn-commits-list gnome org
- Subject: [gnome-bluetooth] Remove use of device-selected- properties
- Date: Thu, 28 May 2009 09:40:34 -0400 (EDT)
commit 731a5cb30f5b71a2f818d19a59caa7e97513c0ec
Author: Bastien Nocera <hadess hadess net>
Date: Thu May 28 14:37:55 2009 +0100
Remove use of device-selected- properties
And use the accessor helpers, or the new value getter.
---
common/bluetooth-chooser-button.c | 9 ++--
common/bluetooth-chooser.c | 84 ++++++------------------------------
common/bluetooth-chooser.h | 2 +-
common/test-deviceselection.c | 28 ++----------
properties/adapter.c | 24 +++++++----
sendto/main.c | 9 ++--
wizard/main.c | 16 +++----
7 files changed, 50 insertions(+), 122 deletions(-)
diff --git a/common/bluetooth-chooser-button.c b/common/bluetooth-chooser-button.c
index 873df4d..258ce0c 100644
--- a/common/bluetooth-chooser-button.c
+++ b/common/bluetooth-chooser-button.c
@@ -159,11 +159,10 @@ dialog_response_cb (GtkDialog *dialog, int response_id, gpointer data)
char *bdaddr, *icon, *name;
if (response_id == GTK_RESPONSE_ACCEPT) {
- g_object_get(button->chooser,
- "device-selected", &bdaddr,
- "device-selected-name", &name,
- "device-selected-icon", &icon,
- NULL);
+ BluetoothChooser *chooser = BLUETOOTH_CHOOSER (button->chooser);
+ bdaddr = bluetooth_chooser_get_selected_device (chooser);
+ name = bluetooth_chooser_get_selected_device_name (chooser);
+ icon = bluetooth_chooser_get_selected_device_icon (chooser);
}
gtk_widget_destroy (GTK_WIDGET (dialog));
diff --git a/common/bluetooth-chooser.c b/common/bluetooth-chooser.c
index 3c0bbdc..8bb590f 100644
--- a/common/bluetooth-chooser.c
+++ b/common/bluetooth-chooser.c
@@ -242,7 +242,7 @@ bluetooth_chooser_get_selected_device_icon (BluetoothChooser *self)
*
* Return value: the type of the device selected, or '0' if unknown
*/
-guint
+BluetoothType
bluetooth_chooser_get_selected_device_type (BluetoothChooser *self)
{
BluetoothChooserPrivate *priv = BLUETOOTH_CHOOSER_GET_PRIVATE(self);
@@ -279,9 +279,17 @@ bluetooth_chooser_get_selected_device_is_connected (BluetoothChooser *self)
return connected;
}
+/**
+ * bluetooth_chooser_get_selected_device_info:
+ * @self: A #BluetoothChooser widget.
+ * @field: The identifier for the field to get data for.
+ * @value: An empty #GValue to set.
+ *
+ * Return value: %TRUE if the @value has been set.
+ */
gboolean
bluetooth_chooser_get_selected_device_info (BluetoothChooser *self,
- const char *info,
+ const char *field,
GValue *value)
{
BluetoothChooserPrivate *priv = BLUETOOTH_CHOOSER_GET_PRIVATE(self);
@@ -289,15 +297,15 @@ bluetooth_chooser_get_selected_device_info (BluetoothChooser *self,
GEnumValue *ev;
GtkTreeIter iter;
- g_return_val_if_fail (info != NULL, FALSE);
+ g_return_val_if_fail (field != NULL, FALSE);
if (gtk_tree_selection_get_selected (priv->selection, NULL, &iter) == FALSE)
return FALSE;
eclass = g_type_class_ref (BLUETOOTH_TYPE_COLUMN);
- ev = g_enum_get_value_by_nick (eclass, info);
+ ev = g_enum_get_value_by_nick (eclass, field);
if (ev == NULL) {
- g_warning ("Unknown info '%s'", info);
+ g_warning ("Unknown field '%s'", field);
g_type_class_unref (eclass);
return FALSE;
}
@@ -349,9 +357,7 @@ device_model_row_changed (GtkTreeModel *model,
BLUETOOTH_COLUMN_NAME, &name,
-1);
/* Maybe it's the name that changed */
- if (name != NULL)
- g_object_notify (G_OBJECT (self), "device-selected-name");
- g_object_notify (G_OBJECT (self), "device-selected-is-connected");
+ g_object_notify (G_OBJECT (self), "device-selected");
g_free (name);
}
@@ -889,11 +895,6 @@ enum {
PROP_0,
PROP_TITLE,
PROP_DEVICE_SELECTED,
- PROP_DEVICE_SELECTED_ICON,
- PROP_DEVICE_SELECTED_NAME,
- PROP_DEVICE_SELECTED_TYPE,
- PROP_DEVICE_SELECTED_IS_CONNECTED,
- PROP_DEVICE_SELECTED_PROXY,
PROP_SHOW_PAIRING,
PROP_SHOW_CONNECTED,
PROP_SHOW_SEARCH,
@@ -970,27 +971,6 @@ bluetooth_chooser_get_property (GObject *object, guint prop_id,
case PROP_DEVICE_SELECTED:
g_value_take_string (value, bluetooth_chooser_get_selected_device (self));
break;
- case PROP_DEVICE_SELECTED_NAME:
- g_value_take_string (value, bluetooth_chooser_get_selected_device_name (self));
- break;
- case PROP_DEVICE_SELECTED_ICON:
- g_value_take_string (value, bluetooth_chooser_get_selected_device_icon (self));
- break;
- case PROP_DEVICE_SELECTED_TYPE:
- g_value_set_uint (value, bluetooth_chooser_get_selected_device_type (self));
- break;
- case PROP_DEVICE_SELECTED_IS_CONNECTED:
- g_value_set_boolean (value, bluetooth_chooser_get_selected_device_is_connected (self));
- break;
- case PROP_DEVICE_SELECTED_PROXY: {
- GtkTreeIter iter;
- GObject *proxy = NULL;
-
- if (gtk_tree_selection_get_selected (priv->selection, NULL, &iter) != FALSE)
- gtk_tree_model_get (priv->filter, &iter, BLUETOOTH_COLUMN_PROXY, &proxy, -1);
- g_value_take_object (value, proxy);
- break;
- }
case PROP_SHOW_PAIRING:
g_value_set_boolean (value, priv->show_paired);
break;
@@ -1068,42 +1048,6 @@ bluetooth_chooser_class_init (BluetoothChooserClass *klass)
PROP_DEVICE_SELECTED, g_param_spec_string ("device-selected",
NULL, NULL, NULL, G_PARAM_READABLE));
/**
- * BluetoothChooser:device-selected-icon:
- *
- * the icon name to use to represent the currently selected device, or %NULL
- **/
- g_object_class_install_property (G_OBJECT_CLASS(klass),
- PROP_DEVICE_SELECTED_ICON, g_param_spec_string ("device-selected-icon",
- NULL, NULL, NULL, G_PARAM_READABLE));
- /**
- * BluetoothChooser:device-selected-name:
- *
- * the name for the currently selected device
- **/
- g_object_class_install_property (G_OBJECT_CLASS(klass),
- PROP_DEVICE_SELECTED_NAME, g_param_spec_string ("device-selected-name",
- NULL, NULL, NULL, G_PARAM_READABLE));
- /**
- * BluetoothChooser:device-selected-type:
- *
- * the currently selected device's type, or 0
- **/
- g_object_class_install_property (G_OBJECT_CLASS(klass),
- PROP_DEVICE_SELECTED_TYPE, g_param_spec_uint ("device-selected-type", NULL, NULL,
- 1, 1 << (_BLUETOOTH_TYPE_NUM_TYPES - 1), 1, G_PARAM_READABLE));
- /**
- * BluetoothChooser:device-selected-is-connected:
- *
- * whether the selected device is connected to this computer, will be %FALSE if no devices are selected
- **/
- g_object_class_install_property (G_OBJECT_CLASS(klass),
- PROP_DEVICE_SELECTED_IS_CONNECTED, g_param_spec_boolean ("device-selected-is-connected", NULL, NULL,
- FALSE, G_PARAM_READABLE));
- /* Left blank intentionally */
- g_object_class_install_property (G_OBJECT_CLASS(klass),
- PROP_DEVICE_SELECTED_PROXY, g_param_spec_object ("device-selected-proxy", NULL, NULL,
- G_TYPE_OBJECT, G_PARAM_READABLE));
- /**
* BluetoothChooser:show-pairing:
*
* Whether to show the pairing column in the tree.
diff --git a/common/bluetooth-chooser.h b/common/bluetooth-chooser.h
index e58c721..df11447 100644
--- a/common/bluetooth-chooser.h
+++ b/common/bluetooth-chooser.h
@@ -67,7 +67,7 @@ gboolean bluetooth_chooser_get_selected_device_info (BluetoothChooser *self,
GValue *value);
gchar *bluetooth_chooser_get_selected_device_name (BluetoothChooser *self);
gchar * bluetooth_chooser_get_selected_device_icon (BluetoothChooser *self);
-guint bluetooth_chooser_get_selected_device_type (BluetoothChooser *self);
+BluetoothType bluetooth_chooser_get_selected_device_type (BluetoothChooser *self);
gboolean bluetooth_chooser_get_selected_device_is_connected (BluetoothChooser *self);
void bluetooth_chooser_start_discovery (BluetoothChooser *self);
diff --git a/common/test-deviceselection.c b/common/test-deviceselection.c
index fa1c31b..fd67ebb 100644
--- a/common/test-deviceselection.c
+++ b/common/test-deviceselection.c
@@ -70,7 +70,7 @@ static void select_device_changed(BluetoothChooser *sel,
GtkDialog *dialog = user_data;
char *name;
- g_object_get (G_OBJECT (sel), "device-selected-name", &name, NULL);
+ name = bluetooth_chooser_get_selected_device_name (sel);
gtk_dialog_set_response_sensitive(dialog,
GTK_RESPONSE_ACCEPT, (address != NULL && name != NULL));
g_free (name);
@@ -83,18 +83,6 @@ static void device_selected_cb(GObject *object,
dump_selected_device(BLUETOOTH_CHOOSER (object));
}
-static void device_selected_name_cb(GObject *object,
- GParamSpec *spec, gpointer user_data)
-{
- char *address;
-
- g_message ("Property \"device-selected-name\" changed");
-
- g_object_get (G_OBJECT (object), "device-selected", &address, NULL);
- select_device_changed (BLUETOOTH_CHOOSER (object), address, user_data);
- g_free (address);
-}
-
static void device_type_filter_selected_cb(GObject *object,
GParamSpec *spec, gpointer user_data)
{
@@ -183,12 +171,10 @@ response_cb (GtkDialog *dialog, gint response_id, BluetoothChooser *selector)
char *address, *name, *icon;
guint type;
- g_object_get (G_OBJECT (selector),
- "device-selected", &address,
- "device-selected-name", &name,
- "device-selected-icon", &icon,
- "device-selected-type", &type,
- NULL);
+ address = bluetooth_chooser_get_selected_device (selector);
+ name = bluetooth_chooser_get_selected_device_name (selector);
+ icon = bluetooth_chooser_get_selected_device_icon (selector);
+ type = bluetooth_chooser_get_selected_device_type (selector);
g_message("Selected device is: %s (address: %s, icon: %s, type: %s)",
name, address, icon, bluetooth_type_to_string (type));
g_free(address);
@@ -220,8 +206,6 @@ create_wizard_dialogue (void)
G_CALLBACK(select_device_changed), dialog);
g_signal_connect(selector, "notify::device-selected",
G_CALLBACK(device_selected_cb), dialog);
- g_signal_connect(selector, "notify::device-selected-name",
- G_CALLBACK(device_selected_name_cb), dialog);
g_signal_connect(selector, "notify::device-type-filter",
G_CALLBACK(device_type_filter_selected_cb), dialog);
g_signal_connect(selector, "notify::device-category-filter",
@@ -258,8 +242,6 @@ create_props_dialogue (void)
G_CALLBACK(select_device_changed), dialog);
g_signal_connect(selector, "notify::device-selected",
G_CALLBACK(device_selected_cb), dialog);
- g_signal_connect(selector, "notify::device-selected-name",
- G_CALLBACK(device_selected_name_cb), dialog);
g_signal_connect(selector, "notify::device-type-filter",
G_CALLBACK(device_type_filter_selected_cb), dialog);
g_signal_connect(selector, "notify::device-category-filter",
diff --git a/properties/adapter.c b/properties/adapter.c
index 632a340..25784cf 100644
--- a/properties/adapter.c
+++ b/properties/adapter.c
@@ -154,10 +154,8 @@ device_selected_cb(GObject *object,
char *address;
gboolean connected;
- g_object_get (G_OBJECT (adapter->chooser),
- "device-selected", &address,
- "device-selected-is-connected", &connected,
- NULL);
+ address = bluetooth_chooser_get_selected_device (BLUETOOTH_CHOOSER (adapter->chooser));
+ connected = bluetooth_chooser_get_selected_device_is_connected (BLUETOOTH_CHOOSER (adapter->chooser));
update_buttons(adapter, (address != NULL), connected);
}
@@ -202,10 +200,16 @@ static gboolean show_confirm_dialog(void)
static void delete_callback(GtkWidget *button, gpointer user_data)
{
adapter_data *adapter = user_data;
+ GValue value = { 0, };
DBusGProxy *device;
const char *path;
- g_object_get (G_OBJECT (adapter->chooser), "device-selected-proxy", &device, NULL);
+ if (bluetooth_chooser_get_selected_device_info (BLUETOOTH_CHOOSER (adapter->chooser),
+ "proxy", &value) == FALSE) {
+ return;
+ }
+ device = g_value_dup_object (&value);
+ g_value_unset (&value);
if (device == NULL)
return;
@@ -224,9 +228,15 @@ static void delete_callback(GtkWidget *button, gpointer user_data)
static void disconnect_callback(GtkWidget *button, gpointer user_data)
{
adapter_data *adapter = user_data;
+ GValue value = { 0, };
DBusGProxy *device;
- g_object_get (G_OBJECT (adapter->chooser), "device-selected-proxy", &device, NULL);
+ if (bluetooth_chooser_get_selected_device_info (BLUETOOTH_CHOOSER (adapter->chooser),
+ "proxy", &value) == FALSE) {
+ return;
+ }
+ device = g_value_dup_object (&value);
+ g_value_unset (&value);
if (device == NULL)
return;
@@ -395,8 +405,6 @@ static void create_adapter(adapter_data *adapter)
g_signal_connect (adapter->chooser, "notify::device-selected",
G_CALLBACK(device_selected_cb), adapter);
- g_signal_connect (adapter->chooser, "notify::device-selected-is-connected",
- G_CALLBACK(device_selected_cb), adapter);
gtk_table_attach(GTK_TABLE(table), adapter->chooser, 0, 1, 1, 2,
GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
diff --git a/sendto/main.c b/sendto/main.c
index ab95abf..8a0af8b 100644
--- a/sendto/main.c
+++ b/sendto/main.c
@@ -736,11 +736,10 @@ show_browse_dialog (char **device_name)
bdaddr = NULL;
response_id = gtk_dialog_run (GTK_DIALOG (dialog));
- if (response_id == GTK_RESPONSE_ACCEPT)
- g_object_get (G_OBJECT (selector),
- "device-selected", &bdaddr,
- "device-selected-name", device_name,
- NULL);
+ if (response_id == GTK_RESPONSE_ACCEPT) {
+ bdaddr = bluetooth_chooser_get_selected_device (BLUETOOTH_CHOOSER (selector));
+ *device_name = bluetooth_chooser_get_selected_device_name (BLUETOOTH_CHOOSER (selector));
+ }
gtk_widget_destroy (dialog);
diff --git a/wizard/main.c b/wizard/main.c
index 7922551..badfc24 100644
--- a/wizard/main.c
+++ b/wizard/main.c
@@ -254,15 +254,13 @@ void prepare_callback(GtkWidget *assistant,
if (page == page_setup) {
gchar *text, *address, *name, *pin_ret;
- guint type;
+ BluetoothType type;
/* Get the info about the device now,
* we can't get here without a valid selection */
- g_object_get (G_OBJECT (selector),
- "device-selected", &address,
- "device-selected-name", &name,
- "device-selected-type", &type,
- NULL);
+ address = bluetooth_chooser_get_selected_device (selector);
+ name = bluetooth_chooser_get_selected_device_name (selector);
+ type = bluetooth_chooser_get_selected_device_type (selector);
g_free(target_address);
target_address = address;
@@ -349,10 +347,8 @@ set_page_search_complete (void)
char *name, *address;
gboolean complete = FALSE;
- g_object_get (G_OBJECT (selector),
- "device-selected", &address,
- "device-selected-name", &name,
- NULL);
+ address = bluetooth_chooser_get_selected_device (selector);
+ name = bluetooth_chooser_get_selected_device_name (selector);
if (address == NULL)
complete = FALSE;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]