[Telepathy-commits] [telepathy-glib/master] BaseConnection: add self-handle property on top of ::self_handle field
Will Thompson
will.thompson at collabora.co.uk
Thu Aug 28 07:51:06 PDT 2008
---
telepathy-glib/base-connection.c | 28 ++++++++++++++++++++++++++++
1 files changed, 28 insertions(+), 0 deletions(-)
diff --git a/telepathy-glib/base-connection.c b/telepathy-glib/base-connection.c
index d367ce3..d811e6a 100644
--- a/telepathy-glib/base-connection.c
+++ b/telepathy-glib/base-connection.c
@@ -63,6 +63,7 @@ G_DEFINE_ABSTRACT_TYPE_WITH_CODE(TpBaseConnection,
enum
{
PROP_PROTOCOL = 1,
+ PROP_SELF_HANDLE,
};
/* signal enum */
@@ -187,6 +188,10 @@ tp_base_connection_get_property (GObject *object,
g_value_set_string (value, priv->protocol);
break;
+ case PROP_SELF_HANDLE:
+ g_value_set_uint (value, self->self_handle);
+ break;
+
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
break;
@@ -208,6 +213,15 @@ tp_base_connection_set_property (GObject *object,
priv->protocol = g_value_dup_string (value);
g_assert (priv->protocol != NULL);
break;
+
+ case PROP_SELF_HANDLE:
+ tp_handle_unref (priv->handles[TP_HANDLE_TYPE_CONTACT],
+ self->self_handle);
+ self->self_handle = g_value_get_uint (value);
+ tp_handle_ref (priv->handles[TP_HANDLE_TYPE_CONTACT],
+ self->self_handle);
+ break;
+
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
break;
@@ -534,6 +548,20 @@ tp_base_connection_class_init (TpBaseConnectionClass *klass)
G_PARAM_STATIC_NAME | G_PARAM_STATIC_BLURB | G_PARAM_STATIC_NICK);
g_object_class_install_property (object_class, PROP_PROTOCOL, param_spec);
+ /**
+ * TpBaseConnection:self-handle:
+ *
+ * The handle of type %TP_HANDLE_TYPE_CONTACT representing the local user.
+ * Must be set nonzero by the subclass before moving to state CONNECTED.
+ */
+ param_spec = g_param_spec_uint ("self-handle",
+ "Connection.SelfHandle",
+ "The handle of type %TP_HANDLE_TYPE_CONTACT representing the local user.",
+ 0, G_MAXUINT, 0,
+ G_PARAM_READWRITE |
+ G_PARAM_STATIC_BLURB);
+ g_object_class_install_property (object_class, PROP_SELF_HANDLE, param_spec);
+
/* signal definitions */
/**
--
1.5.6.3
More information about the Telepathy-commits
mailing list