X-Git-Url: http://git.maemo.org/git/?p=python-purple;a=blobdiff_plain;f=buddy.pyx;h=5238396ce3ebdf87faefd1231aa8007f6bef0877;hp=29c56b82b8a67193533a4373ef202e700b4bdeee;hb=33bcafac77ebb7410c058807d64eaad2c33771f9;hpb=55de8749720d1245639c903d2fef844d4e61d19e diff --git a/buddy.pyx b/buddy.pyx index 29c56b8..5238396 100644 --- a/buddy.pyx +++ b/buddy.pyx @@ -27,25 +27,44 @@ cdef class Buddy: def __init__(self): self.c_buddy = NULL - def new_buddy(self, acc, char *scr, char *alias): + def __get_account(self): + return self.__acc + def __set_account(self, acc): self.__acc = acc - self.c_buddy = blist.c_purple_buddy_new(\ - self.__acc.c_account, scr, alias) + account = property(__get_account, __set_account) def __get_alias(self): - return blist.c_purple_buddy_get_alias_only(self.c_buddy) + if self.c_buddy: + return blist.c_purple_buddy_get_alias_only(self.c_buddy) + else: + return None alias = property(__get_alias) def __get_name(self): - return blist.c_purple_buddy_get_name(self.c_buddy) + if self.c_buddy: + return blist.c_purple_buddy_get_name(self.c_buddy) + else: + return None name = property(__get_name) - def __get_online(self): + """ + def __get_online(self): # FIXME name = self.name self.c_buddy = blist.c_purple_find_buddy(self.__acc.c_account, name) - if status.c_purple_presence_is_online(blist.c_purple_buddy_get_presence(self.c_buddy)): - return True - else: - return False + return status.c_purple_presence_is_online(blist.c_purple_buddy_get_presence(self.c_buddy)) online = property(__get_online) + """ + def new_buddy(self, acc, name, alias): + self.__acc = acc + cdef char *c_name = NULL + cdef char *c_alias = NULL + + if name is not None: + c_name = name + + if alias is not None: + c_alias = alias + + self.c_buddy = blist.c_purple_buddy_new(\ + self.__acc.c_account, c_name, c_alias)