annotate plugins/perl/perl-handlers.h @ 12935:d9c53c5f5912

[gaim-migrate @ 15288] Fix a bug noted in SF Patch #1293248. We're building an invalid Jabber ID such as: user@server.tld/Resource/Resource committer: Tailor Script <tailor@pidgin.im>
author Richard Laager <rlaager@wiktel.com>
date Thu, 19 Jan 2006 03:43:30 +0000
parents e1603fd610fa
children b457aa723bab
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
12882
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
4 #include "cmds.h"
6520
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
5 #include "plugin.h"
11123
4315bb5f427b [gaim-migrate @ 13179]
John H. Kelm <johnkelm@gmail.com>
parents: 6568
diff changeset
6 #include "prefs.h"
4315bb5f427b [gaim-migrate @ 13179]
John H. Kelm <johnkelm@gmail.com>
parents: 6568
diff changeset
7 #include "pluginpref.h"
11170
0e9e2b923d09 [gaim-migrate @ 13271]
John H. Kelm <johnkelm@gmail.com>
parents: 11123
diff changeset
8 #include "gtkplugin.h"
0e9e2b923d09 [gaim-migrate @ 13271]
John H. Kelm <johnkelm@gmail.com>
parents: 11123
diff changeset
9 #include "gtkutils.h"
0e9e2b923d09 [gaim-migrate @ 13271]
John H. Kelm <johnkelm@gmail.com>
parents: 11123
diff changeset
10
12882
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
11 /* TODO: Find a better way to access the perl names from the plugin prober */
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
12 /* and store them for gaim_perl_plugin_action_* functions. */
11170
0e9e2b923d09 [gaim-migrate @ 13271]
John H. Kelm <johnkelm@gmail.com>
parents: 11123
diff changeset
13 char * gaim_perl_plugin_action_callback_sub;
0e9e2b923d09 [gaim-migrate @ 13271]
John H. Kelm <johnkelm@gmail.com>
parents: 11123
diff changeset
14 char * gaim_perl_plugin_action_label;
6520
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16 typedef struct
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17 {
12882
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
18 GaimCmdId id;
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
19 SV *callback;
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
20 SV *data;
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
21 char *prpl_id;
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
22 char *cmd;
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
23 GaimPlugin *plugin;
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
24 } GaimPerlCmdHandler;
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
25
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
26 typedef struct
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
27 {
6568
33486b749aa9 [gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents: 6567
diff changeset
28 SV *callback;
33486b749aa9 [gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents: 6567
diff changeset
29 SV *data;
6520
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
30 GaimPlugin *plugin;
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
31 int iotag;
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
32
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
33 } GaimPerlTimeoutHandler;
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
34
6549
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
35 typedef struct
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
36 {
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
37 char *signal;
6567
6e25e1e08ffb [gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents: 6550
diff changeset
38 SV *callback;
6e25e1e08ffb [gaim-migrate @ 7089]
Christian Hammond <chipx86@chipx86.com>
parents: 6550
diff changeset
39 SV *data;
6549
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
40 void *instance;
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
41 GaimPlugin *plugin;
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
42
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
43 } GaimPerlSignalHandler;
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
44
11170
0e9e2b923d09 [gaim-migrate @ 13271]
John H. Kelm <johnkelm@gmail.com>
parents: 11123
diff changeset
45 void gaim_perl_plugin_action_cb(GaimPluginAction * gpa);
0e9e2b923d09 [gaim-migrate @ 13271]
John H. Kelm <johnkelm@gmail.com>
parents: 11123
diff changeset
46 GList *gaim_perl_plugin_action(GaimPlugin *plugin, gpointer context);
0e9e2b923d09 [gaim-migrate @ 13271]
John H. Kelm <johnkelm@gmail.com>
parents: 11123
diff changeset
47
11123
4315bb5f427b [gaim-migrate @ 13179]
John H. Kelm <johnkelm@gmail.com>
parents: 6568
diff changeset
48 GaimPluginPrefFrame *gaim_perl_get_plugin_frame(GaimPlugin *plugin);
6549
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
49
11170
0e9e2b923d09 [gaim-migrate @ 13271]
John H. Kelm <johnkelm@gmail.com>
parents: 11123
diff changeset
50 GtkWidget *gaim_perl_gtk_get_plugin_frame(GaimPlugin *plugin);
0e9e2b923d09 [gaim-migrate @ 13271]
John H. Kelm <johnkelm@gmail.com>
parents: 11123
diff changeset
51
6568
33486b749aa9 [gaim-migrate @ 7090]
Christian Hammond <chipx86@chipx86.com>
parents: 6567
diff changeset
52 void gaim_perl_timeout_add(GaimPlugin *plugin, int seconds, SV *callback,
12882
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
53 SV *data);
6520
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
54 void gaim_perl_timeout_clear_for_plugin(GaimPlugin *plugin);
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
55 void gaim_perl_timeout_clear(void);
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
56
6550
f1736493aebb [gaim-migrate @ 7072]
Christian Hammond <chipx86@chipx86.com>
parents: 6549
diff changeset
57 void gaim_perl_signal_connect(GaimPlugin *plugin, void *instance,
12882
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
58 const char *signal, SV *callback,
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
59 SV *data);
6550
f1736493aebb [gaim-migrate @ 7072]
Christian Hammond <chipx86@chipx86.com>
parents: 6549
diff changeset
60 void gaim_perl_signal_disconnect(GaimPlugin *plugin, void *instance,
12882
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
61 const char *signal);
6549
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
62 void gaim_perl_signal_clear_for_plugin(GaimPlugin *plugin);
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
63 void gaim_perl_signal_clear(void);
ed796f756237 [gaim-migrate @ 7071]
Christian Hammond <chipx86@chipx86.com>
parents: 6520
diff changeset
64
12882
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
65 GaimCmdId gaim_perl_cmd_register(GaimPlugin *plugin, const gchar *cmd,
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
66 const gchar *args, GaimCmdPriority priority,
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
67 GaimCmdFlag flag, const gchar *prpl_id,
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
68 SV *callback, const gchar *helpstr, SV *data);
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
69 void gaim_perl_cmd_unregister(GaimCmdId id);
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
70 void gaim_perl_cmd_clear_for_plugin(GaimPlugin *plugin);
e1603fd610fa [gaim-migrate @ 15234]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11170
diff changeset
71
6520
2e2593d95121 [gaim-migrate @ 7037]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
72 #endif /* _GAIM_PERL_HANDLERS_H_ */