diff src/conversation.h @ 10665:4829abdc5c35

[gaim-migrate @ 12205] and to oldstatus committer: Tailor Script <tailor@pidgin.im>
author Sean Egan <seanegan@gmail.com>
date Mon, 07 Mar 2005 18:36:34 +0000
parents c3a964f4fc61
children 4151d16f6348
line wrap: on
line diff
--- a/src/conversation.h	Mon Mar 07 18:19:00 2005 +0000
+++ b/src/conversation.h	Mon Mar 07 18:36:34 2005 +0000
@@ -79,7 +79,6 @@
 	GAIM_CONV_UPDATE_LOGGING, /**< Logging for this conversation was
 	                               enabled or disabled. */
 	GAIM_CONV_UPDATE_TOPIC,   /**< The topic for a chat was updated. */
-
 	/*
 	 * XXX These need to go when we implement a more generic core/UI event
 	 * system.
@@ -89,7 +88,9 @@
 	GAIM_CONV_UPDATE_AWAY,     /**< The other user went away.                */
 	GAIM_CONV_UPDATE_ICON,     /**< The other user's buddy icon changed.     */
 	GAIM_CONV_UPDATE_TITLE,
-	GAIM_CONV_UPDATE_CHATLEFT
+	GAIM_CONV_UPDATE_CHATLEFT,
+
+	GAIM_CONV_UPDATE_FEATURES, /**< The features for a chat have changed */
 
 } GaimConvUpdateType;
 
@@ -132,7 +133,9 @@
 	GAIM_CBFLAGS_VOICE         = 0x0001, /**< Voiced user or "Participant" */
 	GAIM_CBFLAGS_HALFOP        = 0x0002, /**< Half-op                      */
 	GAIM_CBFLAGS_OP            = 0x0004, /**< Channel Op or Moderator      */
-	GAIM_CBFLAGS_FOUNDER       = 0x0008  /**< Channel Founder              */
+	GAIM_CBFLAGS_FOUNDER       = 0x0008, /**< Channel Founder              */
+	GAIM_CBFLAGS_TYPING        = 0x0010, /**< Currently typing             */
+	
 
 } GaimConvChatBuddyFlags;
 
@@ -164,6 +167,7 @@
 	void (*remove_conversation)(GaimConvWindow *win, GaimConversation *conv);
 	void (*move_conversation)(GaimConvWindow *win, GaimConversation *conv,
 	                          unsigned int newIndex);
+
 	int (*get_active_index)(const GaimConvWindow *win);
 	gboolean (*has_focus)(GaimConvWindow *win);
 };
@@ -305,6 +309,9 @@
 	void *ui_data;                           /**< UI-specific data.       */
 
 	GHashTable *data;                        /**< Plugin-specific data.   */
+  
+	GaimConnectionFlags features; /**< The supported features */
+
 };
 
 typedef void (*GaimConvPlacementFunc)(GaimConversation *);
@@ -495,7 +502,6 @@
  * @return The window if found, or @c NULL if not found.
  */
 GaimConvWindow *gaim_get_first_window_with_type(GaimConversationType type);
-
 /**
  * Returns the last window containing a conversation of the specified type.
  *
@@ -839,8 +845,25 @@
  * @see gaim_conv_chat_write()
  */
 void gaim_conversation_write(GaimConversation *conv, const char *who,
-							 const char *message, GaimMessageFlags flags,
-							 time_t mtime);
+		const char *message, GaimMessageFlags flags,
+		time_t mtime);
+
+
+/**
+	Set the features as supported for the given conversation.
+	@param conv      The conversation
+	@param features  Bitset defining supported features
+*/
+void gaim_conversation_set_features(GaimConversation *conv,
+		GaimConnectionFlags features);
+
+
+/**
+	Get the features supported by the given conversation.
+	@param conv  The conversation
+*/
+GaimConnectionFlags gaim_conversation_get_features(GaimConversation *conv);		    
+
 
 /**
  * Updates the progress bar on a conversation window
@@ -1522,6 +1545,7 @@
  */
 GaimConvWindowUiOps *gaim_conversations_get_win_ui_ops(void);
 
+
 /*@}*/
 
 /**************************************************************************/