view plugins/perl/perl-handlers.h @ 10881:6982a276095a

[gaim-migrate @ 12577] Last night it was requested that we try to enumerate some of the short range goals, and esp. the 2.0.0 blockers. this is my first attempt at this. please feel free to edit it where I am inaccurate or incomplete. This isn't so much a traditional todo, as I included some notes on how things should work or what ideas have been proposed. I tried to include vim folding stuff, but I'm not much used to that. I also used tabs to format. please don't start replacing them with all spaces ;-) committer: Tailor Script <tailor@pidgin.im>
author Luke Schierer <lschiere@pidgin.im>
date Wed, 27 Apr 2005 15:27:36 +0000
parents 33486b749aa9
children 4315bb5f427b
line wrap: on
line source

#ifndef _GAIM_PERL_HANDLERS_H_
#define _GAIM_PERL_HANDLERS_H_

#include "plugin.h"

typedef struct
{
	SV *callback;
	SV *data;
	GaimPlugin *plugin;
	int iotag;

} GaimPerlTimeoutHandler;

typedef struct
{
	char *signal;
	SV *callback;
	SV *data;
	void *instance;
	GaimPlugin *plugin;

} GaimPerlSignalHandler;


void gaim_perl_timeout_add(GaimPlugin *plugin, int seconds, SV *callback,
						   SV *data);
void gaim_perl_timeout_clear_for_plugin(GaimPlugin *plugin);
void gaim_perl_timeout_clear(void);

void gaim_perl_signal_connect(GaimPlugin *plugin, void *instance,
							  const char *signal, SV *callback,
							  SV *data);
void gaim_perl_signal_disconnect(GaimPlugin *plugin, void *instance,
								 const char *signal);
void gaim_perl_signal_clear_for_plugin(GaimPlugin *plugin);
void gaim_perl_signal_clear(void);

#endif /* _GAIM_PERL_HANDLERS_H_ */