diff src/protocols/yahoo/yahoo.h @ 6784:ea3707dde7a3

[gaim-migrate @ 7323] marv_sf writes: "Fixes some issues with idle buddies. Displays the wireless icon for sms users. Hopefully makes long contact lists (and long ignore lists, if such things exist) work. Notices with a buddy isn't on the server list, and uses the notauthorized icon, displays a status/tooltip of Not on server list, and adds a menu item to add them. It also considates the games and status message hash tables into a single one, that uses yahoo_friend for its values. yahoo_friend is nice enough to store the information for all the above items." committer: Tailor Script <tailor@pidgin.im>
author Luke Schierer <lschiere@pidgin.im>
date Sun, 07 Sep 2003 21:59:55 +0000
parents 7b878ee8f064
children 7de1b559cbbb
line wrap: on
line diff
--- a/src/protocols/yahoo/yahoo.h	Sun Sep 07 21:00:34 2003 +0000
+++ b/src/protocols/yahoo/yahoo.h	Sun Sep 07 21:59:55 2003 +0000
@@ -23,6 +23,8 @@
 #ifndef _YAHOO_H_
 #define _YAHOO_H_
 
+#include "prpl.h"
+
 enum yahoo_service { /* these are easier to see in hex */
 	YAHOO_SERVICE_LOGON = 1,
 	YAHOO_SERVICE_LOGOFF,
@@ -100,16 +102,15 @@
 	YAHOO_STATUS_OFFLINE = 0x5a55aa56, /* don't ask */
 	YAHOO_STATUS_TYPING = 0x16
 };
-#define YAHOO_STATUS_GAME 0x2 /* Games don't fit into the regular status model */
 
 struct yahoo_data {
 	int fd;
 	guchar *rxqueue;
 	int rxlen;
-	GHashTable *hash;
-	GHashTable *games;
+	GHashTable *friends;
 	int current_status;
 	gboolean logged_in;
+	GString *tmp_serv_blist, *tmp_serv_ilist;
 	GSList *confs;
 	unsigned int conf_id; /* just a counter */
 	gboolean chat_online;
@@ -129,6 +130,15 @@
 	GSList *hash;
 };
 
+struct yahoo_friend { /* we'll call them friends, so we don't confuse them with GaimBuddy */
+	enum yahoo_status status;
+	char *msg;
+	char *game;
+	int idle;
+	int away;
+	gboolean sms;
+};
+
 struct yahoo_packet *yahoo_packet_new(enum yahoo_service service, enum yahoo_status status, int id);
 void yahoo_packet_hash(struct yahoo_packet *pkt, int key, const char *value);
 int yahoo_send_packet(struct yahoo_data *yd, struct yahoo_packet *pkt);