core/plugins/perl/perl-handlers.h

changeset 14253
b63ebf84c42b
parent 13191
6c98c6130701
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/core/plugins/perl/perl-handlers.h	Sat Dec 16 04:59:55 2006 +0000
@@ -0,0 +1,67 @@
+#ifndef _GAIM_PERL_HANDLERS_H_
+#define _GAIM_PERL_HANDLERS_H_
+
+#include "cmds.h"
+#include "plugin.h"
+#include "prefs.h"
+#include "pluginpref.h"
+#include "gtkplugin.h"
+#include "gtkutils.h"
+
+typedef struct
+{
+	GaimCmdId id;
+	SV *callback;
+	SV *data;
+	char *prpl_id;
+	char *cmd;
+	GaimPlugin *plugin;
+} GaimPerlCmdHandler;
+
+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_plugin_action_cb(GaimPluginAction * gpa);
+GList *gaim_perl_plugin_actions(GaimPlugin *plugin, gpointer context); 
+
+GaimPluginPrefFrame *gaim_perl_get_plugin_frame(GaimPlugin *plugin);
+
+GtkWidget *gaim_perl_gtk_get_plugin_frame(GaimPlugin *plugin);
+
+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, int priority);
+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);
+
+GaimCmdId gaim_perl_cmd_register(GaimPlugin *plugin, const gchar *cmd,
+                                 const gchar *args, GaimCmdPriority priority,
+                                 GaimCmdFlag flag, const gchar *prpl_id,
+                                 SV *callback, const gchar *helpstr, SV *data);
+void gaim_perl_cmd_unregister(GaimCmdId id);
+void gaim_perl_cmd_clear_for_plugin(GaimPlugin *plugin);
+
+#endif /* _GAIM_PERL_HANDLERS_H_ */

mercurial