Struct Callbacks for blist_cb. (UPDATE)
authorRagner Magalhaes <ragner.magalhaes@openbossa.org>
Tue, 2 Dec 2008 20:49:46 +0000 (20:49 +0000)
committerAnderson Briglia <anderson.briglia@openbossa.org>
Sat, 28 Feb 2009 21:11:13 +0000 (17:11 -0400)
FIXES:
- Add blist_cb on nullclient-ecore.
- Add new struct callbacks for blist_cb on purple.pyx.

Signed-off-by: Ricardo Guimaraes <ricardo.guimaraes@indt.org.br>
Signed-off-by: Ragner Magalhaes <ragner.magalhaes@indt.org.br>

git-svn-id: https://garage.maemo.org/svn/carman/branches/carman-0.7-beta2/python-purple@1357 596f6dd7-e928-0410-a184-9e12fd12cf7e

nullclient-ecore.py
purple.pyx

index 72cc655..6cba3f8 100644 (file)
@@ -3,8 +3,6 @@ import ecore
 import purple
 
 cbs = {}
 import purple
 
 cbs = {}
-acc_cbs = {}
-blist_cbs = {}
 conn_cbs = {}
 conv_cbs = {}
 notify_cbs = {}
 conn_cbs = {}
 conv_cbs = {}
 notify_cbs = {}
@@ -16,19 +14,6 @@ def account_callback(name):
 def blist_callback(name):
     print "---- blist callback example: %s" % name
 
 def blist_callback(name):
     print "---- blist callback example: %s" % name
 
-#blist_cbs["new_list"] = blist_callback
-#blist_cbs["new_node"] = blist_callback
-#blist_cbs["show"] = blist_callback
-#blist_cbs["update"] = blist_callback
-#blist_cbs["remove"] = blist_callback
-#blist_cbs["destroy"] = blist_callback
-blist_cbs["set_visible"] = blist_callback
-blist_cbs["request_add_buddy"] = blist_callback
-blist_cbs["request_add_chat"] = blist_callback
-blist_cbs["request_add_group"] = blist_callback
-
-cbs["blist"] = blist_cbs
-
 def conn_callback(name):
     print "---- connection callback example: %s" % name
 
 def conn_callback(name):
     print "---- connection callback example: %s" % name
 
@@ -268,8 +253,6 @@ class NullClientPurple:
         self.protocol_id = "prpl-jabber"
         self.accs = None
 
         self.protocol_id = "prpl-jabber"
         self.accs = None
 
-        global cbs
-        cbs["blist"]["update"] = self._purple_update_blist_cb
 
         self.p.add_account_cb("notify_added", account_callback)
         self.p.add_account_cb("status_changed", account_callback)
 
         self.p.add_account_cb("notify_added", account_callback)
         self.p.add_account_cb("status_changed", account_callback)
@@ -277,6 +260,12 @@ class NullClientPurple:
         self.p.add_account_cb("request_authorize", account_callback)
         self.p.add_account_cb("close_account_request", account_callback)
 
         self.p.add_account_cb("request_authorize", account_callback)
         self.p.add_account_cb("close_account_request", account_callback)
 
+        self.p.add_blist_cb("set_visible", blist_callback)
+        self.p.add_blist_cb("request_add_buddy", blist_callback)
+        self.p.add_blist_cb("request_add_chat", blist_callback)
+        self.p.add_blist_cb("request_add_group", blist_callback)
+        self.p.add_blist_cb("update", self._purple_update_blist_cb)
+
         self.p.purple_init(cbs)
 
         #Initializing UI
         self.p.purple_init(cbs)
 
         #Initializing UI
index 36e01de..54be931 100644 (file)
@@ -141,13 +141,11 @@ cdef class Purple:
         """ Initializes libpurple """
 
         if callbacks_dict is not None:
         """ Initializes libpurple """
 
         if callbacks_dict is not None:
-            global blist_cbs
             global connection_cbs
             global conversation_cbs
             global notify_cbs
             global request_cbs
 
             global connection_cbs
             global conversation_cbs
             global notify_cbs
             global request_cbs
 
-            blist_cbs = callbacks_dict["blist"]
             connection_cbs = callbacks_dict["connection"]
             conversation_cbs = callbacks_dict["conversation"]
             notify_cbs = callbacks_dict["notify"]
             connection_cbs = callbacks_dict["connection"]
             conversation_cbs = callbacks_dict["conversation"]
             notify_cbs = callbacks_dict["notify"]
@@ -257,6 +255,10 @@ cdef class Purple:
         global account_cbs
         account_cbs[name] = func
 
         global account_cbs
         account_cbs[name] = func
 
+    def add_blist_cb(self, name, func):
+        global blist_cbs
+        blist_cbs[name] = func
+
     def connect(self):
         conn = Connection()
         conn.connect()
     def connect(self):
         conn = Connection()
         conn.connect()