From: Etan R. <de...@us...> - 2006-01-15 07:57:06
|
Update of /cvsroot/gaim/gaim/plugins/perl/common In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16935/plugins/perl/common Modified Files: Cmds.xs Gaim.xs module.h typemap Log Message: I give you perl /cmd support. I only tested this a little bit but it seemed to work for me, let me know if anything breaks. Index: Cmds.xs =================================================================== RCS file: /cvsroot/gaim/gaim/plugins/perl/common/Cmds.xs,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -p -r1.2 -r1.3 --- Cmds.xs 18 Aug 2005 01:35:14 -0000 1.2 +++ Cmds.xs 15 Jan 2006 07:56:58 -0000 1.3 @@ -1,30 +1,49 @@ #include "module.h" +#include "../perl-handlers.h" -MODULE = Gaim::Cmds PACKAGE = Gaim::Cmds PREFIX = gaim_cmd_ +MODULE = Gaim::Cmd PACKAGE = Gaim::Cmd PREFIX = gaim_cmd_ PROTOTYPES: ENABLE void -gaim_cmd_help(conv, cmd) +gaim_cmd_help(conv, command) Gaim::Conversation conv - const gchar *cmd + const gchar *command PREINIT: - GList *l; + GList *l; PPCODE: - for (l = gaim_cmd_help(conv, cmd); l != NULL; l = l->next) { - XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::ListEntry"))); - } + for (l = gaim_cmd_help(conv, command); l != NULL; l = l->next) { + XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::ListEntry"))); + } void gaim_cmd_list(conv) Gaim::Conversation conv PREINIT: - GList *l; + GList *l; PPCODE: - for (l = gaim_cmd_list(conv); l != NULL; l = l->next) { - XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::ListEntry"))); - } + for (l = gaim_cmd_list(conv); l != NULL; l = l->next) { + XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::ListEntry"))); + } -void -gaim_cmd_unregister(id) - Gaim::CmdId id +Gaim::Cmd::Id +gaim_cmd_register(plugin, command, args, priority, flag, prpl_id, func, helpstr, data = 0) + Gaim::Plugin plugin + const gchar *command + const gchar *args + Gaim::Cmd::Priority priority + Gaim::Cmd::Flag flag + const gchar *prpl_id + SV *func + const gchar *helpstr + SV *data +CODE: + RETVAL = gaim_perl_cmd_register(plugin, command, args, priority, flag, + prpl_id, func, helpstr, data); +OUTPUT: + RETVAL +void +gaim_cmd_unregister(id) + Gaim::Cmd::Id id +CODE: + gaim_perl_cmd_unregister(id); Index: Gaim.xs =================================================================== RCS file: /cvsroot/gaim/gaim/plugins/perl/common/Gaim.xs,v retrieving revision 1.21 retrieving revision 1.22 diff -u -d -p -r1.21 -r1.22 --- Gaim.xs 8 Dec 2005 21:08:15 -0000 1.21 +++ Gaim.xs 15 Jan 2006 07:56:58 -0000 1.22 @@ -8,7 +8,7 @@ GAIM_PERL_BOOT_PROTO(Account__Option); GAIM_PERL_BOOT_PROTO(Buddy__Icon); GAIM_PERL_BOOT_PROTO(BuddyList); GAIM_PERL_BOOT_PROTO(Cipher); -GAIM_PERL_BOOT_PROTO(Cmds); +GAIM_PERL_BOOT_PROTO(Cmd); GAIM_PERL_BOOT_PROTO(Connection); GAIM_PERL_BOOT_PROTO(Conversation); GAIM_PERL_BOOT_PROTO(Xfer); @@ -33,7 +33,6 @@ GAIM_PERL_BOOT_PROTO(Stringref); GAIM_PERL_BOOT_PROTO(Util); GAIM_PERL_BOOT_PROTO(XMLNode); - MODULE = Gaim PACKAGE = Gaim PREFIX = gaim_ PROTOTYPES: ENABLE @@ -41,11 +40,11 @@ INCLUDE: const-xs.inc BOOT: GAIM_PERL_BOOT(Account); - GAIM_PERL_BOOT(Account__Option); + GAIM_PERL_BOOT(Account__Option); GAIM_PERL_BOOT(Buddy__Icon); GAIM_PERL_BOOT(BuddyList); GAIM_PERL_BOOT(Cipher); - GAIM_PERL_BOOT(Cmds); + GAIM_PERL_BOOT(Cmd); GAIM_PERL_BOOT(Connection); GAIM_PERL_BOOT(Conversation); GAIM_PERL_BOOT(Xfer); @@ -54,7 +53,7 @@ BOOT: GAIM_PERL_BOOT(Network); GAIM_PERL_BOOT(Notify); GAIM_PERL_BOOT(Plugin); - GAIM_PERL_BOOT(PluginPref); + GAIM_PERL_BOOT(PluginPref); GAIM_PERL_BOOT(Pounce); GAIM_PERL_BOOT(Prefs); GAIM_PERL_BOOT(Privacy); @@ -68,8 +67,7 @@ BOOT: GAIM_PERL_BOOT(Status); GAIM_PERL_BOOT(Stringref); GAIM_PERL_BOOT(Util); - GAIM_PERL_BOOT(XMLNode); - + GAIM_PERL_BOOT(XMLNode); void timeout_add(plugin, seconds, callback, data = 0) @@ -143,4 +141,3 @@ void deinit() CODE: gaim_perl_timeout_clear(); - Index: module.h =================================================================== RCS file: /cvsroot/gaim/gaim/plugins/perl/common/module.h,v retrieving revision 1.22 retrieving revision 1.23 diff -u -d -p -r1.22 -r1.23 --- module.h 13 Jan 2006 23:00:43 -0000 1.22 +++ module.h 15 Jan 2006 07:56:58 -0000 1.23 @@ -84,7 +84,10 @@ typedef GaimCipherContext * Gaim__Ciphe typedef GaimCipherOps * Gaim__Cipher__Ops; /* cmds.h */ -typedef GaimCmdId Gaim__CmdId; +typedef GaimCmdFlag Gaim__Cmd__Flag; +typedef GaimCmdId Gaim__Cmd__Id; +typedef GaimCmdPriority Gaim__Cmd__Priority; +typedef GaimCmdRet Gaim__Cmd__Ret; /* connection.h */ typedef GaimConnection * Gaim__Connection; Index: typemap =================================================================== RCS file: /cvsroot/gaim/gaim/plugins/perl/common/typemap,v retrieving revision 1.19 retrieving revision 1.20 diff -u -d -p -r1.19 -r1.20 --- typemap 13 Jan 2006 23:00:43 -0000 1.19 +++ typemap 15 Jan 2006 07:56:58 -0000 1.20 @@ -57,7 +57,10 @@ Gaim::Cipher T_GaimObj Gaim::CipherCaps T_IV Gaim::Cipher::Ops T_GaimObj Gaim::Cipher::Context T_GaimObj -Gaim::CmdId T_IV +Gaim::Cmd::Flag T_IV +Gaim::Cmd::Id T_IV +Gaim::Cmd::Priority T_IV +Gaim::Cmd::Ret T_IV Gaim::Connection T_GaimObj Gaim::Connection::UiOps T_GaimObj Gaim::Conversation T_GaimObj |