plugins/SIGNALS

Sun, 07 Jan 2001 20:39:03 +0000

author
Eric Warmenhoven <warmenhoven@yahoo.com>
date
Sun, 07 Jan 2001 20:39:03 +0000
changeset 1392
d7e7f153bc08
parent 1058
e878d758cff6
child 1404
e915b372f70a
permissions
-rw-r--r--

[gaim-migrate @ 1402]
erg

93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
1 enum gaim_event {
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
2 event_signon = 0,
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
3 event_signoff,
133
418de720c20d [gaim-migrate @ 143]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 117
diff changeset
4 event_away,
136
d8dee47cbeb7 [gaim-migrate @ 146]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 133
diff changeset
5 event_back,
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
6 event_im_recv,
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
7 event_im_send,
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
8 event_buddy_signon,
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
9 event_buddy_signoff,
133
418de720c20d [gaim-migrate @ 143]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 117
diff changeset
10 event_buddy_away,
136
d8dee47cbeb7 [gaim-migrate @ 146]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 133
diff changeset
11 event_buddy_back,
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
12 event_buddy_idle,
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
13 event_buddy_unidle,
1058
e878d758cff6 [gaim-migrate @ 1068]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1038
diff changeset
14 event_blist_update,
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
15 event_chat_invited,
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
16 event_chat_join,
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
17 event_chat_leave,
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
18 event_chat_buddy_join,
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
19 event_chat_buddy_leave,
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
20 event_chat_recv,
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
21 event_chat_send,
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
22 event_warned,
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
23 event_error,
808
d628a65dc058 [gaim-migrate @ 818]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 425
diff changeset
24 event_quit,
d628a65dc058 [gaim-migrate @ 818]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 425
diff changeset
25 event_new_conversation
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
26 };
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
27
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
28 To add a signal handler, call the fuction gaim_signal_connect with the
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
29 following arguments:
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
30
94
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
31 void *, enum gaim_event, void *, void *
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
32
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
33 The first arg is the handle that was passed to gaim_signal_init. You did
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
34 save it, right?
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
35 The second arg is hopefully obvious.
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
36 The third arg is a pointer to a function that takes various args
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
37 depending on which event you're dealing with.
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
38 The fourth arg is any data you want to send to your function, as a final
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
39 argument.
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
40
94
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
41 To remove a signal handler, call the function gaim_signal_disconnect with the
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
42 following arguments:
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
43
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
44 void *, enum gaim_event, void *
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
45
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
46 The first arg is the handle that was passed to gaim_signal_init.
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
47 The second arg is hopefully obvious.
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
48 The third arg is a pointer to the function you attached.
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
49
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
50 Note that it deletes *all* functions matching the function you pass, not just
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
51 one. Sorry, that's just the way it works.
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
52
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
53 So here are the args that get passed to your functions in various events:
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
54
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
55 event_signon:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
56 struct gaim_connection *gc
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
57
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
58 'gc' is the new connection.
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
59
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
60 event_signoff:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
61 struct gaim_connection *gc
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
62
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
63 'gc' is the connection that is about to go offline. This is called before
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
64 serv_close is, so you still have a chance to get one last message out.
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
65
133
418de720c20d [gaim-migrate @ 143]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 117
diff changeset
66 event_away:
418de720c20d [gaim-migrate @ 143]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 117
diff changeset
67 (none)
418de720c20d [gaim-migrate @ 143]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 117
diff changeset
68
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
69 This is fucked up for now. Currently all connections are told to use the
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
70 same away message when the user wants to be Away. The away message that
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
71 is used can be obtained from global variables.
136
d8dee47cbeb7 [gaim-migrate @ 146]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 133
diff changeset
72
d8dee47cbeb7 [gaim-migrate @ 146]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 133
diff changeset
73 event_back:
d8dee47cbeb7 [gaim-migrate @ 146]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 133
diff changeset
74 (none)
d8dee47cbeb7 [gaim-migrate @ 146]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 133
diff changeset
75
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
76 event_im_recv:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
77 struct gaim_connection *gc, char **who, char **text
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
78
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
79 'gc' is the connection that received the message.
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
80 'who' is the username of the person who sent the message.
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
81 'text' is the actual strict text (with HTML tags and all) of the
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
82 message they sent.
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
83
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
84 Note that you can modify these values. (You are encouraged to do so!)
94
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
85 Note that *other* plugins can also modify these values, so you should
0c6ba3d3fa90 [gaim-migrate @ 104]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 93
diff changeset
86 check that they are not NULL, and try not to leave them as NULL.
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
87
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
88 gc was placed as the first arg as opposed to the third for intuitiveness.
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
89 Unfortunately, it means that most plugins that use this event need to be
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
90 slightly modified and then recompiled.
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
91
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
92 event_im_send:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
93 struct gaim_connection *gc, char *who, char **text
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
94
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
95 'gc' is the connection that you are about to send the message through.
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
96 'who' is the username of the person you're sending the message to.
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
97 'text' is the actual strict text (with HTML tags and all) of the
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
98 message you're sending.
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
99
1392
d7e7f153bc08 [gaim-migrate @ 1402]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1058
diff changeset
100 Note that you can modify outgoing text. The **text points to a g_malloc'd
d7e7f153bc08 [gaim-migrate @ 1402]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1058
diff changeset
101 data chunk that contains the text. If your plugin changes it, it should
d7e7f153bc08 [gaim-migrate @ 1402]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1058
diff changeset
102 either not add length to the string, or g_free *text and g_malloc a new
d7e7f153bc08 [gaim-migrate @ 1402]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1058
diff changeset
103 segment. Since plugins can modify this, you should not try and remember it
d7e7f153bc08 [gaim-migrate @ 1402]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1058
diff changeset
104 in your plugin.
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
105
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
106 event_buddy_signon:
1038
850b893e1ac9 [gaim-migrate @ 1048]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1000
diff changeset
107 struct gaim_connection *gc, char *who
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
108
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
109 'who' is who signed on. (There is currently no way to see which connection
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
110 reported that the buddy came online. Hopefully this will happen soon.)
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
111
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
112 event_buddy_signoff:
1038
850b893e1ac9 [gaim-migrate @ 1048]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1000
diff changeset
113 struct gaim_connection *gc, char *who
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
114
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
115 'who' is who signed off.
116
4df00c12350f [gaim-migrate @ 126]
Rob Flynn <gaim@robflynn.com>
parents: 103
diff changeset
116
133
418de720c20d [gaim-migrate @ 143]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 117
diff changeset
117 event_buddy_away:
1038
850b893e1ac9 [gaim-migrate @ 1048]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1000
diff changeset
118 struct gaim_connection *gc, char *who
133
418de720c20d [gaim-migrate @ 143]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 117
diff changeset
119
418de720c20d [gaim-migrate @ 143]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 117
diff changeset
120 'who' is who went away.
418de720c20d [gaim-migrate @ 143]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 117
diff changeset
121
136
d8dee47cbeb7 [gaim-migrate @ 146]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 133
diff changeset
122 event_buddy_back:
1038
850b893e1ac9 [gaim-migrate @ 1048]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1000
diff changeset
123 struct gaim_connection *gc, char *who
136
d8dee47cbeb7 [gaim-migrate @ 146]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 133
diff changeset
124
d8dee47cbeb7 [gaim-migrate @ 146]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 133
diff changeset
125 'who' is who is no longer away.
d8dee47cbeb7 [gaim-migrate @ 146]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 133
diff changeset
126
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
127 event_buddy_idle:
1038
850b893e1ac9 [gaim-migrate @ 1048]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1000
diff changeset
128 struct gaim_connection *gc, char *who
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
129
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
130 'who' is who went idle.
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
131
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
132 event_buddy_unidle:
1038
850b893e1ac9 [gaim-migrate @ 1048]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1000
diff changeset
133 struct gaim_connection *gc, char *who
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
134
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
135 'who' is who is no longer idle.
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
136
1058
e878d758cff6 [gaim-migrate @ 1068]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1038
diff changeset
137 event_blist_update:
e878d758cff6 [gaim-migrate @ 1068]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1038
diff changeset
138 (none)
e878d758cff6 [gaim-migrate @ 1068]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1038
diff changeset
139
e878d758cff6 [gaim-migrate @ 1068]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1038
diff changeset
140 called when the idle times are updated in the buddy list
e878d758cff6 [gaim-migrate @ 1068]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1038
diff changeset
141
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
142 event_chat_invited:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
143 struct gaim_connection *gc, char *who, char *room, char *message
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
144
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
145 'gc' is the connection that received the invitation.
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
146 'who' is who invited you to a chat room.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
147 'room' is the room they invited you to.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
148 'message' is the (optional) message they sent to invite you, and may be
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
149 an empty string.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
150
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
151 event_chat_join:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
152 struct gaim_connection *gc, char *room
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
153
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
154 'gc' is the connection that joined the room.
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
155 'room' is the chat room that you have just joined.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
156
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
157 event_chat_leave:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
158 struct gaim_connection *gc, char *room
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
159
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
160 'gc' is the connection that joined the room.
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
161 'room' is the chat room that you have just left.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
162
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
163 event_chat_buddy_join:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
164 struct gaim_connection *gc, char *room, char *who
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
165
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
166 'gc' is the connection that the chat room is attached to.
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
167 'room' is the room the person joined.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
168 'who' is the screenname of the person who joined.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
169
404
0881630e6d25 [gaim-migrate @ 414]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 401
diff changeset
170 This is also triggered upon entering the room for every person in the
0881630e6d25 [gaim-migrate @ 414]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 401
diff changeset
171 room, including yourself. (E.g. if you join a room that already had 3
0881630e6d25 [gaim-migrate @ 414]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 401
diff changeset
172 people in it this will be called 4 times, once for each of them and
0881630e6d25 [gaim-migrate @ 414]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 401
diff changeset
173 once again for you. You will not always be the last one this is called
0881630e6d25 [gaim-migrate @ 414]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 401
diff changeset
174 for though.)
0881630e6d25 [gaim-migrate @ 414]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 401
diff changeset
175
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
176 event_chat_buddy_leave:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
177 struct gaim_connection *gc, char *room, char *who
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
178
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
179 'gc' is the connection that the chat room is attached to.
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
180 'room' is the room the person left.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
181 'who' is the screenname of the person who left.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
182
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
183 event_chat_recv:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
184 struct gaim_connection *gc, char *room, char *who, char *text
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
185
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
186 'gc' is the connection that received the message.
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
187 'room' should be obvious by now.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
188 'who' should be too.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
189 'text' is the message that got sent.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
190
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
191 Note that because of the bizarre way chat works, you also receive
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
192 messages that you send. I didn't design it, AOL did.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
193
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
194 event_chat_send:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
195 struct gaim_connection *gc, char *room, char **text
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
196
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
197 'gc' is the connection that the message is about to be sent on.
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
198 'room'. Need I say more.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
199 'text' is what you're about to say, linkified/HTML-ized, but not
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
200 TOC-escaped.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
201
401
461437d36d04 [gaim-migrate @ 411]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 392
diff changeset
202 Be aware that you receive messages you send (as noted above). This
461437d36d04 [gaim-migrate @ 411]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 392
diff changeset
203 event will be called before you actually send the message though.
1392
d7e7f153bc08 [gaim-migrate @ 1402]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1058
diff changeset
204 The **text pointer behaves the same as the **text pointer for the
d7e7f153bc08 [gaim-migrate @ 1402]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1058
diff changeset
205 event_im_send event above; so read the note about it there.
401
461437d36d04 [gaim-migrate @ 411]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 392
diff changeset
206
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
207 event_warned:
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
208 char *who, int level
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
209
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
210 'who' is who warned you. Note that this can be NULL, indicating either
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
211 an anonymous warning, or your warning level has dropped.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
212 'level' is your new warning level.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
213
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
214 event_error:
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
215 int error
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
216
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
217 'error' is the number of the error as defined by the TOC PROTOCOL
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
218 document, which can be found in the docs/ directory of the source
836
8981603d1f92 [gaim-migrate @ 846]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 808
diff changeset
219 tree. Note that if the person is using Oscar, this number is often
8981603d1f92 [gaim-migrate @ 846]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 808
diff changeset
220 plain wrong, and this event may not always be triggered on error.
8981603d1f92 [gaim-migrate @ 846]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 808
diff changeset
221 Experiment to find what is reliable.
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
222
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
223 event_quit:
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
224 (none)
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
225
392
d3edc6236c3f [gaim-migrate @ 402]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 391
diff changeset
226 Called when gaim quits normally. This can be called from either the
d3edc6236c3f [gaim-migrate @ 402]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 391
diff changeset
227 signed on state or the signed off state (from either the Cancel button
d3edc6236c3f [gaim-migrate @ 402]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 391
diff changeset
228 in the login window or the Quit option in the File menu on the buddy
425
bc3f0933ce54 [gaim-migrate @ 435]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 404
diff changeset
229 list). If gaim dies or is murdered, this won't be called. It's not my
bc3f0933ce54 [gaim-migrate @ 435]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 404
diff changeset
230 fault, it's Seg's.
808
d628a65dc058 [gaim-migrate @ 818]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 425
diff changeset
231
d628a65dc058 [gaim-migrate @ 818]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 425
diff changeset
232 event_new_conversation:
d628a65dc058 [gaim-migrate @ 818]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 425
diff changeset
233 char *who
d628a65dc058 [gaim-migrate @ 818]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 425
diff changeset
234
d628a65dc058 [gaim-migrate @ 818]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 425
diff changeset
235 'who' is who the conversation is with. This gets called when a new
d628a65dc058 [gaim-migrate @ 818]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 425
diff changeset
236 conversation window is created. You can use find_conversation(char *)
d628a65dc058 [gaim-migrate @ 818]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 425
diff changeset
237 to then find the struct conversation * and modify those values.

mercurial