diff src/conversation.h @ 6407:ba0b99a72be2

[gaim-migrate @ 6913] Added API commands for adding or removing a batch of users at once to/from a chat. IRC no longer has half a billion "Diablo-D3 has entered the room." messages anymore. committer: Tailor Script <tailor@pidgin.im>
author Christian Hammond <chipx86@chipx86.com>
date Thu, 07 Aug 2003 20:47:29 +0000
parents 96de6d9eb422
children 874a5c9f4eb8
line wrap: on
line diff
--- a/src/conversation.h	Thu Aug 07 01:15:54 2003 +0000
+++ b/src/conversation.h	Thu Aug 07 20:47:29 2003 +0000
@@ -143,9 +143,11 @@
 					   time_t mtime);
 
 	void (*chat_add_user)(GaimConversation *conv, const char *user);
+	void (*chat_add_users)(GaimConversation *conv, GList *users);
 	void (*chat_rename_user)(GaimConversation *conv,
 							 const char *old_name, const char *new_name);
 	void (*chat_remove_user)(GaimConversation *conv, const char *user);
+	void (*chat_remove_users)(GaimConversation *conv, GList *users);
 
 	void (*set_title)(GaimConversation *conv, const char *title);
 	void (*update_progress)(GaimConversation *conv, float percent);
@@ -915,6 +917,10 @@
 /**
  * Sets the list of users in the chat room.
  *
+ * @note Calling this function will not update the display of the users.
+ *       Please use gaim_chat_add_user(), gaim_chat_add_users(),
+ *       gaim_chat_remove_user(), and gaim_chat_remove_users() instead.
+ *
  * @param chat  The chat.
  * @param users The list of users.
  *
@@ -1061,6 +1067,17 @@
 						const char *extra_msg);
 
 /**
+ * Adds a list of users to a chat.
+ *
+ * The data is copied from @a users, so it is up to the developer to
+ * free this list after calling this function.
+ *
+ * @param chat      The chat.
+ * @param users     The list of users to add.
+ */
+void gaim_chat_add_users(GaimChat *chat, GList *users);
+
+/**
  * Renames a user in a chat.
  *
  * @param chat     The chat.
@@ -1073,6 +1090,8 @@
 /**
  * Removes a user from a chat, optionally with a reason.
  *
+ * It is up to the developer to free this list after calling this function.
+ *
  * @param chat   The chat.
  * @param user   The user that is being removed.
  * @param reason The optional reason given for the removal. Can be @c NULL.
@@ -1081,6 +1100,15 @@
 						   const char *reason);
 
 /**
+ * Removes a list of users from a chat, optionally with a single reason.
+ *
+ * @param chat   The chat.
+ * @param users  The users that are being removed.
+ * @param reason The optional reason given for the removal. Can be @c NULL.
+ */
+void gaim_chat_remove_users(GaimChat *chat, GList *users, const char *reason);
+
+/**
  * Finds a chat with the specified chat ID.
  *
  * @param gc The gaim_connection.