Mercurial > pidgin
diff gtk/plugins/crazychat/crazychat.h @ 14191:009db0b357b5
This is a hand-crafted commit to migrate across subversion revisions
16854:16861, due to some vagaries of the way the original renames were
done. Witness that monotone can do in one revision what svn had to
spread across several.
author | Ethan Blanton <elb@pidgin.im> |
---|---|
date | Sat, 16 Dec 2006 04:59:55 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gtk/plugins/crazychat/crazychat.h Sat Dec 16 04:59:55 2006 +0000 @@ -0,0 +1,46 @@ +#ifndef __CRAZYCHAT_H__ +#define __CRAZYCHAT_H__ + +#include <glib.h> +#include <sys/types.h> +#include <sys/socket.h> +#include <netinet/in.h> +#include <gtk/gtk.h> +#include "filter.h" +#include "gaim.h" + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +struct crazychat; + +/* --- type definitions --- */ + +typedef enum { INVITE = 0, ACCEPT, ACCEPTED, CONNECTED } CC_STATE; + +/** + * Finds the CrazyChat session with the handle. + * @param cc global crazychat data structure + * @param handle the peer name + * @return the cc_session if found, or NULL + */ +struct cc_session *cc_find_session(struct crazychat *cc, char *handle); + +/** + * Adds a new session with a peer, unless a peer session already exists. + * Makes a deep copy of the handle. + * @param cc global crazychat data structure + * @param handle the peer name + * @return the new/old cc_session + */ +struct cc_session *cc_add_session(struct crazychat *cc, char *handle); + +/** + * Removes a crazychat session with a peer. + * @param cc global crazychat data structure + * @param session the cc_session to remove + */ +void cc_remove_session(struct crazychat *cc, struct cc_session *session); + +#endif /* __CRAZYCHAT_H__ */