annotate plugins/perl/perl-handlers.h @ 8982:a4fd6666bb83

[gaim-migrate @ 9757] Some Direct IM fixes. 1. Let's send our correct ip. We were usually sending localhost, so the other side would try to connect to localhost and immediately fail and so say, hey! I can't connect to you! Connect to me instead! 2. Add some gaim_conversation_writes to keep the user more informed as to what's going on. This changes the libfaim API. libfaim users take note. I removed the util get local ip function, and made the function that used to use it take an ip as an argument instead, so that oscar.c could just call gaim's function, which works better. I also made it possible to specify a cookie to use, because I think I'll need that later. Probably. committer: Tailor Script <tailor@pidgin.im>
author Tim Ringenbach <marv@pidgin.im>
date Thu, 20 May 2004 00:14:14 +0000
parents 33486b749aa9
children 4315bb5f427b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6520
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1 #ifndef _GAIM_PERL_HANDLERS_H_
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
2 #define _GAIM_PERL_HANDLERS_H_
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
3
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
4 #include "plugin.h"
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
5
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
6 typedef struct
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
7 {
6568
33486b749aa9 [gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents: 6567
diff changeset
8 SV *callback;
33486b749aa9 [gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents: 6567
diff changeset
9 SV *data;
6520
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
10 GaimPlugin *plugin;
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
11 int iotag;
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
12
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
13 } GaimPerlTimeoutHandler;
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
14
6549
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
15 typedef struct
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
16 {
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
17 char *signal;
6567
6e25e1e08ffb [gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents: 6550
diff changeset
18 SV *callback;
6e25e1e08ffb [gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents: 6550
diff changeset
19 SV *data;
6549
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
20 void *instance;
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
21 GaimPlugin *plugin;
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
22
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
23 } GaimPerlSignalHandler;
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
24
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
25
6568
33486b749aa9 [gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents: 6567
diff changeset
26 void gaim_perl_timeout_add(GaimPlugin *plugin, int seconds, SV *callback,
33486b749aa9 [gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents: 6567
diff changeset
27 SV *data);
6520
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
28 void gaim_perl_timeout_clear_for_plugin(GaimPlugin *plugin);
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
29 void gaim_perl_timeout_clear(void);
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
30
6550
f1736493aebb [gaim-migrate @ 7072]
Christian Hammond <chipx86@chipx86.com>
parents: 6549
diff changeset
31 void gaim_perl_signal_connect(GaimPlugin *plugin, void *instance,
6567
6e25e1e08ffb [gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents: 6550
diff changeset
32 const char *signal, SV *callback,
6e25e1e08ffb [gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents: 6550
diff changeset
33 SV *data);
6550
f1736493aebb [gaim-migrate @ 7072]
Christian Hammond <chipx86@chipx86.com>
parents: 6549
diff changeset
34 void gaim_perl_signal_disconnect(GaimPlugin *plugin, void *instance,
6567
6e25e1e08ffb [gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents: 6550
diff changeset
35 const char *signal);
6549
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
36 void gaim_perl_signal_clear_for_plugin(GaimPlugin *plugin);
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
37 void gaim_perl_signal_clear(void);
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
38
6520
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
39 #endif /* _GAIM_PERL_HANDLERS_H_ */