libpurple/protocols/yahoo/libyahoojp.c

branch
cpw.rekkanoryo.yahoo.separate_prpls
changeset 27560
95e7692b99eb
parent 27559
3007dde24778
child 27644
b03d1efa62e2
--- a/libpurple/protocols/yahoo/libyahoojp.c	Sun Jul 05 14:40:13 2009 +0000
+++ b/libpurple/protocols/yahoo/libyahoojp.c	Sun Jul 05 23:56:07 2009 +0000
@@ -24,7 +24,35 @@
 #include "internal.h"
 
 #include <account.h>
-#include <prpl.h>
+
+#include "libymsg.h"
+#include "yahoochat.h"
+#include "yahoo_aliases.h"
+#include "yahoo_doodle.h"
+#include "yahoo_filexfer.h"
+#include "yahoo_picture.h"
+
+static void yahoojp_register_commands(void)
+{
+	purple_cmd_register("join", "s", PURPLE_CMD_P_PRPL,
+	                  PURPLE_CMD_FLAG_IM | PURPLE_CMD_FLAG_CHAT |
+	                  PURPLE_CMD_FLAG_PRPL_ONLY,
+	                  "prpl-yahoojp", yahoopurple_cmd_chat_join,
+	                  _("join &lt;room&gt;:  Join a chat room on the Yahoo network"), NULL);
+	purple_cmd_register("list", "", PURPLE_CMD_P_PRPL,
+	                  PURPLE_CMD_FLAG_IM | PURPLE_CMD_FLAG_CHAT |
+	                  PURPLE_CMD_FLAG_PRPL_ONLY,
+	                  "prpl-yahoojp", yahoopurple_cmd_chat_list,
+	                  _("list: List rooms on the Yahoo network"), NULL);
+	purple_cmd_register("buzz", "", PURPLE_CMD_P_PRPL,
+	                  PURPLE_CMD_FLAG_IM | PURPLE_CMD_FLAG_PRPL_ONLY,
+	                  "prpl-yahoojp", yahoopurple_cmd_buzz,
+	                  _("buzz: Buzz a user to get their attention"), NULL);
+	purple_cmd_register("doodle", "", PURPLE_CMD_P_PRPL,
+	                  PURPLE_CMD_FLAG_IM | PURPLE_CMD_FLAG_PRPL_ONLY,
+	                  "prpl-yahoojp", yahoo_doodle_purple_cmd_start,
+	                 _("doodle: Request user to start a Doodle session"), NULL);
+}
 
 static GHashTable *
 yahoojp_get_account_text_table(PurpleAccount *account)
@@ -35,6 +63,13 @@
 	return table;
 }
 
+static gboolean yahoojp_unload_plugin(PurplePlugin *plugin)
+{
+	yahoo_dest_colorht();
+
+	return TRUE;
+}
+
 static PurpleWhiteboardPrplOps yahoo_whiteboard_prpl_ops =
 {
 	yahoo_doodle_start,
@@ -148,7 +183,7 @@
 	NULL,                                             /**< author         */
 	PURPLE_WEBSITE,                                     /**< homepage       */
 	NULL,                                             /**< load           */
-	yahoo_unload_plugin,                              /**< unload         */
+	yahoojp_unload_plugin,                              /**< unload         */
 	NULL,                                             /**< destroy        */
 	NULL,                                             /**< ui_info        */
 	&prpl_info,                                       /**< extra_info     */
@@ -200,8 +235,7 @@
 	prpl_info.protocol_options = g_list_append(prpl_info.protocol_options, option);
 #endif
 
-	my_protocol = plugin;
-	yahoopurple_register_commands();
+	yahoojp_register_commands();
 	yahoo_init_colorht();
 }
 

mercurial