Mercurial > pidgin
diff libpurple/plugins/signals-test.c @ 15373:5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
author | Sean Egan <seanegan@gmail.com> |
---|---|
date | Sat, 20 Jan 2007 02:32:10 +0000 |
parents | |
children | 32c366eeeb99 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/libpurple/plugins/signals-test.c Sat Jan 20 02:32:10 2007 +0000 @@ -0,0 +1,708 @@ +/* + * Signals test plugin. + * + * Copyright (C) 2003 Christian Hammond. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA + * 02111-1307, USA. + */ +#define SIGNAL_TEST_PLUGIN_ID "core-signals-test" + +#include <stdio.h> + +#include "internal.h" +#include "cipher.h" +#include "connection.h" +#include "conversation.h" +#include "core.h" +#include "debug.h" +#include "ft.h" +#include "signals.h" +#include "version.h" +#include "status.h" +#include "sound.h" + +/************************************************************************** + * Account subsystem signal callbacks + **************************************************************************/ +static void +account_connecting_cb(GaimAccount *account, void *data) +{ + gaim_debug_misc("signals test", "account-connecting (%s)\n", + gaim_account_get_username(account)); +} + +static void +account_setting_info_cb(GaimAccount *account, const char *info, void *data) +{ + gaim_debug_misc("signals test", "account-setting-info (%s, %s)\n", + gaim_account_get_username(account), info); +} + +static void +account_set_info_cb(GaimAccount *account, const char *info, void *data) +{ + gaim_debug_misc("signals test", "account-set-info (%s, %s)\n", + gaim_account_get_username(account), info); +} + +static void +account_status_changed(GaimAccount *account, GaimStatus *old, GaimStatus *new, + gpointer data) +{ + gaim_debug_misc("signals test", "account-status-changed (%s, %s, %s)\n", + gaim_account_get_username(account), + gaim_status_get_name(old), + gaim_status_get_name(new)); +} + +static void +account_alias_changed(GaimAccount *account, const char *old, gpointer data) +{ + gaim_debug_misc("signals test", "account-alias-changed (%s, %s, %s)\n", + gaim_account_get_username(account), + old, gaim_account_get_alias(account)); +} + +/************************************************************************** + * Buddy Icons signal callbacks + **************************************************************************/ +static void +buddy_icon_changed_cb(GaimBuddy *buddy) +{ + gaim_debug_misc("signals test", "buddy icon changed (%s)\n", + gaim_buddy_get_name(buddy)); +} + +/************************************************************************** + * Buddy List subsystem signal callbacks + **************************************************************************/ +static void +buddy_status_changed_cb(GaimBuddy *buddy, GaimStatus *old_status, + GaimStatus *status, void *data) +{ + gaim_debug_misc("signals test", "buddy-status-changed (%s %s to %s)\n", + buddy->name, gaim_status_get_id(old_status), + gaim_status_get_id(status)); +} + +static void +buddy_idle_changed_cb(GaimBuddy *buddy, gboolean old_idle, gboolean idle, + void *data) +{ + gaim_debug_misc("signals test", "buddy-idle-changed (%s %s)\n", + buddy->name, old_idle ? "unidled" : "idled"); +} + +static void +buddy_signed_on_cb(GaimBuddy *buddy, void *data) +{ + gaim_debug_misc("signals test", "buddy-signed-on (%s)\n", buddy->name); +} + +static void +buddy_signed_off_cb(GaimBuddy *buddy, void *data) +{ + gaim_debug_misc("signals test", "buddy-signed-off (%s)\n", buddy->name); +} + +static void +buddy_added_cb(GaimBuddy *buddy, void *data) +{ + gaim_debug_misc("signals test", "buddy_added_cb (%s)\n", gaim_buddy_get_name(buddy)); +} + +static void +buddy_removed_cb(GaimBuddy *buddy, void *data) +{ + gaim_debug_misc("signals test", "buddy_removed_cb (%s)\n", gaim_buddy_get_name(buddy)); +} + +static void +blist_node_aliased(GaimBlistNode *node, const char *old_alias) +{ + GaimContact *p = (GaimContact *)node; + GaimBuddy *b = (GaimBuddy *)node; + GaimChat *c = (GaimChat *)node; + GaimGroup *g = (GaimGroup *)node; + + if (GAIM_BLIST_NODE_IS_CONTACT(node)) + gaim_debug_misc("signals test", "blist-node-aliased (Contact: %s, %s)\n", p->alias, old_alias); + else if (GAIM_BLIST_NODE_IS_BUDDY(node)) + gaim_debug_misc("signals test", "blist-node-aliased (Buddy: %s, %s)\n", b->name, old_alias); + else if (GAIM_BLIST_NODE_IS_CHAT(node)) + gaim_debug_misc("signals test", "blist-node-aliased (Chat: %s, %s)\n", c->alias, old_alias); + else if (GAIM_BLIST_NODE_IS_GROUP(node)) + gaim_debug_misc("signals test", "blist-node-aliased (Group: %s, %s)\n", g->name, old_alias); + else + gaim_debug_misc("signals test", "blist-node-aliased (UNKNOWN: %d, %s)\n", node->type, old_alias); + +} + +static void +blist_node_extended_menu_cb(GaimBlistNode *node, void *data) +{ + GaimContact *p = (GaimContact *)node; + GaimBuddy *b = (GaimBuddy *)node; + GaimChat *c = (GaimChat *)node; + GaimGroup *g = (GaimGroup *)node; + + if (GAIM_BLIST_NODE_IS_CONTACT(node)) + gaim_debug_misc("signals test", "blist-node-extended-menu (Contact: %s)\n", p->alias); + else if (GAIM_BLIST_NODE_IS_BUDDY(node)) + gaim_debug_misc("signals test", "blist-node-extended-menu (Buddy: %s)\n", b->name); + else if (GAIM_BLIST_NODE_IS_CHAT(node)) + gaim_debug_misc("signals test", "blist-node-extended-menu (Chat: %s)\n", c->alias); + else if (GAIM_BLIST_NODE_IS_GROUP(node)) + gaim_debug_misc("signals test", "blist-node-extended-menu (Group: %s)\n", g->name); + else + gaim_debug_misc("signals test", "blist-node-extended-menu (UNKNOWN: %d)\n", node->type); + +} + + +/************************************************************************** + * Connection subsystem signal callbacks + **************************************************************************/ +static void +signing_on_cb(GaimConnection *gc, void *data) +{ + gaim_debug_misc("signals test", "signing-on (%s)\n", + gaim_account_get_username(gaim_connection_get_account(gc))); +} + +static void +signed_on_cb(GaimConnection *gc, void *data) +{ + gaim_debug_misc("signals test", "signed-on (%s)\n", + gaim_account_get_username(gaim_connection_get_account(gc))); +} + +static void +signing_off_cb(GaimConnection *gc, void *data) +{ + gaim_debug_misc("signals test", "signing-off (%s)\n", + gaim_account_get_username(gaim_connection_get_account(gc))); +} + +static void +signed_off_cb(GaimConnection *gc, void *data) +{ + gaim_debug_misc("signals test", "signed-off (%s)\n", + gaim_account_get_username(gaim_connection_get_account(gc))); +} + +/************************************************************************** + * Conversation subsystem signal callbacks + **************************************************************************/ +static gboolean +writing_im_msg_cb(GaimAccount *account, const char *who, char **buffer, + GaimConversation *conv, GaimMessageFlags flags, void *data) +{ + gaim_debug_misc("signals test", "writing-im-msg (%s, %s, %s)\n", + gaim_account_get_username(account), gaim_conversation_get_name(conv), *buffer); + + return FALSE; + +} + +static void +wrote_im_msg_cb(GaimAccount *account, const char *who, const char *buffer, + GaimConversation *conv, GaimMessageFlags flags, void *data) +{ + gaim_debug_misc("signals test", "wrote-im-msg (%s, %s, %s)\n", + gaim_account_get_username(account), gaim_conversation_get_name(conv), buffer); +} + +static void +sending_im_msg_cb(GaimAccount *account, char *recipient, char **buffer, void *data) +{ + gaim_debug_misc("signals test", "sending-im-msg (%s, %s, %s)\n", + gaim_account_get_username(account), recipient, *buffer); + +} + +static void +sent_im_msg_cb(GaimAccount *account, const char *recipient, const char *buffer, void *data) +{ + gaim_debug_misc("signals test", "sent-im-msg (%s, %s, %s)\n", + gaim_account_get_username(account), recipient, buffer); +} + +static gboolean +receiving_im_msg_cb(GaimAccount *account, char **sender, char **buffer, + GaimConversation *conv, GaimMessageFlags *flags, void *data) +{ + gaim_debug_misc("signals test", "receiving-im-msg (%s, %s, %s, %s, %d)\n", + gaim_account_get_username(account), *sender, *buffer, + (conv != NULL) ? gaim_conversation_get_name(conv) : "(null)", *flags); + + return FALSE; +} + +static void +received_im_msg_cb(GaimAccount *account, char *sender, char *buffer, + GaimConversation *conv, GaimMessageFlags flags, void *data) +{ + gaim_debug_misc("signals test", "received-im-msg (%s, %s, %s, %s, %d)\n", + gaim_account_get_username(account), sender, buffer, + (conv != NULL) ? gaim_conversation_get_name(conv) : "(null)", flags); +} + +static gboolean +writing_chat_msg_cb(GaimAccount *account, const char *who, char **buffer, + GaimConversation *conv, GaimMessageFlags flags, void *data) +{ + gaim_debug_misc("signals test", "writing-chat-msg (%s, %s)\n", + gaim_conversation_get_name(conv), *buffer); + + return FALSE; +} + +static void +wrote_chat_msg_cb(GaimAccount *account, const char *who, const char *buffer, + GaimConversation *conv, GaimMessageFlags flags, void *data) +{ + gaim_debug_misc("signals test", "wrote-chat-msg (%s, %s)\n", + gaim_conversation_get_name(conv), buffer); +} + +static gboolean +sending_chat_msg_cb(GaimAccount *account, char **buffer, int id, void *data) +{ + gaim_debug_misc("signals test", "sending-chat-msg (%s, %s, %d)\n", + gaim_account_get_username(account), *buffer, id); + + return FALSE; +} + +static void +sent_chat_msg_cb(GaimAccount *account, const char *buffer, int id, void *data) +{ + gaim_debug_misc("signals test", "sent-chat-msg (%s, %s, %d)\n", + gaim_account_get_username(account), buffer, id); +} + +static gboolean +receiving_chat_msg_cb(GaimAccount *account, char **sender, char **buffer, + GaimConversation *chat, GaimMessageFlags *flags, void *data) +{ + gaim_debug_misc("signals test", + "receiving-chat-msg (%s, %s, %s, %s, %d)\n", + gaim_account_get_username(account), *sender, *buffer, + gaim_conversation_get_name(chat), *flags); + + return FALSE; +} + +static void +received_chat_msg_cb(GaimAccount *account, char *sender, char *buffer, + GaimConversation *chat, GaimMessageFlags flags, void *data) +{ + gaim_debug_misc("signals test", + "received-chat-msg (%s, %s, %s, %s, %d)\n", + gaim_account_get_username(account), sender, buffer, + gaim_conversation_get_name(chat), flags); +} + +static void +conversation_created_cb(GaimConversation *conv, void *data) +{ + gaim_debug_misc("signals test", "conversation-created (%s)\n", + gaim_conversation_get_name(conv)); +} + +static void +deleting_conversation_cb(GaimConversation *conv, void *data) +{ + gaim_debug_misc("signals test", "deleting-conversation (%s)\n", + gaim_conversation_get_name(conv)); +} + +static void +buddy_typing_cb(GaimAccount *account, const char *name, void *data) +{ + gaim_debug_misc("signals test", "buddy-typing (%s, %s)\n", + gaim_account_get_username(account), name); +} + +static void +buddy_typing_stopped_cb(GaimAccount *account, const char *name, void *data) +{ + gaim_debug_misc("signals test", "buddy-typing-stopped (%s, %s)\n", + gaim_account_get_username(account), name); +} + +static gboolean +chat_buddy_joining_cb(GaimConversation *conv, const char *user, + GaimConvChatBuddyFlags flags, void *data) +{ + gaim_debug_misc("signals test", "chat-buddy-joining (%s, %s, %d)\n", + gaim_conversation_get_name(conv), user, flags); + + return FALSE; +} + +static void +chat_buddy_joined_cb(GaimConversation *conv, const char *user, + GaimConvChatBuddyFlags flags, gboolean new_arrival, void *data) +{ + gaim_debug_misc("signals test", "chat-buddy-joined (%s, %s, %d, %d)\n", + gaim_conversation_get_name(conv), user, flags, new_arrival); +} + +static void +chat_buddy_flags_cb(GaimConversation *conv, const char *user, + GaimConvChatBuddyFlags oldflags, GaimConvChatBuddyFlags newflags, void *data) +{ + gaim_debug_misc("signals test", "chat-buddy-flags (%s, %s, %d, %d)\n", + gaim_conversation_get_name(conv), user, oldflags, newflags); +} + +static gboolean +chat_buddy_leaving_cb(GaimConversation *conv, const char *user, + const char *reason, void *data) +{ + gaim_debug_misc("signals test", "chat-buddy-leaving (%s, %s, %s)\n", + gaim_conversation_get_name(conv), user, reason); + + return FALSE; +} + +static void +chat_buddy_left_cb(GaimConversation *conv, const char *user, + const char *reason, void *data) +{ + gaim_debug_misc("signals test", "chat-buddy-left (%s, %s, %s)\n", + gaim_conversation_get_name(conv), user, reason); +} + +static void +chat_inviting_user_cb(GaimConversation *conv, const char *name, + char **reason, void *data) +{ + gaim_debug_misc("signals test", "chat-inviting-user (%s, %s, %s)\n", + gaim_conversation_get_name(conv), name, *reason); +} + +static void +chat_invited_user_cb(GaimConversation *conv, const char *name, + const char *reason, void *data) +{ + gaim_debug_misc("signals test", "chat-invited-user (%s, %s, %s)\n", + gaim_conversation_get_name(conv), name, reason); +} + +static gint +chat_invited_cb(GaimAccount *account, const char *inviter, + const char *room_name, const char *message, + const GHashTable *components, void *data) +{ + gaim_debug_misc("signals test", "chat-invited (%s, %s, %s, %s)\n", + gaim_account_get_username(account), inviter, + room_name, message); + + return 0; +} + +static void +chat_joined_cb(GaimConversation *conv, void *data) +{ + gaim_debug_misc("signals test", "chat-joined (%s)\n", + gaim_conversation_get_name(conv)); +} + +static void +chat_left_cb(GaimConversation *conv, void *data) +{ + gaim_debug_misc("signals test", "chat-left (%s)\n", + gaim_conversation_get_name(conv)); +} + +static void +chat_topic_changed_cb(GaimConversation *conv, const char *who, + const char *topic, void *data) +{ + gaim_debug_misc("signals test", + "chat-topic-changed (%s topic changed to: \"%s\" by %s)\n", + gaim_conversation_get_name(conv), topic, + (who) ? who : "unknown"); +} +/************************************************************************** + * Ciphers signal callbacks + **************************************************************************/ +static void +cipher_added_cb(GaimCipher *cipher, void *data) { + gaim_debug_misc("signals test", "cipher %s added\n", + gaim_cipher_get_name(cipher)); +} + +static void +cipher_removed_cb(GaimCipher *cipher, void *data) { + gaim_debug_misc("signals test", "cipher %s removed\n", + gaim_cipher_get_name(cipher)); +} + +/************************************************************************** + * Core signal callbacks + **************************************************************************/ +static void +quitting_cb(void *data) +{ + gaim_debug_misc("signals test", "quitting ()\n"); +} + +/************************************************************************** + * File transfer signal callbacks + **************************************************************************/ +static void +ft_recv_accept_cb(GaimXfer *xfer, gpointer data) { + gaim_debug_misc("signals test", "file receive accepted\n"); +} + +static void +ft_send_accept_cb(GaimXfer *xfer, gpointer data) { + gaim_debug_misc("signals test", "file send accepted\n"); +} + +static void +ft_recv_start_cb(GaimXfer *xfer, gpointer data) { + gaim_debug_misc("signals test", "file receive started\n"); +} + +static void +ft_send_start_cb(GaimXfer *xfer, gpointer data) { + gaim_debug_misc("signals test", "file send started\n"); +} + +static void +ft_recv_cancel_cb(GaimXfer *xfer, gpointer data) { + gaim_debug_misc("signals test", "file receive canceled\n"); +} + +static void +ft_send_cancel_cb(GaimXfer *xfer, gpointer data) { + gaim_debug_misc("signals test", "file send canceled\n"); +} + +static void +ft_recv_complete_cb(GaimXfer *xfer, gpointer data) { + gaim_debug_misc("signals test", "file receive completed\n"); +} + +static void +ft_send_complete_cb(GaimXfer *xfer, gpointer data) { + gaim_debug_misc("signals test", "file send completed\n"); +} + +/************************************************************************** + * Sound signal callbacks + **************************************************************************/ +static int +sound_playing_event_cb(GaimSoundEventID event, const GaimAccount *account) { + if (account != NULL) + gaim_debug_misc("signals test", "sound playing event: %d for account: %s\n", + event, gaim_account_get_username(account)); + else + gaim_debug_misc("signals test", "sound playing event: %d\n", event); + + return 0; +} + +/************************************************************************** + * Plugin stuff + **************************************************************************/ +static gboolean +plugin_load(GaimPlugin *plugin) +{ + void *core_handle = gaim_get_core(); + void *blist_handle = gaim_blist_get_handle(); + void *conn_handle = gaim_connections_get_handle(); + void *conv_handle = gaim_conversations_get_handle(); + void *accounts_handle = gaim_accounts_get_handle(); + void *ciphers_handle = gaim_ciphers_get_handle(); + void *ft_handle = gaim_xfers_get_handle(); + void *sound_handle = gaim_sounds_get_handle(); + + /* Accounts subsystem signals */ + gaim_signal_connect(accounts_handle, "account-connecting", + plugin, GAIM_CALLBACK(account_connecting_cb), NULL); + gaim_signal_connect(accounts_handle, "account-setting-info", + plugin, GAIM_CALLBACK(account_setting_info_cb), NULL); + gaim_signal_connect(accounts_handle, "account-set-info", + plugin, GAIM_CALLBACK(account_set_info_cb), NULL); + gaim_signal_connect(accounts_handle, "account-status-changed", + plugin, GAIM_CALLBACK(account_status_changed), NULL); + gaim_signal_connect(accounts_handle, "account-alias-changed", + plugin, GAIM_CALLBACK(account_alias_changed), NULL); + + /* Buddy List subsystem signals */ + gaim_signal_connect(blist_handle, "buddy-status-changed", + plugin, GAIM_CALLBACK(buddy_status_changed_cb), NULL); + gaim_signal_connect(blist_handle, "buddy-idle-changed", + plugin, GAIM_CALLBACK(buddy_idle_changed_cb), NULL); + gaim_signal_connect(blist_handle, "buddy-signed-on", + plugin, GAIM_CALLBACK(buddy_signed_on_cb), NULL); + gaim_signal_connect(blist_handle, "buddy-signed-off", + plugin, GAIM_CALLBACK(buddy_signed_off_cb), NULL); + gaim_signal_connect(blist_handle, "buddy-added", + plugin, GAIM_CALLBACK(buddy_added_cb), NULL); + gaim_signal_connect(blist_handle, "buddy-removed", + plugin, GAIM_CALLBACK(buddy_removed_cb), NULL); + gaim_signal_connect(blist_handle, "buddy-icon-changed", + plugin, GAIM_CALLBACK(buddy_icon_changed_cb), NULL); + gaim_signal_connect(blist_handle, "blist-node-aliased", + plugin, GAIM_CALLBACK(blist_node_aliased), NULL); + gaim_signal_connect(blist_handle, "blist-node-extended-menu", + plugin, GAIM_CALLBACK(blist_node_extended_menu_cb), NULL); + + /* Connection subsystem signals */ + gaim_signal_connect(conn_handle, "signing-on", + plugin, GAIM_CALLBACK(signing_on_cb), NULL); + gaim_signal_connect(conn_handle, "signed-on", + plugin, GAIM_CALLBACK(signed_on_cb), NULL); + gaim_signal_connect(conn_handle, "signing-off", + plugin, GAIM_CALLBACK(signing_off_cb), NULL); + gaim_signal_connect(conn_handle, "signed-off", + plugin, GAIM_CALLBACK(signed_off_cb), NULL); + + /* Conversations subsystem signals */ + gaim_signal_connect(conv_handle, "writing-im-msg", + plugin, GAIM_CALLBACK(writing_im_msg_cb), NULL); + gaim_signal_connect(conv_handle, "wrote-im-msg", + plugin, GAIM_CALLBACK(wrote_im_msg_cb), NULL); + gaim_signal_connect(conv_handle, "sending-im-msg", + plugin, GAIM_CALLBACK(sending_im_msg_cb), NULL); + gaim_signal_connect(conv_handle, "sent-im-msg", + plugin, GAIM_CALLBACK(sent_im_msg_cb), NULL); + gaim_signal_connect(conv_handle, "receiving-im-msg", + plugin, GAIM_CALLBACK(receiving_im_msg_cb), NULL); + gaim_signal_connect(conv_handle, "received-im-msg", + plugin, GAIM_CALLBACK(received_im_msg_cb), NULL); + gaim_signal_connect(conv_handle, "writing-chat-msg", + plugin, GAIM_CALLBACK(writing_chat_msg_cb), NULL); + gaim_signal_connect(conv_handle, "wrote-chat-msg", + plugin, GAIM_CALLBACK(wrote_chat_msg_cb), NULL); + gaim_signal_connect(conv_handle, "sending-chat-msg", + plugin, GAIM_CALLBACK(sending_chat_msg_cb), NULL); + gaim_signal_connect(conv_handle, "sent-chat-msg", + plugin, GAIM_CALLBACK(sent_chat_msg_cb), NULL); + gaim_signal_connect(conv_handle, "receiving-chat-msg", + plugin, GAIM_CALLBACK(receiving_chat_msg_cb), NULL); + gaim_signal_connect(conv_handle, "received-chat-msg", + plugin, GAIM_CALLBACK(received_chat_msg_cb), NULL); + gaim_signal_connect(conv_handle, "conversation-created", + plugin, GAIM_CALLBACK(conversation_created_cb), NULL); + gaim_signal_connect(conv_handle, "deleting-conversation", + plugin, GAIM_CALLBACK(deleting_conversation_cb), NULL); + gaim_signal_connect(conv_handle, "buddy-typing", + plugin, GAIM_CALLBACK(buddy_typing_cb), NULL); + gaim_signal_connect(conv_handle, "buddy-typing-stopped", + plugin, GAIM_CALLBACK(buddy_typing_stopped_cb), NULL); + gaim_signal_connect(conv_handle, "chat-buddy-joining", + plugin, GAIM_CALLBACK(chat_buddy_joining_cb), NULL); + gaim_signal_connect(conv_handle, "chat-buddy-joined", + plugin, GAIM_CALLBACK(chat_buddy_joined_cb), NULL); + gaim_signal_connect(conv_handle, "chat-buddy-flags", + plugin, GAIM_CALLBACK(chat_buddy_flags_cb), NULL); + gaim_signal_connect(conv_handle, "chat-buddy-leaving", + plugin, GAIM_CALLBACK(chat_buddy_leaving_cb), NULL); + gaim_signal_connect(conv_handle, "chat-buddy-left", + plugin, GAIM_CALLBACK(chat_buddy_left_cb), NULL); + gaim_signal_connect(conv_handle, "chat-inviting-user", + plugin, GAIM_CALLBACK(chat_inviting_user_cb), NULL); + gaim_signal_connect(conv_handle, "chat-invited-user", + plugin, GAIM_CALLBACK(chat_invited_user_cb), NULL); + gaim_signal_connect(conv_handle, "chat-invited", + plugin, GAIM_CALLBACK(chat_invited_cb), NULL); + gaim_signal_connect(conv_handle, "chat-joined", + plugin, GAIM_CALLBACK(chat_joined_cb), NULL); + gaim_signal_connect(conv_handle, "chat-left", + plugin, GAIM_CALLBACK(chat_left_cb), NULL); + gaim_signal_connect(conv_handle, "chat-topic-changed", + plugin, GAIM_CALLBACK(chat_topic_changed_cb), NULL); + + /* Ciphers signals */ + gaim_signal_connect(ciphers_handle, "cipher-added", + plugin, GAIM_CALLBACK(cipher_added_cb), NULL); + gaim_signal_connect(ciphers_handle, "cipher-removed", + plugin, GAIM_CALLBACK(cipher_removed_cb), NULL); + + /* Core signals */ + gaim_signal_connect(core_handle, "quitting", + plugin, GAIM_CALLBACK(quitting_cb), NULL); + + /* File transfer signals */ + gaim_signal_connect(ft_handle, "file-recv-accept", + plugin, GAIM_CALLBACK(ft_recv_accept_cb), NULL); + gaim_signal_connect(ft_handle, "file-recv-start", + plugin, GAIM_CALLBACK(ft_recv_start_cb), NULL); + gaim_signal_connect(ft_handle, "file-recv-cancel", + plugin, GAIM_CALLBACK(ft_recv_cancel_cb), NULL); + gaim_signal_connect(ft_handle, "file-recv-complete", + plugin, GAIM_CALLBACK(ft_recv_complete_cb), NULL); + gaim_signal_connect(ft_handle, "file-send-accept", + plugin, GAIM_CALLBACK(ft_send_accept_cb), NULL); + gaim_signal_connect(ft_handle, "file-send-start", + plugin, GAIM_CALLBACK(ft_send_start_cb), NULL); + gaim_signal_connect(ft_handle, "file-send-cancel", + plugin, GAIM_CALLBACK(ft_send_cancel_cb), NULL); + gaim_signal_connect(ft_handle, "file-send-complete", + plugin, GAIM_CALLBACK(ft_send_complete_cb), NULL); + + /* Sound signals */ + gaim_signal_connect(sound_handle, "playing-sound-event", plugin, + GAIM_CALLBACK(sound_playing_event_cb), NULL); + + return TRUE; +} + +static GaimPluginInfo info = +{ + GAIM_PLUGIN_MAGIC, + GAIM_MAJOR_VERSION, + GAIM_MINOR_VERSION, + GAIM_PLUGIN_STANDARD, /**< type */ + NULL, /**< ui_requirement */ + 0, /**< flags */ + NULL, /**< dependencies */ + GAIM_PRIORITY_DEFAULT, /**< priority */ + + SIGNAL_TEST_PLUGIN_ID, /**< id */ + N_("Signals Test"), /**< name */ + VERSION, /**< version */ + /** summary */ + N_("Test to see that all signals are working properly."), + /** description */ + N_("Test to see that all signals are working properly."), + "Christian Hammond <chipx86@gnupdate.org>", /**< author */ + GAIM_WEBSITE, /**< homepage */ + + plugin_load, /**< load */ + NULL, /**< unload */ + NULL, /**< destroy */ + + NULL, /**< ui_info */ + NULL, /**< extra_info */ + NULL, + NULL +}; + +static void +init_plugin(GaimPlugin *plugin) +{ +} + +GAIM_INIT_PLUGIN(signalstest, init_plugin, info)