iruka-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Iruka-devel] Status of Iruka project


From: Petr Klyushkin
Subject: Re: [Iruka-devel] Status of Iruka project
Date: 20 Aug 2002 10:14:54 +0400
User-agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.5 (bok choi)

Hello, Erwan!

>>>>> "Erwan" == Erwan Loisant writes:

 Erwan> - Petr implemented a Roster widget (subclassing
 Erwan> wxListCtrl). Petr, could you give us precisions about how you
 Erwan> did it, what is still to do, the problems you had and how you
 Erwan> solved them ?

Well, it isn't too hard to understand it by reading code.  However,
some explanations about id are needed.  Roster holds two mappings:
jid2id and id2jid.  Id's are just numbers used to identify a contact
items in list (there can be many list items for one contact because a
person can be present in several groups).  This allows us to find all
items for a specific jid very easily.  Just the same about 'group2id'
and 'id2group' maps.  An additional info about group is stored in
'groupinfo' dictionary.  This info is used to draw group properly on
the screen.

To display various information in work roster registers it's own
handlers for such events as presence info updates (to show online
status of a user), message arrival (to show a little message icon near
contact name) and so on.  No other parts of program should operate on
roster directly.  Instead they should 'fire_event()' and, if roster
has a handler for this message, it will do what needed.  See
'MessageRead' event handling when I'll be done with messaging.

I hope this explanation is understandable.  If you still have
questions, ask'em!

-- 
                                                             C'ya, Peter.
       address@hidden://petrk.pochtamt.ru]=--
        --=[ICQ 89449080]=--=[Jabber address@hidden





reply via email to

[Prev in Thread] Current Thread [Next in Thread]