plugins/SIGNALS

Mon, 16 Oct 2000 20:11:18 +0000

author
Eric Warmenhoven <warmenhoven@yahoo.com>
date
Mon, 16 Oct 2000 20:11:18 +0000
changeset 1000
66436e94d53f
parent 836
8981603d1f92
child 1038
850b893e1ac9
permissions
-rw-r--r--

[gaim-migrate @ 1010]
Plugins work again, I think. There may still be some bugginess.

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,
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
14 event_blist_update,
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
103
b1da69279129 [gaim-migrate @ 113]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 94
diff changeset
100 Note that you can modify outgoing text. (You are _not_ encouraged to
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
101 do so ;-) .)
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
102
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
103 event_buddy_signon:
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
104 char *who
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
105
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
106 '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
107 reported that the buddy came online. Hopefully this will happen soon.)
93
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
108
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
109 event_buddy_signoff:
a62ef5a64629 [gaim-migrate @ 103]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
110 char *who
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 'who' is who signed off.
116
4df00c12350f [gaim-migrate @ 126]
Rob Flynn <gaim@robflynn.com>
parents: 103
diff changeset
113
133
418de720c20d [gaim-migrate @ 143]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 117
diff changeset
114 event_buddy_away:
418de720c20d [gaim-migrate @ 143]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 117
diff changeset
115 char *who
418de720c20d [gaim-migrate @ 143]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 117
diff changeset
116
418de720c20d [gaim-migrate @ 143]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 117
diff changeset
117 'who' is who went away.
418de720c20d [gaim-migrate @ 143]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 117
diff changeset
118
136
d8dee47cbeb7 [gaim-migrate @ 146]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 133
diff changeset
119 event_buddy_back:
d8dee47cbeb7 [gaim-migrate @ 146]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 133
diff changeset
120 char *who
d8dee47cbeb7 [gaim-migrate @ 146]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 133
diff changeset
121
d8dee47cbeb7 [gaim-migrate @ 146]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 133
diff changeset
122 'who' is who is no longer away.
d8dee47cbeb7 [gaim-migrate @ 146]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 133
diff changeset
123
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
124 event_buddy_idle:
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
125 char *who
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
126
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
127 'who' is who went idle.
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
128
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
129 event_buddy_unidle:
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
130 char *who
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 'who' is who is no longer idle.
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
133
116
4df00c12350f [gaim-migrate @ 126]
Rob Flynn <gaim@robflynn.com>
parents: 103
diff changeset
134 event_blist_update:
4df00c12350f [gaim-migrate @ 126]
Rob Flynn <gaim@robflynn.com>
parents: 103
diff changeset
135 (none)
4df00c12350f [gaim-migrate @ 126]
Rob Flynn <gaim@robflynn.com>
parents: 103
diff changeset
136
117
9bfffaeec690 [gaim-migrate @ 127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 116
diff changeset
137 This event is called when the buddylist is updated (automatically every
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
138 20 seconds for every connection, though the updates are usually syncopated)
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
139
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
140 event_chat_invited:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
141 struct gaim_connection *gc, char *who, char *room, char *message
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
142
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
143 'gc' is the connection that received the invitation.
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
144 'who' is who invited you to a chat room.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
145 'room' is the room they invited you to.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
146 '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
147 an empty string.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
148
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
149 event_chat_join:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
150 struct gaim_connection *gc, char *room
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
151
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
152 'gc' is the connection that joined the room.
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
153 'room' is the chat room that you have just joined.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
154
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
155 event_chat_leave:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
156 struct gaim_connection *gc, char *room
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
157
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
158 'gc' is the connection that joined the room.
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
159 'room' is the chat room that you have just left.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
160
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
161 event_chat_buddy_join:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
162 struct gaim_connection *gc, char *room, char *who
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
163
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
164 '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
165 'room' is the room the person joined.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
166 'who' is the screenname of the person who joined.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
167
404
0881630e6d25 [gaim-migrate @ 414]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 401
diff changeset
168 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
169 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
170 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
171 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
172 for though.)
0881630e6d25 [gaim-migrate @ 414]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 401
diff changeset
173
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
174 event_chat_buddy_leave:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
175 struct gaim_connection *gc, char *room, char *who
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
176
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
177 '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
178 'room' is the room the person left.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
179 'who' is the screenname of the person who left.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
180
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
181 event_chat_recv:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
182 struct gaim_connection *gc, char *room, char *who, char *text
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
183
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
184 'gc' is the connection that received the message.
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
185 'room' should be obvious by now.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
186 'who' should be too.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
187 'text' is the message that got sent.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
188
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
189 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
190 messages that you send. I didn't design it, AOL did.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
191
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
192 event_chat_send:
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
193 struct gaim_connection *gc, char *room, char **text
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
194
1000
66436e94d53f [gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 836
diff changeset
195 '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
196 'room'. Need I say more.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
197 '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
198 TOC-escaped.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
199
401
461437d36d04 [gaim-migrate @ 411]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 392
diff changeset
200 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
201 event will be called before you actually send the message though.
461437d36d04 [gaim-migrate @ 411]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 392
diff changeset
202
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
203 event_warned:
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
204 char *who, int level
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
205
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
206 '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
207 an anonymous warning, or your warning level has dropped.
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
208 'level' is your new warning 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 event_error:
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
211 int error
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
212
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
213 '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
214 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
215 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
216 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
217 Experiment to find what is reliable.
391
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
218
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
219 event_quit:
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
220 (none)
677e4414a83f [gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 136
diff changeset
221
392
d3edc6236c3f [gaim-migrate @ 402]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 391
diff changeset
222 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
223 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
224 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
225 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
226 fault, it's Seg's.
808
d628a65dc058 [gaim-migrate @ 818]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 425
diff changeset
227
d628a65dc058 [gaim-migrate @ 818]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 425
diff changeset
228 event_new_conversation:
d628a65dc058 [gaim-migrate @ 818]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 425
diff changeset
229 char *who
d628a65dc058 [gaim-migrate @ 818]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 425
diff changeset
230
d628a65dc058 [gaim-migrate @ 818]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 425
diff changeset
231 '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
232 conversation window is created. You can use find_conversation(char *)
d628a65dc058 [gaim-migrate @ 818]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 425
diff changeset
233 to then find the struct conversation * and modify those values.

mercurial