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;