comparison src/conversation.h @ 10526:55e7d72fc09a

[gaim-migrate @ 11843] maquina writes: This patch implements a custom smiley API, and it also implements custom smileys for the msn protocol. As it stands, it is not able to cache custom smileys, and is not able to redefine a custom smiley without opening a new conversation. I modified it quite a bit, and didn't test it at all, so it probably doesn't work anymore. I'm not quite done with it yet either. Also, this is just receiving custom smileys. committer: Tailor Script <tailor@pidgin.im>
author Tim Ringenbach <marv@pidgin.im>
date Tue, 18 Jan 2005 18:31:32 +0000
parents bbf738a0ce7b
children c3a964f4fc61
comparison
equal deleted inserted replaced
10525:ddea15f4cbc2 10526:55e7d72fc09a
197 197
198 void (*update_progress)(GaimConversation *conv, float percent); 198 void (*update_progress)(GaimConversation *conv, float percent);
199 199
200 gboolean (*has_focus)(GaimConversation *conv); 200 gboolean (*has_focus)(GaimConversation *conv);
201 201
202 /* Custom Smileys */
203 gboolean (*custom_smiley_add)(GaimConversation *conv, const char *smile);
204 void (*custom_smiley_write)(GaimConversation *conv, const char *smile,
205 const char * data, gint64 size);
206 void (*custom_smiley_close)(GaimConversation *conv, const char *smile);
207
208
209
202 /* Events */ 210 /* Events */
203 void (*updated)(GaimConversation *conv, GaimConvUpdateType type); 211 void (*updated)(GaimConversation *conv, GaimConvUpdateType type);
204 212
205 }; 213 };
206 214
1031 * @param im The IM. 1039 * @param im The IM.
1032 * @param message The message to send. 1040 * @param message The message to send.
1033 */ 1041 */
1034 void gaim_conv_im_send(GaimConvIm *im, const char *message); 1042 void gaim_conv_im_send(GaimConvIm *im, const char *message);
1035 1043
1044 /**
1045 * Adds a smiley to the conversation's smiley tree.
1046 *
1047 * @param conv The conversation to associate the smiley with.
1048 * @param smile The text associated with the smiley
1049 * @param cksum_type The type of checksum.
1050 * @param chksum The checksum, as a NUL terminated base64 string.
1051 * @return @c TRUE if an icon is excepted, else FALSE. Note that
1052 * it is an error to never call gaim_conv_custom_smiley_close if
1053 * this function returns @c TRUE, but an error to call it if
1054 * @c FALSE is returned.
1055 */
1056
1057 gboolean gaim_conv_custom_smiley_add(GaimConversation *conv, const char *smile,
1058 const char *cksum_type, const char *chksum);
1059
1060
1061 /**
1062 * Updates the image associated with the current smiley.
1063 *
1064 * @param conv The conversation associated with the smiley.
1065 * @param smile The text associated with the smiley.
1066 * @param data The actual image data.
1067 * @param size The length of the data.
1068 */
1069
1070 void gaim_conv_custom_smiley_write(GaimConversation *conv,
1071 const char *smile, const char * data,
1072 gint64 size);
1073
1074 /**
1075 * Close the custom smiley, all data has been written with
1076 * gaim_conv_custom_smiley_write, and it is no longer valid
1077 * to call that function on that smiley.
1078 *
1079 * @param conv The gaim conversation associated with the smiley.
1080 * @param smile The text associated with the smiley
1081 */
1082
1083 void gaim_conv_custom_smiley_close(GaimConversation *conv, const char *smile);
1084
1036 /*@}*/ 1085 /*@}*/
1037 1086
1038 1087
1039 /**************************************************************************/ 1088 /**************************************************************************/
1040 /** @name Chat Conversation API */ 1089 /** @name Chat Conversation API */