annotate plugins/SIGNALS @ 3455:8de4f34a1bd7

[gaim-migrate @ 3500] Thanks Chris Blizzard. committer: Tailor Script <tailor@pidgin.im>
author Sean Egan <seanegan@gmail.com>
date Tue, 27 Aug 2002 22:22:55 +0000
parents dee7db9e51d4
children c11960537fee
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
1 enum gaim_event {
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
2 event_signon = 0,
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
3 event_signoff,
133
e277d5f0c1dd [gaim-migrate @ 143]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 117
diff changeset
4 event_away,
136
4e91b92f91a7 [gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 133
diff changeset
5 event_back,
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
6 event_im_recv,
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
7 event_im_send,
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
8 event_buddy_signon,
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
9 event_buddy_signoff,
133
e277d5f0c1dd [gaim-migrate @ 143]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 117
diff changeset
10 event_buddy_away,
136
4e91b92f91a7 [gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 133
diff changeset
11 event_buddy_back,
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
12 event_buddy_idle,
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
13 event_buddy_unidle,
1058
4927ce25d8cc [gaim-migrate @ 1068]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1038
diff changeset
14 event_blist_update,
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
15 event_chat_invited,
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
16 event_chat_join,
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
17 event_chat_leave,
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
18 event_chat_buddy_join,
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
19 event_chat_buddy_leave,
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
20 event_chat_recv,
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
21 event_chat_send,
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
22 event_warned,
808
9d61f3d01046 [gaim-migrate @ 818]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 425
diff changeset
23 event_quit,
1749
5bfc58c20e82 [gaim-migrate @ 1759]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1404
diff changeset
24 event_new_conversation,
2102
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
25 event_set_info,
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
26 event_draw_menu,
2104
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
27 event_im_displayed_sent,
2345
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
28 event_im_displayed_rcvd,
2993
7239a392486c [gaim-migrate @ 3006]
Rob Flynn <gaim@robflynn.com>
parents: 2359
diff changeset
29 event_chat_send_invite,
7239a392486c [gaim-migrate @ 3006]
Rob Flynn <gaim@robflynn.com>
parents: 2359
diff changeset
30 event_got_typing,
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
31 };
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
32
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
33 To add a signal handler, call the fuction gaim_signal_connect with the
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
34 following arguments:
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
35
94
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
36 void *, enum gaim_event, void *, void *
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
37
3190
dee7db9e51d4 [gaim-migrate @ 3207]
Sean Egan <seanegan@gmail.com>
parents: 3163
diff changeset
38 The first arg is the handle that was passed to gaim_plugin_init. You did
94
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
39 save it, right?
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
40 The second arg is hopefully obvious.
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
41 The third arg is a pointer to a function that takes various args
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
42 depending on which event you're dealing with.
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
43 The fourth arg is any data you want to send to your function, as a final
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
44 argument.
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
45
94
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
46 To remove a signal handler, call the function gaim_signal_disconnect with the
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
47 following arguments:
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
48
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
49 void *, enum gaim_event, void *
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
50
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
51 The first arg is the handle that was passed to gaim_signal_init.
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
52 The second arg is hopefully obvious.
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
53 The third arg is a pointer to the function you attached.
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
54
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
55 Note that it deletes *all* functions matching the function you pass, not just
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
56 one. Sorry, that's just the way it works.
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
57
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
58 So here are the args that get passed to your functions in various events:
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
59
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
60 event_signon:
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
61 struct gaim_connection *gc
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
62
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
63 'gc' is the new connection.
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
64
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
65 event_signoff:
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
66 struct gaim_connection *gc
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
67
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
68 'gc' is the connection that is about to go offline. This is called before
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
69 serv_close is, so you still have a chance to get one last message out.
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
70
133
e277d5f0c1dd [gaim-migrate @ 143]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 117
diff changeset
71 event_away:
1404
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
72 struct gaim_connection *gc, char *state, char *message
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
73
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
74 'gc' is the connection. Duh.
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
75 'state' is confusing. We'll save that for now.
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
76 'message' is the away message to be used.
133
e277d5f0c1dd [gaim-migrate @ 143]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 117
diff changeset
77
1404
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
78 Each protocol sets up what away states it can have. These are all char *,
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
79 and when the connection goes away it uses one of those. That's what state
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
80 is.
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
81
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
82 There's no way of telling from state and message whether you're actually
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
83 away; it only gives state information, and a possible message.
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
84
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
85 However, the protocols also are very nice (usually) and will set gc->away
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
86 if they're in an away-like state (e.g. Away or N/A for ICQ, etc). You can
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
87 use that for a more rigid (read "boolean") way of checking away-ness.
136
4e91b92f91a7 [gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 133
diff changeset
88
4e91b92f91a7 [gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 133
diff changeset
89 event_back:
4e91b92f91a7 [gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 133
diff changeset
90 (none)
4e91b92f91a7 [gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 133
diff changeset
91
1404
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
92 This is deprecated and will not be called again. It will probably be
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
93 removed eventually.
96e93119268d [gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1392
diff changeset
94
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
95 event_im_recv:
3163
e102d1629c71 [gaim-migrate @ 3179]
Sean Egan <seanegan@gmail.com>
parents: 2993
diff changeset
96 struct gaim_connection *gc, char **who, char **text, guint32 *flags
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
97
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
98 'gc' is the connection that received the message.
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
99 'who' is the username of the person who sent the message.
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
100 'text' is the actual strict text (with HTML tags and all) of the
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
101 message they sent.
2273
0b5c3338fa3d [gaim-migrate @ 2283]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2104
diff changeset
102 'flags' is message flags.
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
103
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
104 Note that you can modify these values. (You are encouraged to do so!)
94
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
105 Note that *other* plugins can also modify these values, so you should
9f6ce50ffb78 [gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 93
diff changeset
106 check that they are not NULL, and try not to leave them as NULL.
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
107
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
108 gc was placed as the first arg as opposed to the third for intuitiveness.
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
109 Unfortunately, it means that most plugins that use this event need to be
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
110 slightly modified and then recompiled.
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
111
2273
0b5c3338fa3d [gaim-migrate @ 2283]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2104
diff changeset
112 flags is actually a bit mask. AND with IM_FLAG_AWAY to see if they were
0b5c3338fa3d [gaim-migrate @ 2283]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2104
diff changeset
113 away, etc.
0b5c3338fa3d [gaim-migrate @ 2283]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2104
diff changeset
114
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
115 event_im_send:
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
116 struct gaim_connection *gc, char *who, char **text
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
117
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
118 'gc' is the connection that you are about to send the message through.
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
119 'who' is the username of the person you're sending the message to.
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
120 'text' is the actual strict text (with HTML tags and all) of the
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
121 message you're sending.
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
122
1392
dc6ba774bfc5 [gaim-migrate @ 1402]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1058
diff changeset
123 Note that you can modify outgoing text. The **text points to a g_malloc'd
dc6ba774bfc5 [gaim-migrate @ 1402]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1058
diff changeset
124 data chunk that contains the text. If your plugin changes it, it should
dc6ba774bfc5 [gaim-migrate @ 1402]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1058
diff changeset
125 either not add length to the string, or g_free *text and g_malloc a new
dc6ba774bfc5 [gaim-migrate @ 1402]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1058
diff changeset
126 segment. Since plugins can modify this, you should not try and remember it
dc6ba774bfc5 [gaim-migrate @ 1402]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1058
diff changeset
127 in your plugin.
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
128
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
129 event_buddy_signon:
1038
daad2440a642 [gaim-migrate @ 1048]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1000
diff changeset
130 struct gaim_connection *gc, char *who
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
131
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
132 'who' is who signed on. (There is currently no way to see which connection
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
133 reported that the buddy came online. Hopefully this will happen soon.)
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
134
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
135 event_buddy_signoff:
1038
daad2440a642 [gaim-migrate @ 1048]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1000
diff changeset
136 struct gaim_connection *gc, char *who
93
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
137
5ca21b68eb29 [gaim-migrate @ 103]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
diff changeset
138 'who' is who signed off.
116
8c982b7f18d4 [gaim-migrate @ 126]
Rob Flynn <gaim@robflynn.com>
parents: 103
diff changeset
139
133
e277d5f0c1dd [gaim-migrate @ 143]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 117
diff changeset
140 event_buddy_away:
1038
daad2440a642 [gaim-migrate @ 1048]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1000
diff changeset
141 struct gaim_connection *gc, char *who
133
e277d5f0c1dd [gaim-migrate @ 143]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 117
diff changeset
142
e277d5f0c1dd [gaim-migrate @ 143]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 117
diff changeset
143 'who' is who went away.
e277d5f0c1dd [gaim-migrate @ 143]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 117
diff changeset
144
136
4e91b92f91a7 [gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 133
diff changeset
145 event_buddy_back:
1038
daad2440a642 [gaim-migrate @ 1048]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1000
diff changeset
146 struct gaim_connection *gc, char *who
136
4e91b92f91a7 [gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 133
diff changeset
147
4e91b92f91a7 [gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 133
diff changeset
148 'who' is who is no longer away.
4e91b92f91a7 [gaim-migrate @ 146]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 133
diff changeset
149
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
150 event_buddy_idle:
1038
daad2440a642 [gaim-migrate @ 1048]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1000
diff changeset
151 struct gaim_connection *gc, char *who
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
152
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
153 'who' is who went idle.
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
154
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
155 event_buddy_unidle:
1038
daad2440a642 [gaim-migrate @ 1048]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1000
diff changeset
156 struct gaim_connection *gc, char *who
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
157
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
158 'who' is who is no longer idle.
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
159
1058
4927ce25d8cc [gaim-migrate @ 1068]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1038
diff changeset
160 event_blist_update:
4927ce25d8cc [gaim-migrate @ 1068]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1038
diff changeset
161 (none)
4927ce25d8cc [gaim-migrate @ 1068]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1038
diff changeset
162
4927ce25d8cc [gaim-migrate @ 1068]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1038
diff changeset
163 called when the idle times are updated in the buddy list
4927ce25d8cc [gaim-migrate @ 1068]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1038
diff changeset
164
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
165 event_chat_invited:
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
166 struct gaim_connection *gc, char *who, char *room, char *message
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
167
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
168 'gc' is the connection that received the invitation.
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
169 'who' is who invited you to a chat room.
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
170 'room' is the room they invited you to.
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
171 'message' is the (optional) message they sent to invite you, and may be
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
172 an empty string.
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
173
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
174 event_chat_join:
2345
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
175 struct gaim_connection *gc, int id, char *room
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
176
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
177 'gc' is the connection that joined the room.
2345
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
178 'id' is the id of the room. See, each room is given an id unique
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
179 within the connection. The struct conversation*'s in gc->buddy_chats
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
180 have an 'id' field that's only used if it's is_chat member is TRUE.
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
181 'id' is the *only* way to detect which chat room you actually mean,
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
182 because the name of the chat room is not always unique (for example,
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
183 MSN always uses "MSN Chat" as its name, since group chats in MSN
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
184 don't actually have names).
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
185 'room' is the chat room that you have just joined.
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
186
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
187 event_chat_leave:
2345
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
188 struct gaim_connection *gc, int
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
189
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
190 'gc' is the connection that joined the room.
2345
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
191 'id' is the id of the chat room that you have just left.
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
192
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
193 event_chat_buddy_join:
2345
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
194 struct gaim_connection *gc, int id, char *who
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
195
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
196 'gc' is the connection that the chat room is attached to.
2345
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
197 'id' is the id of the room the person joined.
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
198 'who' is the screenname of the person who joined.
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
199
404
3d94cc1dc424 [gaim-migrate @ 414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 401
diff changeset
200 This is also triggered upon entering the room for every person in the
3d94cc1dc424 [gaim-migrate @ 414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 401
diff changeset
201 room, including yourself. (E.g. if you join a room that already had 3
3d94cc1dc424 [gaim-migrate @ 414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 401
diff changeset
202 people in it this will be called 4 times, once for each of them and
3d94cc1dc424 [gaim-migrate @ 414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 401
diff changeset
203 once again for you. You will not always be the last one this is called
3d94cc1dc424 [gaim-migrate @ 414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 401
diff changeset
204 for though.)
3d94cc1dc424 [gaim-migrate @ 414]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 401
diff changeset
205
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
206 event_chat_buddy_leave:
2345
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
207 struct gaim_connection *gc, int id, char *who
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
208
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
209 'gc' is the connection that the chat room is attached to.
2345
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
210 'id' is the id of the room the person left.
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
211 'who' is the screenname of the person who left.
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
212
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
213 event_chat_recv:
3163
e102d1629c71 [gaim-migrate @ 3179]
Sean Egan <seanegan@gmail.com>
parents: 2993
diff changeset
214 struct gaim_connection *gc, int id, char **who, char **text
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
215
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
216 'gc' is the connection that received the message.
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
217 'who' should be too.
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
218 'text' is the message that got sent.
2345
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
219 'id' is the id of the room that received the message (see
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
220 event_chat_join)
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
221
3163
e102d1629c71 [gaim-migrate @ 3179]
Sean Egan <seanegan@gmail.com>
parents: 2993
diff changeset
222 Like event_im_recv, you are allowed and encouraged to change
e102d1629c71 [gaim-migrate @ 3179]
Sean Egan <seanegan@gmail.com>
parents: 2993
diff changeset
223 these values
e102d1629c71 [gaim-migrate @ 3179]
Sean Egan <seanegan@gmail.com>
parents: 2993
diff changeset
224
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
225 Note that because of the bizarre way chat works, you also receive
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
226 messages that you send. I didn't design it, AOL did.
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
227
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
228 event_chat_send:
2345
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
229 struct gaim_connection *gc, int id, char **text
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
230
1000
91b7377e7b45 [gaim-migrate @ 1010]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 836
diff changeset
231 'gc' is the connection that the message is about to be sent on.
2345
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
232 'id' is the id of the room to which you're sending the message.
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
233 'text' is what you're about to say, linkified/HTML-ized, but not
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
234 TOC-escaped.
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
235
401
7c74e2f579b5 [gaim-migrate @ 411]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 392
diff changeset
236 Be aware that you receive messages you send (as noted above). This
7c74e2f579b5 [gaim-migrate @ 411]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 392
diff changeset
237 event will be called before you actually send the message though.
1392
dc6ba774bfc5 [gaim-migrate @ 1402]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1058
diff changeset
238 The **text pointer behaves the same as the **text pointer for the
dc6ba774bfc5 [gaim-migrate @ 1402]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1058
diff changeset
239 event_im_send event above; so read the note about it there.
401
7c74e2f579b5 [gaim-migrate @ 411]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 392
diff changeset
240
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
241 event_warned:
1873
08ac51210d09 [gaim-migrate @ 1883]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1749
diff changeset
242 struct gaim_connection *gc, char *who, int level
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
243
1873
08ac51210d09 [gaim-migrate @ 1883]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1749
diff changeset
244 'gc' is the account that got warned.
391
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
245 'who' is who warned you. Note that this can be NULL, indicating either
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
246 an anonymous warning, or your warning level has dropped.
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
247 'level' is your new warning level.
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
248
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
249 event_quit:
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
250 (none)
be408b41c172 [gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 136
diff changeset
251
392
df5127560034 [gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 391
diff changeset
252 Called when gaim quits normally. This can be called from either the
df5127560034 [gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 391
diff changeset
253 signed on state or the signed off state (from either the Cancel button
df5127560034 [gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 391
diff changeset
254 in the login window or the Quit option in the File menu on the buddy
425
ae7c762775cd [gaim-migrate @ 435]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 404
diff changeset
255 list). If gaim dies or is murdered, this won't be called. It's not my
ae7c762775cd [gaim-migrate @ 435]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 404
diff changeset
256 fault, it's Seg's.
808
9d61f3d01046 [gaim-migrate @ 818]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 425
diff changeset
257
9d61f3d01046 [gaim-migrate @ 818]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 425
diff changeset
258 event_new_conversation:
9d61f3d01046 [gaim-migrate @ 818]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 425
diff changeset
259 char *who
9d61f3d01046 [gaim-migrate @ 818]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 425
diff changeset
260
9d61f3d01046 [gaim-migrate @ 818]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 425
diff changeset
261 'who' is who the conversation is with. This gets called when a new
9d61f3d01046 [gaim-migrate @ 818]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 425
diff changeset
262 conversation window is created. You can use find_conversation(char *)
9d61f3d01046 [gaim-migrate @ 818]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 425
diff changeset
263 to then find the struct conversation * and modify those values.
1749
5bfc58c20e82 [gaim-migrate @ 1759]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1404
diff changeset
264
5bfc58c20e82 [gaim-migrate @ 1759]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1404
diff changeset
265 event_set_info:
5bfc58c20e82 [gaim-migrate @ 1759]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1404
diff changeset
266 struct gaim_connection *gc, char *info
5bfc58c20e82 [gaim-migrate @ 1759]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1404
diff changeset
267
5bfc58c20e82 [gaim-migrate @ 1759]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1404
diff changeset
268 Called when the user sends his profile to the server. 'info' is the
5bfc58c20e82 [gaim-migrate @ 1759]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1404
diff changeset
269 profile being sent.
2102
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
270
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
271 event_draw_menu:
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
272 GtkWidget *menu, char *name
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
273
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
274 Called when you right-click on a buddy.
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
275
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
276 'menu' is the menu that is about to be displayed.
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
277 'name' is the name of the buddy that was clicked.
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
278
2104
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
279 event_im_displayed_sent:
2102
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
280 struct gaim_connection *gc, char *who, char **what
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
281
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
282 This is called after what you send is displayed but before it's
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
283 actually sent. That is, when the user clicks the "send" button
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
284 in an IM window, first it gets passed to event_im_send handlers,
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
285 then it gets displayed, then it gets passed to these handlers, and
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
286 then it gets sent over the wire. This is useful for when you want
2104
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
287 to encrypt something on the way out.
2102
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
288
2104
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
289 'gc' is the connection the message is sent on.
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
290 'who' is who the message is for.
2102
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
291 'what' is what was sent. It's expected that you modify this. If
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
292 you set *what to NULL the message won't be sent, but the preferred
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
293 way of doing this is to attach to event_im_send so that it really
899c22dcee42 [gaim-migrate @ 2112]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 1873
diff changeset
294 won't be displayed at all.
2104
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
295
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
296 event_im_displayed_rcvd:
2273
0b5c3338fa3d [gaim-migrate @ 2283]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2104
diff changeset
297 struct gaim_connection *gc, char *who, char *what, guint32 flags
2104
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
298
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
299 This is called after what you receive is displayed. This is useful
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
300 for displaying an autoresponse after the message that triggered it.
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
301 There are a bunch of things that are odd about this, especially
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
302 when dealing with being away, so be careful.
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
303
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
304 'gc' is the connection the message was received on.
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
305 'who' is who sent the message.
0b81421021fd [gaim-migrate @ 2114]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2102
diff changeset
306 'what' is what was sent.
2273
0b5c3338fa3d [gaim-migrate @ 2283]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2104
diff changeset
307 'flags' is flags on the message.
2345
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
308
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
309 event_chat_send_invite:
2359
ad56a93661fc [gaim-migrate @ 2372]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2345
diff changeset
310 struct gaim_connection *gc, int id, char *who, char **msg
2345
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
311
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
312 This is called just before you're about to invite someone. It's
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
313 useful for if you want to pass someone a key so that they can
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
314 participate in a group encrypted chat (ahem).
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
315
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
316 'gc' is the connection the invite is sent on.
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
317 'id' is the id of the room you're inviting them to.
a49e8f1afbc4 [gaim-migrate @ 2358]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2273
diff changeset
318 'who' is who you're inviting.
2359
ad56a93661fc [gaim-migrate @ 2372]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2345
diff changeset
319 'msg' is the message they'll receive when they're invited. It may be
ad56a93661fc [gaim-migrate @ 2372]
Eric Warmenhoven <eric@warmenhoven.org>
parents: 2345
diff changeset
320 NULL. Setting this to NULL won't stop the invitation from going thru.
2993
7239a392486c [gaim-migrate @ 3006]
Rob Flynn <gaim@robflynn.com>
parents: 2359
diff changeset
321
7239a392486c [gaim-migrate @ 3006]
Rob Flynn <gaim@robflynn.com>
parents: 2359
diff changeset
322 event_got_typing:
7239a392486c [gaim-migrate @ 3006]
Rob Flynn <gaim@robflynn.com>
parents: 2359
diff changeset
323 struct gaim_connection *gc, char *who
7239a392486c [gaim-migrate @ 3006]
Rob Flynn <gaim@robflynn.com>
parents: 2359
diff changeset
324
7239a392486c [gaim-migrate @ 3006]
Rob Flynn <gaim@robflynn.com>
parents: 2359
diff changeset
325 This is called when a buddy starts typing you and is called
7239a392486c [gaim-migrate @ 3006]
Rob Flynn <gaim@robflynn.com>
parents: 2359
diff changeset
326 differently depending on the protocol. MSN requires that a
7239a392486c [gaim-migrate @ 3006]
Rob Flynn <gaim@robflynn.com>
parents: 2359
diff changeset
327 conversation is already in progress, and may send more than
7239a392486c [gaim-migrate @ 3006]
Rob Flynn <gaim@robflynn.com>
parents: 2359
diff changeset
328 one notification while typing. OSCAR can receive typing
7239a392486c [gaim-migrate @ 3006]
Rob Flynn <gaim@robflynn.com>
parents: 2359
diff changeset
329 notifications in direct IMs, and Yahoo can receive them any
7239a392486c [gaim-migrate @ 3006]
Rob Flynn <gaim@robflynn.com>
parents: 2359
diff changeset
330 time.
7239a392486c [gaim-migrate @ 3006]
Rob Flynn <gaim@robflynn.com>
parents: 2359
diff changeset
331
7239a392486c [gaim-migrate @ 3006]
Rob Flynn <gaim@robflynn.com>
parents: 2359
diff changeset
332 'gc' is the connection the typing is sent to.
7239a392486c [gaim-migrate @ 3006]
Rob Flynn <gaim@robflynn.com>
parents: 2359
diff changeset
333 'who' is the person typing to you.