From e46b731142ce1fc0bad91a0391c1358c5e2d6405 Mon Sep 17 00:00:00 2001 From: Ragner Magalhaes Date: Tue, 2 Dec 2008 21:23:03 +0000 Subject: [PATCH] Added request_add_buddy. FIXES: - Added request_add_buddy. Signed-off-by: Bruno Abinader Acked-by: Ragner Magalhaes git-svn-id: https://garage.maemo.org/svn/carman/branches/carman-0.7-beta2/python-purple@1453 596f6dd7-e928-0410-a184-9e12fd12cf7e --- account.pyx | 8 ++++++++ blist_cbs.pxd | 31 +++++++++++++++++++++++++++---- 2 files changed, 35 insertions(+), 4 deletions(-) diff --git a/account.pyx b/account.pyx index cddbba7..7240de2 100644 --- a/account.pyx +++ b/account.pyx @@ -527,3 +527,11 @@ cdef class Account: return buddies_list else: return None + + def request_add_buddy(self, buddy_username, buddy_alias): + if buddy_alias: + blist.purple_blist_request_add_buddy(self._get_structure(), \ + buddy_username, NULL, buddy_alias) + else: + blist.purple_blist_request_add_buddy(self._get_structure(), \ + buddy_username, NULL, NULL) diff --git a/blist_cbs.pxd b/blist_cbs.pxd index 1153781..8fba121 100644 --- a/blist_cbs.pxd +++ b/blist_cbs.pxd @@ -170,14 +170,37 @@ cdef void set_visible(blist.PurpleBuddyList *list, glib.gboolean show): if blist_cbs.has_key("set-visible"): ( blist_cbs["set-visible"])("set-visible: TODO") -cdef void request_add_buddy(account.PurpleAccount *acc, \ - const_char *username, const_char *group, const_char *alias): +cdef void request_add_buddy(account.PurpleAccount *c_account, \ + const_char *c_buddy_username, const_char *c_buddy_group, \ + const_char *c_buddy_alias): """ - TODO + Requests from the user information needed to add a buddy to the buddy + list. """ debug.purple_debug_info("blist", "%s", "request-add-buddy\n") + + username = account.purple_account_get_username(c_account) + protocol_id = account.purple_account_get_protocol_id(c_account) + + if c_buddy_username: + buddy_username = c_buddy_username + else: + buddy_username = None + + if c_buddy_group: + buddy_group = c_buddy_group + else: + buddy_group = None + + if c_buddy_alias: + buddy_alias = c_buddy_alias + else: + buddy_alias = None + if blist_cbs.has_key("request-add-buddy"): - ( blist_cbs["request-add-buddy"])("request-add-buddy: TODO") + ( blist_cbs["request-add-buddy"])( \ + (username, protocol_id), \ + buddy_username, buddy_group, buddy_alias) cdef void request_add_chat(account.PurpleAccount *acc, \ blist.PurpleGroup *group, const_char *alias, const_char *name): -- 1.7.9.5