Mercurial > hg
comparison mcabber/src/roster.c @ 439:63562fd409a1
/info can show multiple resources
Add buddy_getresources() and teach /info about multiple resources.
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Tue, 20 Sep 2005 21:27:21 +0200 |
parents | b44be19d6229 |
children | 03bb57383cea |
comparison
equal
deleted
inserted
replaced
438:b44be19d6229 | 439:63562fd409a1 |
---|---|
788 if (p_res) | 788 if (p_res) |
789 return p_res->status_msg; | 789 return p_res->status_msg; |
790 return NULL; | 790 return NULL; |
791 } | 791 } |
792 | 792 |
793 gchar buddy_getresourceprio(gpointer rosterdata, const char *resname) | |
794 { | |
795 roster *roster_usr = rosterdata; | |
796 res *p_res = get_resource(roster_usr, resname); | |
797 if (p_res) | |
798 return p_res->prio; | |
799 return 0; | |
800 } | |
801 | |
802 // buddy_getresources(roster_data) | |
803 // Return a singly-linked-list of resource names | |
804 // Note: the caller should free the list (and data) after use | |
805 GSList *buddy_getresources(gpointer rosterdata) | |
806 { | |
807 roster *roster_usr = rosterdata; | |
808 GSList *reslist = NULL, *lp; | |
809 | |
810 for (lp = roster_usr->resource; lp; lp = g_slist_next(lp)) | |
811 reslist = g_slist_append(reslist, g_strdup(((res*)lp->data)->name)); | |
812 | |
813 return reslist; | |
814 } | |
815 | |
793 // buddy_setflags() | 816 // buddy_setflags() |
794 // Set one or several flags to value (TRUE/FALSE) | 817 // Set one or several flags to value (TRUE/FALSE) |
795 void buddy_setflags(gpointer rosterdata, guint flags, guint value) | 818 void buddy_setflags(gpointer rosterdata, guint flags, guint value) |
796 { | 819 { |
797 roster *roster_usr = rosterdata; | 820 roster *roster_usr = rosterdata; |