diff options
author | Michael Ruprecht <maiku@pidgin.im> | 2009-11-02 20:20:21 +0000 |
---|---|---|
committer | Michael Ruprecht <maiku@pidgin.im> | 2009-11-02 20:20:21 +0000 |
commit | 4e740c42fffec0295bde8e6975bebf311fc47841 (patch) | |
tree | ab8c9393c49af883857d9a47cfea522ec45458f3 | |
parent | e1e30e1e7c3f10ceae5cd41096790da524d34834 (diff) | |
download | pidgin-4e740c42fffec0295bde8e6975bebf311fc47841.tar.gz |
Add a read only property to PurpleMedia to retrieve the MediaBackend object.
-rw-r--r-- | libpurple/media/media.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/libpurple/media/media.c b/libpurple/media/media.c index b7c3299e2f..12a14bcc49 100644 --- a/libpurple/media/media.c +++ b/libpurple/media/media.c @@ -149,6 +149,7 @@ static guint purple_media_signals[LAST_SIGNAL] = {0}; enum { PROP_0, PROP_MANAGER, + PROP_BACKEND, PROP_ACCOUNT, PROP_CONFERENCE_TYPE, PROP_INITIATOR, @@ -203,6 +204,17 @@ purple_media_class_init (PurpleMediaClass *klass) PURPLE_TYPE_MEDIA_MANAGER, G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE)); + /* + * This one should be PURPLE_TYPE_MEDIA_BACKEND, but it doesn't + * like interfaces because they "aren't GObjects" + */ + g_object_class_install_property(gobject_class, PROP_BACKEND, + g_param_spec_object("backend", + "Purple Media Backend", + "The backend object this media object uses.", + G_TYPE_OBJECT, + G_PARAM_READABLE)); + g_object_class_install_property(gobject_class, PROP_ACCOUNT, g_param_spec_pointer("account", "PurpleAccount", @@ -423,6 +435,9 @@ purple_media_get_property (GObject *object, guint prop_id, GValue *value, GParam case PROP_MANAGER: g_value_set_object(value, media->priv->manager); break; + case PROP_BACKEND: + g_value_set_object(value, media->priv->backend); + break; case PROP_ACCOUNT: g_value_set_pointer(value, media->priv->account); break; |