Mon, 16 Apr 2007 00:44:33 +0000
merge of 'b98e72d4089afb8a1879e5fe9627cfb132ee88de'
and '606a402fea87c797c4b751475228a6f6a5385122'
| 15884 | 1 | #ifndef _PURPLE_PERL_HANDLERS_H_ |
| 2 | #define _PURPLE_PERL_HANDLERS_H_ | |
| 6520 | 3 | |
| 12882 | 4 | #include "cmds.h" |
| 6520 | 5 | #include "plugin.h" |
| 11123 | 6 | #include "prefs.h" |
| 7 | #include "pluginpref.h" | |
| 15884 | 8 | #ifdef PURPLE_GTKPERL |
| 11170 | 9 | #include "gtkplugin.h" |
| 10 | #include "gtkutils.h" | |
| 14434 | 11 | #endif |
| 11170 | 12 | |
| 6520 | 13 | typedef struct |
| 14 | { | |
| 15884 | 15 | PurpleCmdId id; |
| 12882 | 16 | SV *callback; |
| 17 | SV *data; | |
| 18 | char *prpl_id; | |
| 19 | char *cmd; | |
| 15884 | 20 | PurplePlugin *plugin; |
| 21 | } PurplePerlCmdHandler; | |
| 12882 | 22 | |
| 23 | typedef struct | |
| 24 | { | |
|
6568
5c8c70b63dc3
[gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents:
6567
diff
changeset
|
25 | SV *callback; |
|
5c8c70b63dc3
[gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents:
6567
diff
changeset
|
26 | SV *data; |
| 15884 | 27 | PurplePlugin *plugin; |
| 6520 | 28 | int iotag; |
| 29 | ||
| 15884 | 30 | } PurplePerlTimeoutHandler; |
| 6520 | 31 | |
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
32 | typedef struct |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
33 | { |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
34 | char *signal; |
|
6567
761a1feb5561
[gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents:
6550
diff
changeset
|
35 | SV *callback; |
|
761a1feb5561
[gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents:
6550
diff
changeset
|
36 | SV *data; |
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
37 | void *instance; |
| 15884 | 38 | PurplePlugin *plugin; |
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
39 | |
| 15884 | 40 | } PurplePerlSignalHandler; |
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
41 | |
| 15884 | 42 | void purple_perl_plugin_action_cb(PurplePluginAction * gpa); |
| 43 | GList *purple_perl_plugin_actions(PurplePlugin *plugin, gpointer context); | |
| 11170 | 44 | |
| 15884 | 45 | PurplePluginPrefFrame *purple_perl_get_plugin_frame(PurplePlugin *plugin); |
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
46 | |
| 15884 | 47 | #ifdef PURPLE_GTKPERL |
| 48 | GtkWidget *purple_perl_gtk_get_plugin_frame(PurplePlugin *plugin); | |
| 14434 | 49 | #endif |
| 11170 | 50 | |
| 15884 | 51 | void purple_perl_timeout_add(PurplePlugin *plugin, int seconds, SV *callback, |
| 12882 | 52 | SV *data); |
| 15884 | 53 | void purple_perl_timeout_clear_for_plugin(PurplePlugin *plugin); |
| 54 | void purple_perl_timeout_clear(void); | |
| 6520 | 55 | |
| 15884 | 56 | void purple_perl_signal_connect(PurplePlugin *plugin, void *instance, |
| 12882 | 57 | const char *signal, SV *callback, |
| 13191 | 58 | SV *data, int priority); |
| 15884 | 59 | void purple_perl_signal_disconnect(PurplePlugin *plugin, void *instance, |
| 12882 | 60 | const char *signal); |
| 15884 | 61 | void purple_perl_signal_clear_for_plugin(PurplePlugin *plugin); |
| 62 | void purple_perl_signal_clear(void); | |
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
63 | |
| 15884 | 64 | PurpleCmdId purple_perl_cmd_register(PurplePlugin *plugin, const gchar *cmd, |
| 65 | const gchar *args, PurpleCmdPriority priority, | |
| 66 | PurpleCmdFlag flag, const gchar *prpl_id, | |
| 12882 | 67 | SV *callback, const gchar *helpstr, SV *data); |
| 15884 | 68 | void purple_perl_cmd_unregister(PurpleCmdId id); |
| 69 | void purple_perl_cmd_clear_for_plugin(PurplePlugin *plugin); | |
| 12882 | 70 | |
| 15884 | 71 | #endif /* _PURPLE_PERL_HANDLERS_H_ */ |