Tue, 29 Aug 2006 04:15:29 +0000
[gaim-migrate @ 17078]
Reenable the perl build on non-Windows. I'm looking at making a gtk perl
plugin to use the gtk stuff, we'll see if I succeed. I'm leaving the gtk stuff
in here but ifdef:d out for now. I'll clean it up if I get the gtk perl plugin
working.
| 6520 | 1 | #ifndef _GAIM_PERL_HANDLERS_H_ |
| 2 | #define _GAIM_PERL_HANDLERS_H_ | |
| 3 | ||
| 12882 | 4 | #include "cmds.h" |
| 6520 | 5 | #include "plugin.h" |
| 11123 | 6 | #include "prefs.h" |
| 7 | #include "pluginpref.h" | |
| 14434 | 8 | #ifdef GAIM_GTKPERL |
| 11170 | 9 | #include "gtkplugin.h" |
| 10 | #include "gtkutils.h" | |
| 14434 | 11 | #endif |
| 11170 | 12 | |
| 6520 | 13 | typedef struct |
| 14 | { | |
| 12882 | 15 | GaimCmdId id; |
| 16 | SV *callback; | |
| 17 | SV *data; | |
| 18 | char *prpl_id; | |
| 19 | char *cmd; | |
| 20 | GaimPlugin *plugin; | |
| 21 | } GaimPerlCmdHandler; | |
| 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; |
| 6520 | 27 | GaimPlugin *plugin; |
| 28 | int iotag; | |
| 29 | ||
| 30 | } GaimPerlTimeoutHandler; | |
| 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; |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
38 | GaimPlugin *plugin; |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
39 | |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
40 | } GaimPerlSignalHandler; |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
41 | |
| 11170 | 42 | void gaim_perl_plugin_action_cb(GaimPluginAction * gpa); |
| 12988 | 43 | GList *gaim_perl_plugin_actions(GaimPlugin *plugin, gpointer context); |
| 11170 | 44 | |
| 11123 | 45 | GaimPluginPrefFrame *gaim_perl_get_plugin_frame(GaimPlugin *plugin); |
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
46 | |
| 14434 | 47 | #ifdef GAIM_GTKPERL |
| 11170 | 48 | GtkWidget *gaim_perl_gtk_get_plugin_frame(GaimPlugin *plugin); |
| 14434 | 49 | #endif |
| 11170 | 50 | |
|
6568
5c8c70b63dc3
[gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents:
6567
diff
changeset
|
51 | void gaim_perl_timeout_add(GaimPlugin *plugin, int seconds, SV *callback, |
| 12882 | 52 | SV *data); |
| 6520 | 53 | void gaim_perl_timeout_clear_for_plugin(GaimPlugin *plugin); |
| 54 | void gaim_perl_timeout_clear(void); | |
| 55 | ||
|
6550
1f3edf39ef51
[gaim-migrate @ 7072]
Christian Hammond <chipx86@chipx86.com>
parents:
6549
diff
changeset
|
56 | void gaim_perl_signal_connect(GaimPlugin *plugin, void *instance, |
| 12882 | 57 | const char *signal, SV *callback, |
| 13191 | 58 | SV *data, int priority); |
|
6550
1f3edf39ef51
[gaim-migrate @ 7072]
Christian Hammond <chipx86@chipx86.com>
parents:
6549
diff
changeset
|
59 | void gaim_perl_signal_disconnect(GaimPlugin *plugin, void *instance, |
| 12882 | 60 | const char *signal); |
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
61 | void gaim_perl_signal_clear_for_plugin(GaimPlugin *plugin); |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
62 | void gaim_perl_signal_clear(void); |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
63 | |
| 12882 | 64 | GaimCmdId gaim_perl_cmd_register(GaimPlugin *plugin, const gchar *cmd, |
| 65 | const gchar *args, GaimCmdPriority priority, | |
| 66 | GaimCmdFlag flag, const gchar *prpl_id, | |
| 67 | SV *callback, const gchar *helpstr, SV *data); | |
| 68 | void gaim_perl_cmd_unregister(GaimCmdId id); | |
| 69 | void gaim_perl_cmd_clear_for_plugin(GaimPlugin *plugin); | |
| 70 | ||
| 6520 | 71 | #endif /* _GAIM_PERL_HANDLERS_H_ */ |