Mercurial > pidgin
annotate src/multi.h @ 2197:8f1ca76e46f5
[gaim-migrate @ 2207]
able to send out buddy icon now (i keep typing "buggy icon" - freudian slip?). just have to be able to choose it now.
committer: Tailor Script <tailor@pidgin.im>
| author | Eric Warmenhoven <eric@warmenhoven.org> |
|---|---|
| date | Thu, 30 Aug 2001 02:37:36 +0000 |
| parents | c24595d3c364 |
| children | 5014b802eb41 |
| rev | line source |
|---|---|
| 960 | 1 /* |
| 2 * gaim | |
| 3 * | |
| 4 * Copyright (C) 1998-1999, Mark Spencer <markster@marko.net> | |
| 5 * | |
| 6 * This program is free software; you can redistribute it and/or modify | |
| 7 * it under the terms of the GNU General Public License as published by | |
| 8 * the Free Software Foundation; either version 2 of the License, or | |
| 9 * (at your option) any later version. | |
| 10 * | |
| 11 * This program is distributed in the hope that it will be useful, | |
| 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 * GNU General Public License for more details. | |
| 15 * | |
| 16 * You should have received a copy of the GNU General Public License | |
| 17 * along with this program; if not, write to the Free Software | |
| 18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
| 19 * | |
| 20 */ | |
| 21 | |
| 22 #ifndef _GAIMMULTI_H_ | |
| 23 #define _GAIMMULTI_H_ | |
| 24 | |
| 25 #include <gtk/gtk.h> | |
| 26 #include "gaim.h" | |
| 27 | |
| 28 /* ok. now the fun begins. first we create a connection structure */ | |
| 29 struct gaim_connection { | |
|
1391
d606da211acb
[gaim-migrate @ 1401]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1376
diff
changeset
|
30 int edittype; |
|
d606da211acb
[gaim-migrate @ 1401]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1376
diff
changeset
|
31 |
| 960 | 32 /* we need to do either oscar or TOC */ |
| 33 /* we make this as an int in case if we want to add more protocols later */ | |
| 34 int protocol; | |
|
981
7e231bc0018a
[gaim-migrate @ 991]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
964
diff
changeset
|
35 struct prpl *prpl; |
| 960 | 36 |
|
998
70c685de2be5
[gaim-migrate @ 1008]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
988
diff
changeset
|
37 /* all connections need an input watcher */ |
|
70c685de2be5
[gaim-migrate @ 1008]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
988
diff
changeset
|
38 int inpa; |
| 960 | 39 |
|
1030
38452403563b
[gaim-migrate @ 1040]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1002
diff
changeset
|
40 /* buddy list stuff. there is still a global groups for the buddy list, but |
|
38452403563b
[gaim-migrate @ 1040]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1002
diff
changeset
|
41 * we need to maintain our own set of buddies, and our own permit/deny lists */ |
|
38452403563b
[gaim-migrate @ 1040]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1002
diff
changeset
|
42 GSList *groups; |
|
38452403563b
[gaim-migrate @ 1040]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1002
diff
changeset
|
43 GSList *permit; |
|
38452403563b
[gaim-migrate @ 1040]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1002
diff
changeset
|
44 GSList *deny; |
|
38452403563b
[gaim-migrate @ 1040]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1002
diff
changeset
|
45 int permdeny; |
|
38452403563b
[gaim-migrate @ 1040]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1002
diff
changeset
|
46 |
|
998
70c685de2be5
[gaim-migrate @ 1008]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
988
diff
changeset
|
47 /* all connections need a list of chats, even if they don't have chat */ |
|
964
2cd7b73e2c9a
[gaim-migrate @ 974]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
960
diff
changeset
|
48 GSList *buddy_chats; |
| 960 | 49 |
|
998
70c685de2be5
[gaim-migrate @ 1008]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
988
diff
changeset
|
50 /* each connection then can have its own protocol-specific data */ |
|
70c685de2be5
[gaim-migrate @ 1008]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
988
diff
changeset
|
51 void *proto_data; |
| 960 | 52 |
|
1030
38452403563b
[gaim-migrate @ 1040]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1002
diff
changeset
|
53 struct aim_user *user; |
|
38452403563b
[gaim-migrate @ 1040]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1002
diff
changeset
|
54 |
| 960 | 55 char username[64]; |
| 56 char password[32]; | |
| 57 int options; /* same as aim_user options */ | |
|
1153
3063e6743913
[gaim-migrate @ 1163]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1089
diff
changeset
|
58 guint keepalive; |
| 960 | 59 /* stuff needed for per-connection idle times */ |
|
1153
3063e6743913
[gaim-migrate @ 1163]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1089
diff
changeset
|
60 guint idle_timer; |
| 960 | 61 time_t login_time; |
| 62 time_t lastsent; | |
| 63 int is_idle; | |
|
1995
815997c7d4f1
[gaim-migrate @ 2005]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1942
diff
changeset
|
64 time_t correction_time; |
|
988
9523b772e546
[gaim-migrate @ 998]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
981
diff
changeset
|
65 |
|
9523b772e546
[gaim-migrate @ 998]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
981
diff
changeset
|
66 /* stuff for a signin progress meter */ |
|
9523b772e546
[gaim-migrate @ 998]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
981
diff
changeset
|
67 GtkWidget *meter; |
|
9523b772e546
[gaim-migrate @ 998]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
981
diff
changeset
|
68 GtkWidget *progress; |
|
9523b772e546
[gaim-migrate @ 998]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
981
diff
changeset
|
69 GtkWidget *status; |
|
1404
96e93119268d
[gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1391
diff
changeset
|
70 |
|
96e93119268d
[gaim-migrate @ 1414]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1391
diff
changeset
|
71 char *away; |
|
1468
9db35684c68c
[gaim-migrate @ 1478]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1435
diff
changeset
|
72 int is_auto_away; |
|
1771
213607e89598
[gaim-migrate @ 1781]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1468
diff
changeset
|
73 |
|
213607e89598
[gaim-migrate @ 1781]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1468
diff
changeset
|
74 int evil; |
|
1817
b367beee6448
[gaim-migrate @ 1827]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1805
diff
changeset
|
75 gboolean wants_to_die; /* defaults to FALSE */ |
|
2153
0befa2d2e540
[gaim-migrate @ 2163]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1995
diff
changeset
|
76 |
|
0befa2d2e540
[gaim-migrate @ 2163]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1995
diff
changeset
|
77 /* email notification (MSN and Yahoo) */ |
|
0befa2d2e540
[gaim-migrate @ 2163]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1995
diff
changeset
|
78 GtkWidget *email_win; |
|
0befa2d2e540
[gaim-migrate @ 2163]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1995
diff
changeset
|
79 GtkWidget *email_label; |
|
2197
8f1ca76e46f5
[gaim-migrate @ 2207]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2170
diff
changeset
|
80 |
|
8f1ca76e46f5
[gaim-migrate @ 2207]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2170
diff
changeset
|
81 /* buddy icon file */ |
|
8f1ca76e46f5
[gaim-migrate @ 2207]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2170
diff
changeset
|
82 char *iconfile; |
| 960 | 83 }; |
| 84 | |
|
2154
cff133e0ec0c
[gaim-migrate @ 2164]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2153
diff
changeset
|
85 struct proto_user_opt { |
|
cff133e0ec0c
[gaim-migrate @ 2164]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2153
diff
changeset
|
86 char *label; |
|
cff133e0ec0c
[gaim-migrate @ 2164]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2153
diff
changeset
|
87 char *def; |
|
cff133e0ec0c
[gaim-migrate @ 2164]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2153
diff
changeset
|
88 int pos; |
|
cff133e0ec0c
[gaim-migrate @ 2164]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2153
diff
changeset
|
89 }; |
|
cff133e0ec0c
[gaim-migrate @ 2164]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2153
diff
changeset
|
90 |
|
2170
c24595d3c364
[gaim-migrate @ 2180]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2154
diff
changeset
|
91 struct proto_buddy_menu { |
|
c24595d3c364
[gaim-migrate @ 2180]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2154
diff
changeset
|
92 char *label; |
|
c24595d3c364
[gaim-migrate @ 2180]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2154
diff
changeset
|
93 void (*callback)(struct gaim_connection *, char *); |
|
c24595d3c364
[gaim-migrate @ 2180]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2154
diff
changeset
|
94 struct gaim_connection *gc; |
|
c24595d3c364
[gaim-migrate @ 2180]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2154
diff
changeset
|
95 }; |
|
c24595d3c364
[gaim-migrate @ 2180]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2154
diff
changeset
|
96 |
| 960 | 97 /* now that we have our struct, we're going to need lots of them. Maybe even a list of them. */ |
| 98 extern GSList *connections; | |
| 99 | |
|
1942
ba421d552093
[gaim-migrate @ 1952]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1817
diff
changeset
|
100 struct aim_user *new_user(const char *, int, int); |
|
1089
f0f5c10cce63
[gaim-migrate @ 1099]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1068
diff
changeset
|
101 struct gaim_connection *new_gaim_conn(struct aim_user *); |
| 960 | 102 void destroy_gaim_conn(struct gaim_connection *); |
| 103 | |
| 104 struct gaim_connection *find_gaim_conn_by_name(char *); | |
| 105 | |
| 106 void account_editor(GtkWidget *, GtkWidget *); | |
| 107 | |
|
1089
f0f5c10cce63
[gaim-migrate @ 1099]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1068
diff
changeset
|
108 void account_online(struct gaim_connection *); |
| 960 | 109 void account_offline(struct gaim_connection *); |
| 110 | |
| 111 void auto_login(); | |
| 112 | |
|
988
9523b772e546
[gaim-migrate @ 998]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
981
diff
changeset
|
113 void set_login_progress(struct gaim_connection *, float, char *); |
|
9523b772e546
[gaim-migrate @ 998]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
981
diff
changeset
|
114 void hide_login_progress(struct gaim_connection *, char *); |
|
9523b772e546
[gaim-migrate @ 998]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
981
diff
changeset
|
115 |
| 960 | 116 #endif /* _GAIMMULTI_H_ */ |
