view plugins/perl/common/Cmds.xs @ 12919:248b8b39c671

[gaim-migrate @ 15272] Replace GaimBlistNodeAction with the more generic GaimMenuAction, this is in preparation for letting the chat room user list have extensible menus like the blist entries do. (I know it's not exactly the prettiest, and the callback isn't exactly type-safe, when we eventually gobjectify everything we can get some safety back by using (GObject, gpointer) but that's for later.) I'm planning to look into merging GaimPluginActions into GaimMenuActions as well. committer: Tailor Script <tailor@pidgin.im>
author Etan Reisner <pidgin@unreliablesource.net>
date Tue, 17 Jan 2006 23:22:19 +0000
parents 3ab3e68df807
children
line wrap: on
line source

#include "module.h"
#include "../perl-handlers.h"

MODULE = Gaim::Cmd  PACKAGE = Gaim::Cmd  PREFIX = gaim_cmd_
PROTOTYPES: ENABLE

void
gaim_cmd_help(conv, command)
	Gaim::Conversation conv
	const gchar *command
PREINIT:
	GList *l;
PPCODE:
	for (l = gaim_cmd_help(conv, command); l != NULL; l = l->next) {
		XPUSHs(sv_2mortal(newSVpv(l->data, 0)));
	}

void
gaim_cmd_list(conv)
	Gaim::Conversation conv
PREINIT:
	GList *l;
PPCODE:
	for (l = gaim_cmd_list(conv); l != NULL; l = l->next) {
		XPUSHs(sv_2mortal(newSVpv(l->data, 0)));
	}

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);