Mercurial > pidgin
diff libgaim/protocols/qq/buddy_info.h @ 14611:000b8c063121
[gaim-migrate @ 17339]
My previous implementation was a bit awkward. This requires less overhead.
Also, let's only show those info fields that a buddy has actually filled out.
committer: Tailor Script <tailor@pidgin.im>
author | Mark Huetsch <markhuetsch> |
---|---|
date | Fri, 22 Sep 2006 17:03:54 +0000 |
parents | 60b1bc8dbf37 |
children | c039c920e11c |
line wrap: on
line diff
--- a/libgaim/protocols/qq/buddy_info.h Fri Sep 22 16:05:09 2006 +0000 +++ b/libgaim/protocols/qq/buddy_info.h Fri Sep 22 17:03:54 2006 +0000 @@ -25,6 +25,7 @@ #include <glib.h> #include "connection.h" + #include "buddy_opt.h" #include "qq.h" @@ -39,80 +40,47 @@ #define QQ_BUDDY_GENDER_UNKNOWN 0xff typedef struct _contact_info { - gchar *uid; - gchar *nick; - gchar *country; - gchar *province; - gchar *zipcode; - gchar *address; - gchar *tel; - gchar *age; - gchar *gender; - gchar *name; - gchar *email; - gchar *pager_sn; - gchar *pager_num; - gchar *pager_sp; - gchar *pager_base_num; - gchar *pager_type; - gchar *occupation; - gchar *homepage; - gchar *auth_type; - gchar *unknown1; - gchar *unknown2; - gchar *face; - gchar *hp_num; - gchar *hp_type; - gchar *intro; - gchar *city; - gchar *unknown3; - gchar *unknown4; - gchar *unknown5; - gchar *is_open_hp; - gchar *is_open_contact; - gchar *college; - gchar *horoscope; - gchar *zodiac; - gchar *blood; - gchar *qq_show; - gchar *unknown6; /* always 0x2D */ + gchar *uid; + gchar *nick; + gchar *country; + gchar *province; + gchar *zipcode; + gchar *address; + gchar *tel; + gchar *age; + gchar *gender; + gchar *name; + gchar *email; + gchar *pager_sn; + gchar *pager_num; + gchar *pager_sp; + gchar *pager_base_num; + gchar *pager_type; + gchar *occupation; + gchar *homepage; + gchar *auth_type; + gchar *unknown1; + gchar *unknown2; + gchar *face; + gchar *hp_num; + gchar *hp_type; + gchar *intro; + gchar *city; + gchar *unknown3; + gchar *unknown4; + gchar *unknown5; + gchar *is_open_hp; + gchar *is_open_contact; + gchar *college; + gchar *horoscope; + gchar *zodiac; + gchar *blood; + gchar *qq_show; + gchar *unknown6; /* always 0x2D */ } contact_info; -/* There is no user id stored in the reply packet for information query - * we have to manually store the query, so that we know the query source */ -typedef struct _qq_info_query { - guint32 uid; - gboolean show_window; - gboolean modify_info; -} qq_info_query; - -/* We get an info packet on ourselves before we modify our information. - * Even though not all of the information is currently modifiable, it still - * all needs to be there when we send out the modify info packet */ -typedef struct _modify_info_data { - GaimConnection *gc; - GList *misc, *node; -} modify_info_data; - -#define QQ_CONTACT_FIELDS 37 - -#define QQ_MAIN_INFO "Primary Information" -#define QQ_EXTRA_INFO "Detailed Information" -#define QQ_PERSONAL_INTRO "Personal Introduction" -#define QQ_MISC "Miscellaneous" - -#define QQ_NO_CHOICE 0 -#define QQ_HOROSCOPE 1 -#define QQ_ZODIAC 2 -#define QQ_BLOOD 3 -#define QQ_GENDER 4 -#define QQ_COUNTRY 5 -#define QQ_PROVINCE 6 -#define QQ_OCCUPATION 7 - void qq_refresh_buddy_and_myself(contact_info *info, GaimConnection *gc); void qq_send_packet_get_info(GaimConnection *gc, guint32 uid, gboolean show_window); -void qq_send_packet_modify_info(GaimConnection *gc, contact_info *info); void qq_prepare_modify_info(GaimConnection *gc); void qq_process_modify_info_reply(guint8 *buf, gint buf_len, GaimConnection *gc); void qq_process_get_info_reply(guint8 *buf, gint buf_len, GaimConnection *gc);