Sat, 26 Mar 2005 01:20:31 +0000
[gaim-migrate @ 12333]
Patch 4/4 (I forget what patch did what, this branch stuff is confusing me)
| 5563 | 1 | /** |
| 2 | * @file connection.h Connection API | |
| 3 | * @ingroup core | |
| 4 | * | |
| 5 | * gaim | |
| 6 | * | |
| 8046 | 7 | * Gaim is the legal property of its developers, whose names are too numerous |
| 8 | * to list here. Please refer to the COPYRIGHT file distributed with this | |
| 9 | * source distribution. | |
|
6460
fc288e7221ca
[gaim-migrate @ 6969]
Christian Hammond <chipx86@chipx86.com>
parents:
6393
diff
changeset
|
10 | * |
| 5563 | 11 | * This program is free software; you can redistribute it and/or modify |
| 12 | * it under the terms of the GNU General Public License as published by | |
| 13 | * the Free Software Foundation; either version 2 of the License, or | |
| 14 | * (at your option) any later version. | |
| 15 | * | |
| 16 | * This program is distributed in the hope that it will be useful, | |
| 17 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 18 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 19 | * GNU General Public License for more details. | |
| 20 | * | |
| 21 | * You should have received a copy of the GNU General Public License | |
| 22 | * along with this program; if not, write to the Free Software | |
| 23 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
|
6724
e1d416a4a4bc
[gaim-migrate @ 7251]
Christian Hammond <chipx86@chipx86.com>
parents:
6720
diff
changeset
|
24 | * |
|
e1d416a4a4bc
[gaim-migrate @ 7251]
Christian Hammond <chipx86@chipx86.com>
parents:
6720
diff
changeset
|
25 | * @see @ref connection-signals |
| 5563 | 26 | */ |
| 27 | #ifndef _GAIM_CONNECTION_H_ | |
| 28 | #define _GAIM_CONNECTION_H_ | |
| 29 | ||
| 30 | typedef struct _GaimConnection GaimConnection; | |
| 31 | ||
|
6622
277eb0b14653
[gaim-migrate @ 7146]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
32 | /** |
|
277eb0b14653
[gaim-migrate @ 7146]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
33 | * Flags to change behavior of the client for a given connection. |
|
277eb0b14653
[gaim-migrate @ 7146]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
34 | */ |
|
277eb0b14653
[gaim-migrate @ 7146]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
35 | typedef enum |
|
277eb0b14653
[gaim-migrate @ 7146]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
36 | { |
|
6982
12f08de92674
[gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
6724
diff
changeset
|
37 | GAIM_CONNECTION_HTML = 0x0001, /**< Connection sends/receives in 'HTML'. */ |
|
8735
01248ea222d3
[gaim-migrate @ 9490]
Jonathan Champ <royanee@users.sourceforge.net>
parents:
8691
diff
changeset
|
38 | GAIM_CONNECTION_NO_BGCOLOR = 0x0002, /**< Connection does not send/receive |
|
6982
12f08de92674
[gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
6724
diff
changeset
|
39 | background colors. */ |
| 8677 | 40 | GAIM_CONNECTION_AUTO_RESP = 0x0004, /**< Send auto responses when away. */ |
| 41 | GAIM_CONNECTION_FORMATTING_WBFO = 0x0008, /**< The text buffer must be formatted as a whole */ | |
| 8691 | 42 | GAIM_CONNECTION_NO_NEWLINES = 0x0010, /**< No new lines are allowed in outgoing messages */ |
| 9041 | 43 | GAIM_CONNECTION_NO_FONTSIZE = 0x0020, /**< Connection does not send/receive font sizes */ |
| 10665 | 44 | GAIM_CONNECTION_NO_URLDESC = 0x0040, /**< Connection does not support descriptions with links */ |
| 45 | GAIM_CONNECTION_NO_IMAGES = 0x0080, /**< Connection does not support sending of images */ | |
|
10008
1de3454a0dca
[gaim-migrate @ 10925]
Mark Doliner <markdoliner@pidgin.im>
parents:
9981
diff
changeset
|
46 | |
|
6622
277eb0b14653
[gaim-migrate @ 7146]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
47 | } GaimConnectionFlags; |
|
5872
754c63f29b77
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5733
diff
changeset
|
48 | |
| 5563 | 49 | typedef enum |
| 50 | { | |
| 51 | GAIM_DISCONNECTED = 0, /**< Disconnected. */ | |
| 52 | GAIM_CONNECTED, /**< Connected. */ | |
| 53 | GAIM_CONNECTING /**< Connecting. */ | |
| 54 | ||
| 55 | } GaimConnectionState; | |
| 56 | ||
|
10021
5aa380278a15
[gaim-migrate @ 10946]
Mark Doliner <markdoliner@pidgin.im>
parents:
10008
diff
changeset
|
57 | #include <time.h> |
|
5aa380278a15
[gaim-migrate @ 10946]
Mark Doliner <markdoliner@pidgin.im>
parents:
10008
diff
changeset
|
58 | |
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
59 | #include "account.h" |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
60 | #include "plugin.h" |
| 10400 | 61 | #include "status.h" |
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
62 | |
| 5563 | 63 | typedef struct |
| 64 | { | |
| 65 | void (*connect_progress)(GaimConnection *gc, const char *text, | |
| 66 | size_t step, size_t step_count); | |
| 67 | void (*connected)(GaimConnection *gc); | |
|
6460
fc288e7221ca
[gaim-migrate @ 6969]
Christian Hammond <chipx86@chipx86.com>
parents:
6393
diff
changeset
|
68 | void (*disconnected)(GaimConnection *gc); |
|
5571
b709464f507e
[gaim-migrate @ 5973]
Christian Hammond <chipx86@chipx86.com>
parents:
5564
diff
changeset
|
69 | void (*notice)(GaimConnection *gc, const char *text); |
|
6460
fc288e7221ca
[gaim-migrate @ 6969]
Christian Hammond <chipx86@chipx86.com>
parents:
6393
diff
changeset
|
70 | void (*report_disconnect)(GaimConnection *gc, const char *text); |
| 5563 | 71 | |
| 72 | } GaimConnectionUiOps; | |
| 73 | ||
| 74 | struct _GaimConnection | |
| 75 | { | |
| 76 | GaimPlugin *prpl; /**< The protocol plugin. */ | |
|
6622
277eb0b14653
[gaim-migrate @ 7146]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
77 | GaimConnectionFlags flags; /**< Connection flags. */ |
| 5563 | 78 | |
| 79 | GaimConnectionState state; /**< The connection state. */ | |
| 80 | ||
| 81 | GaimAccount *account; /**< The account being connected to. */ | |
| 82 | int inpa; /**< The input watcher. */ | |
| 83 | ||
| 84 | GSList *buddy_chats; /**< A list of active chats. */ | |
| 85 | void *proto_data; /**< Protocol-specific data. */ | |
| 86 | ||
| 87 | char *display_name; /**< The name displayed. */ | |
| 88 | guint keep_alive; /**< Keep-alive. */ | |
| 89 | ||
| 90 | guint idle_timer; /**< The idle timer. */ | |
| 91 | time_t login_time; /**< Time of login. */ | |
| 92 | time_t last_sent_time; /**< The time something was last sent. */ | |
| 93 | int is_idle; /**< Idle state of the connection. */ | |
| 94 | ||
| 95 | gboolean is_auto_away; /**< Whether or not it's auto-away. */ | |
| 96 | ||
|
8430
13694e7d1aaa
[gaim-migrate @ 9160]
Mark Doliner <markdoliner@pidgin.im>
parents:
8046
diff
changeset
|
97 | gboolean wants_to_die; /**< Wants to Die state. This is set |
|
10272
29aff2eb9290
[gaim-migrate @ 11421]
Mark Doliner <markdoliner@pidgin.im>
parents:
10021
diff
changeset
|
98 | when the user chooses to log out, |
|
8430
13694e7d1aaa
[gaim-migrate @ 9160]
Mark Doliner <markdoliner@pidgin.im>
parents:
8046
diff
changeset
|
99 | or when the protocol is |
|
13694e7d1aaa
[gaim-migrate @ 9160]
Mark Doliner <markdoliner@pidgin.im>
parents:
8046
diff
changeset
|
100 | disconnected and should not be |
|
13694e7d1aaa
[gaim-migrate @ 9160]
Mark Doliner <markdoliner@pidgin.im>
parents:
8046
diff
changeset
|
101 | automatically reconnected |
|
13694e7d1aaa
[gaim-migrate @ 9160]
Mark Doliner <markdoliner@pidgin.im>
parents:
8046
diff
changeset
|
102 | (incorrect password, etc.) */ |
| 6393 | 103 | guint disconnect_timeout; /**< Timer used for nasty stack tricks */ |
| 5563 | 104 | }; |
| 105 | ||
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
106 | #ifdef __cplusplus |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
107 | extern "C" { |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
108 | #endif |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
109 | |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
110 | /**************************************************************************/ |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
111 | /** @name Connection API */ |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
112 | /**************************************************************************/ |
|
6488
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
113 | /*@{*/ |
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
114 | |
| 5563 | 115 | /** |
| 116 | * Creates a connection to the specified account. | |
| 117 | * | |
| 118 | * @param account The account the connection should be connecting to. | |
| 119 | * | |
| 120 | * @return The gaim connection. | |
| 121 | */ | |
| 122 | GaimConnection *gaim_connection_new(GaimAccount *account); | |
| 123 | ||
| 124 | /** | |
| 125 | * Destroys and closes a gaim connection. | |
| 126 | * | |
| 127 | * @param gc The gaim connection to destroy. | |
| 128 | */ | |
| 129 | void gaim_connection_destroy(GaimConnection *gc); | |
| 130 | ||
| 131 | /** | |
|
10272
29aff2eb9290
[gaim-migrate @ 11421]
Mark Doliner <markdoliner@pidgin.im>
parents:
10021
diff
changeset
|
132 | * Logs in to this connection. |
| 5563 | 133 | * |
|
10272
29aff2eb9290
[gaim-migrate @ 11421]
Mark Doliner <markdoliner@pidgin.im>
parents:
10021
diff
changeset
|
134 | * @param gc The connection to log in. |
| 10400 | 135 | * @param status The status to login to. |
| 5563 | 136 | * |
| 137 | * @see gaim_connection_disconnect() | |
| 138 | */ | |
| 10400 | 139 | void gaim_connection_connect(GaimConnection *gc, GaimStatus *status); |
| 5563 | 140 | |
| 141 | /** | |
| 6581 | 142 | * Registers a connection. |
| 143 | * | |
| 144 | * @param gc The connection to register. | |
| 145 | */ | |
| 146 | void gaim_connection_register(GaimConnection *gc); | |
| 147 | ||
| 148 | /** | |
|
10272
29aff2eb9290
[gaim-migrate @ 11421]
Mark Doliner <markdoliner@pidgin.im>
parents:
10021
diff
changeset
|
149 | * Logs out of this connection. |
|
6583
198cb8cc465c
[gaim-migrate @ 7105]
Christian Hammond <chipx86@chipx86.com>
parents:
6581
diff
changeset
|
150 | * |
|
10272
29aff2eb9290
[gaim-migrate @ 11421]
Mark Doliner <markdoliner@pidgin.im>
parents:
10021
diff
changeset
|
151 | * @param gc The connection to log out. |
| 5563 | 152 | * |
| 153 | * @see gaim_connection_connect() | |
| 154 | */ | |
| 155 | void gaim_connection_disconnect(GaimConnection *gc); | |
| 156 | ||
| 157 | /** | |
| 158 | * Sets the connection state. | |
| 159 | * | |
| 160 | * @param gc The connection. | |
| 161 | * @param state The connection state. | |
| 162 | */ | |
| 163 | void gaim_connection_set_state(GaimConnection *gc, GaimConnectionState state); | |
| 164 | ||
| 165 | /** | |
| 166 | * Sets the connection's account. | |
| 167 | * | |
| 168 | * @param gc The connection. | |
| 169 | * @param account The account. | |
| 170 | */ | |
| 171 | void gaim_connection_set_account(GaimConnection *gc, GaimAccount *account); | |
| 172 | ||
| 173 | /** | |
| 174 | * Sets the connection's displayed name. | |
| 175 | * | |
| 176 | * @param gc The connection. | |
| 177 | * @param name The displayed name. | |
| 178 | */ | |
| 179 | void gaim_connection_set_display_name(GaimConnection *gc, const char *name); | |
| 180 | ||
| 181 | /** | |
| 182 | * Returns the connection state. | |
| 183 | * | |
| 184 | * @param gc The connection. | |
| 185 | * | |
| 186 | * @return The connection state. | |
| 187 | */ | |
| 188 | GaimConnectionState gaim_connection_get_state(const GaimConnection *gc); | |
| 189 | ||
| 190 | /** | |
|
9019
b9a333b36763
[gaim-migrate @ 9795]
Mark Doliner <markdoliner@pidgin.im>
parents:
8735
diff
changeset
|
191 | * Returns TRUE if the account is connected, otherwise returns FALSE. |
|
b9a333b36763
[gaim-migrate @ 9795]
Mark Doliner <markdoliner@pidgin.im>
parents:
8735
diff
changeset
|
192 | * |
|
b9a333b36763
[gaim-migrate @ 9795]
Mark Doliner <markdoliner@pidgin.im>
parents:
8735
diff
changeset
|
193 | * @return TRUE if the account is connected, otherwise returns FALSE. |
|
b9a333b36763
[gaim-migrate @ 9795]
Mark Doliner <markdoliner@pidgin.im>
parents:
8735
diff
changeset
|
194 | */ |
|
b9a333b36763
[gaim-migrate @ 9795]
Mark Doliner <markdoliner@pidgin.im>
parents:
8735
diff
changeset
|
195 | #define GAIM_CONNECTION_IS_CONNECTED(gc) \ |
|
b9a333b36763
[gaim-migrate @ 9795]
Mark Doliner <markdoliner@pidgin.im>
parents:
8735
diff
changeset
|
196 | (gc->state == GAIM_CONNECTED) |
|
b9a333b36763
[gaim-migrate @ 9795]
Mark Doliner <markdoliner@pidgin.im>
parents:
8735
diff
changeset
|
197 | |
|
b9a333b36763
[gaim-migrate @ 9795]
Mark Doliner <markdoliner@pidgin.im>
parents:
8735
diff
changeset
|
198 | /** |
| 5563 | 199 | * Returns the connection's account. |
| 200 | * | |
| 201 | * @param gc The connection. | |
| 202 | * | |
| 203 | * @return The connection's account. | |
| 204 | */ | |
| 205 | GaimAccount *gaim_connection_get_account(const GaimConnection *gc); | |
| 206 | ||
| 207 | /** | |
| 208 | * Returns the connection's displayed name. | |
| 209 | * | |
| 210 | * @param gc The connection. | |
| 211 | * | |
| 212 | * @return The connection's displayed name. | |
| 213 | */ | |
| 214 | const char *gaim_connection_get_display_name(const GaimConnection *gc); | |
| 215 | ||
| 216 | /** | |
| 217 | * Updates the connection progress. | |
| 218 | * | |
| 219 | * @param gc The connection. | |
| 220 | * @param text Information on the current step. | |
| 221 | * @param step The current step. | |
| 222 | * @param count The total number of steps. | |
| 223 | */ | |
| 224 | void gaim_connection_update_progress(GaimConnection *gc, const char *text, | |
| 225 | size_t step, size_t count); | |
| 226 | ||
| 227 | /** | |
|
5571
b709464f507e
[gaim-migrate @ 5973]
Christian Hammond <chipx86@chipx86.com>
parents:
5564
diff
changeset
|
228 | * Displays a connection-specific notice. |
|
b709464f507e
[gaim-migrate @ 5973]
Christian Hammond <chipx86@chipx86.com>
parents:
5564
diff
changeset
|
229 | * |
|
b709464f507e
[gaim-migrate @ 5973]
Christian Hammond <chipx86@chipx86.com>
parents:
5564
diff
changeset
|
230 | * @param gc The connection. |
|
b709464f507e
[gaim-migrate @ 5973]
Christian Hammond <chipx86@chipx86.com>
parents:
5564
diff
changeset
|
231 | * @param text The notice text. |
|
b709464f507e
[gaim-migrate @ 5973]
Christian Hammond <chipx86@chipx86.com>
parents:
5564
diff
changeset
|
232 | */ |
|
b709464f507e
[gaim-migrate @ 5973]
Christian Hammond <chipx86@chipx86.com>
parents:
5564
diff
changeset
|
233 | void gaim_connection_notice(GaimConnection *gc, const char *text); |
|
b709464f507e
[gaim-migrate @ 5973]
Christian Hammond <chipx86@chipx86.com>
parents:
5564
diff
changeset
|
234 | |
|
b709464f507e
[gaim-migrate @ 5973]
Christian Hammond <chipx86@chipx86.com>
parents:
5564
diff
changeset
|
235 | /** |
|
5564
1779a1bfbdb8
[gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
236 | * Closes a connection with an error. |
|
1779a1bfbdb8
[gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
237 | * |
|
1779a1bfbdb8
[gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
238 | * @param gc The connection. |
|
1779a1bfbdb8
[gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
239 | * @param reason The error text. |
|
1779a1bfbdb8
[gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
240 | */ |
|
1779a1bfbdb8
[gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
241 | void gaim_connection_error(GaimConnection *gc, const char *reason); |
|
1779a1bfbdb8
[gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
242 | |
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
243 | /*@}*/ |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
244 | |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
245 | /**************************************************************************/ |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
246 | /** @name Connections API */ |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
247 | /**************************************************************************/ |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
248 | /*@{*/ |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
249 | |
|
5564
1779a1bfbdb8
[gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
250 | /** |
| 5563 | 251 | * Disconnects from all connections. |
| 252 | */ | |
| 253 | void gaim_connections_disconnect_all(void); | |
| 254 | ||
| 255 | /** | |
|
10352
802e7ab5b838
[gaim-migrate @ 11569]
Mark Doliner <markdoliner@pidgin.im>
parents:
10272
diff
changeset
|
256 | * Returns a list of all active connections. This does not |
|
802e7ab5b838
[gaim-migrate @ 11569]
Mark Doliner <markdoliner@pidgin.im>
parents:
10272
diff
changeset
|
257 | * include connections that are in the process of connecting. |
| 5563 | 258 | * |
| 259 | * @return A list of all active connections. | |
| 260 | */ | |
| 261 | GList *gaim_connections_get_all(void); | |
| 262 | ||
|
5564
1779a1bfbdb8
[gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
263 | /** |
|
1779a1bfbdb8
[gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
264 | * Returns a list of all connections in the process of connecting. |
|
1779a1bfbdb8
[gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
265 | * |
|
1779a1bfbdb8
[gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
266 | * @return A list of connecting connections. |
|
1779a1bfbdb8
[gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
267 | */ |
|
1779a1bfbdb8
[gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
268 | GList *gaim_connections_get_connecting(void); |
|
1779a1bfbdb8
[gaim-migrate @ 5966]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
269 | |
| 9221 | 270 | /** |
| 271 | * Checks if gc is still a valid pointer to a gc. | |
| 272 | * | |
| 273 | * @return @c TRUE if gc is valid. | |
| 274 | */ | |
| 275 | #define GAIM_CONNECTION_IS_VALID(gc) (g_list_find(gaim_connections_get_all(), (gc)) || g_list_find(gaim_connections_get_connecting(), (gc))) | |
| 276 | ||
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
277 | /*@}*/ |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
278 | |
| 5563 | 279 | /**************************************************************************/ |
|
7122
5f40c16a4ae4
[gaim-migrate @ 7689]
Christian Hammond <chipx86@chipx86.com>
parents:
7035
diff
changeset
|
280 | /** @name UI Registration Functions */ |
| 5563 | 281 | /**************************************************************************/ |
| 282 | /*@{*/ | |
| 283 | ||
| 284 | /** | |
| 285 | * Sets the UI operations structure to be used for connections. | |
| 286 | * | |
| 287 | * @param ops The UI operations structure. | |
| 288 | */ | |
|
7035
76bca80cd91d
[gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents:
6982
diff
changeset
|
289 | void gaim_connections_set_ui_ops(GaimConnectionUiOps *ops); |
| 5563 | 290 | |
| 291 | /** | |
| 292 | * Returns the UI operations structure used for connections. | |
| 293 | * | |
| 294 | * @return The UI operations structure in use. | |
| 295 | */ | |
|
7035
76bca80cd91d
[gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents:
6982
diff
changeset
|
296 | GaimConnectionUiOps *gaim_connections_get_ui_ops(void); |
| 5563 | 297 | |
| 298 | /*@}*/ | |
| 299 | ||
|
6488
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
300 | /**************************************************************************/ |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
301 | /** @name Connections Subsystem */ |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
302 | /**************************************************************************/ |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
303 | /*@{*/ |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
304 | |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
305 | /** |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
306 | * Initializes the connections subsystem. |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
307 | */ |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
308 | void gaim_connections_init(void); |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
309 | |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
310 | /** |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
311 | * Uninitializes the connections subsystem. |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
312 | */ |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
313 | void gaim_connections_uninit(void); |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
314 | |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
315 | /** |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
316 | * Returns the handle to the connections subsystem. |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
317 | * |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
318 | * @return The connections subsystem handle. |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
319 | */ |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
320 | void *gaim_connections_get_handle(void); |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
321 | |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
322 | /*@}*/ |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
323 | |
|
6a47a95e4dbb
[gaim-migrate @ 7002]
Christian Hammond <chipx86@chipx86.com>
parents:
6485
diff
changeset
|
324 | |
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
325 | #ifdef __cplusplus |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
326 | } |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
327 | #endif |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
328 | |
| 5563 | 329 | #endif /* _GAIM_CONNECTION_H_ */ |