Mon, 03 Oct 2005 03:17:46 +0000
[gaim-migrate @ 13866]
Rewrite of the "transparency" plugin. This should suck less and now offers the option of being opaque on focus. I need to evaluate the "Always on top" functionality of the Buddy List because it may conflict wiht the WinGaim Options plugin.
| 6520 | 1 | #ifndef _GAIM_PERL_HANDLERS_H_ |
| 2 | #define _GAIM_PERL_HANDLERS_H_ | |
| 3 | ||
| 4 | #include "plugin.h" | |
| 11123 | 5 | #include "prefs.h" |
| 6 | #include "pluginpref.h" | |
| 11170 | 7 | #include "gtkplugin.h" |
| 8 | #include "gtkutils.h" | |
| 9 | ||
| 10 | /* TODO: Find a better way to access the perl names from the plugin prober */ | |
| 11 | /* and store them for gaim_perl_plugin_action_* functions. */ | |
| 12 | char * gaim_perl_plugin_action_callback_sub; | |
| 13 | char * gaim_perl_plugin_action_label; | |
| 6520 | 14 | |
| 15 | typedef struct | |
| 16 | { | |
|
6568
5c8c70b63dc3
[gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents:
6567
diff
changeset
|
17 | SV *callback; |
|
5c8c70b63dc3
[gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents:
6567
diff
changeset
|
18 | SV *data; |
| 6520 | 19 | GaimPlugin *plugin; |
| 20 | int iotag; | |
| 21 | ||
| 22 | } GaimPerlTimeoutHandler; | |
| 23 | ||
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
24 | typedef struct |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
25 | { |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
26 | char *signal; |
|
6567
761a1feb5561
[gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents:
6550
diff
changeset
|
27 | SV *callback; |
|
761a1feb5561
[gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents:
6550
diff
changeset
|
28 | SV *data; |
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
29 | void *instance; |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
30 | GaimPlugin *plugin; |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
31 | |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
32 | } GaimPerlSignalHandler; |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
33 | |
| 11170 | 34 | void gaim_perl_plugin_action_cb(GaimPluginAction * gpa); |
| 35 | GList *gaim_perl_plugin_action(GaimPlugin *plugin, gpointer context); | |
| 36 | ||
| 37 | GaimPluginUiInfo *gaim_perl_plugin_pref(const char * frame_cb); | |
| 11123 | 38 | GaimPluginPrefFrame *gaim_perl_get_plugin_frame(GaimPlugin *plugin); |
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
39 | |
| 11170 | 40 | GaimGtkPluginUiInfo *gaim_perl_gtk_plugin_pref(const char * frame_cb); |
| 41 | GtkWidget *gaim_perl_gtk_get_plugin_frame(GaimPlugin *plugin); | |
| 42 | ||
|
6568
5c8c70b63dc3
[gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents:
6567
diff
changeset
|
43 | void gaim_perl_timeout_add(GaimPlugin *plugin, int seconds, SV *callback, |
|
5c8c70b63dc3
[gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents:
6567
diff
changeset
|
44 | SV *data); |
| 6520 | 45 | void gaim_perl_timeout_clear_for_plugin(GaimPlugin *plugin); |
| 46 | void gaim_perl_timeout_clear(void); | |
| 47 | ||
|
6550
1f3edf39ef51
[gaim-migrate @ 7072]
Christian Hammond <chipx86@chipx86.com>
parents:
6549
diff
changeset
|
48 | void gaim_perl_signal_connect(GaimPlugin *plugin, void *instance, |
|
6567
761a1feb5561
[gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents:
6550
diff
changeset
|
49 | const char *signal, SV *callback, |
|
761a1feb5561
[gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents:
6550
diff
changeset
|
50 | SV *data); |
|
6550
1f3edf39ef51
[gaim-migrate @ 7072]
Christian Hammond <chipx86@chipx86.com>
parents:
6549
diff
changeset
|
51 | void gaim_perl_signal_disconnect(GaimPlugin *plugin, void *instance, |
|
6567
761a1feb5561
[gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents:
6550
diff
changeset
|
52 | const char *signal); |
|
6549
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
53 | void gaim_perl_signal_clear_for_plugin(GaimPlugin *plugin); |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
54 | void gaim_perl_signal_clear(void); |
|
8e6ba2a45698
[gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents:
6520
diff
changeset
|
55 | |
| 6520 | 56 | #endif /* _GAIM_PERL_HANDLERS_H_ */ |