diff mcabber/src/roster.c @ 644:68fb0c1dfb15

MUC: better nickname check when entering a room
author Mikael Berthe <mikael@lilotux.net>
date Thu, 05 Jan 2006 20:20:57 +0100
parents 028c01940490
children 3ad6675caaf1
line wrap: on
line diff
--- a/mcabber/src/roster.c	Mon Jan 02 22:07:15 2006 +0100
+++ b/mcabber/src/roster.c	Thu Jan 05 20:20:57 2006 +0100
@@ -61,9 +61,15 @@
   guint type;
   enum subscr subscription;
   GSList *resource;
-  gchar *nickname; // For groupchats
-  gchar *topic;    // For groupchats
+
+  /* For groupchats */
+  gchar *nickname;
+  gchar *topic;
+  guint8 inside_room;
+
+  /* Flag used for the UI */
   guint flags;
+
   // list: user -> points to his group; group -> points to its users list
   GSList *list;
 } roster;
@@ -833,6 +839,23 @@
   return roster_usr->nickname;
 }
 
+//  buddy_setinsideroom(buddy, inside)
+// Only for chatrooms
+void buddy_setinsideroom(gpointer rosterdata, guint8 inside)
+{
+  roster *roster_usr = rosterdata;
+
+  if (!(roster_usr->type & ROSTER_TYPE_ROOM)) return;
+
+  roster_usr->inside_room = inside;
+}
+
+guint8 buddy_getinsideroom(gpointer rosterdata)
+{
+  roster *roster_usr = rosterdata;
+  return roster_usr->inside_room;
+}
+
 //  buddy_settopic(buddy, newtopic)
 // Only for chatrooms
 void buddy_settopic(gpointer rosterdata, const char *newtopic)