Mercurial > pidgin.yaz
annotate src/aim.c @ 780:c714def9cebb
[gaim-migrate @ 790]
You may be a geek if...
You've ever used a computer on Friday, Saturday and Sunday of the
same weekend.
You find yourself interrupting computer store salesman to correct
something he said.
The first thing you notice when walking in a business is their
computer system. ...and offer advice on how you would change it.
You've ever mounted a magnetic tape reel.
You own any shareware.
You know more IP addresses than phone numbers.
You've ever accidentally dialed an IP address.
Your friends use you as tech support.
You've ever named a computer.
You have your local computer store on speed dial.
You can't carry on a conversation without talking about computers.
Co-workers have to E-mail you about the fire alarm to get you out of
the building.
You've ever found "stray" diskettes when doing laundry.
Your computer has it's own phone line - but your teenager doesn't.
You check the national weather service web page for current weather
conditions (rather than look out the window).
You know more URLs than street addresses.
Your pet has a web page.
You get really excited when Yahoo adds your link.
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Tue, 29 Aug 2000 03:59:01 +0000 |
parents | 531c58849b28 |
children | 4c292b3f74ea |
rev | line source |
---|---|
1 | 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 | |
349
b402a23f35df
[gaim-migrate @ 359]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
342
diff
changeset
|
22 #ifdef HAVE_CONFIG_H |
b402a23f35df
[gaim-migrate @ 359]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
342
diff
changeset
|
23 #include "../config.h" |
b402a23f35df
[gaim-migrate @ 359]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
342
diff
changeset
|
24 #endif |
1 | 25 #ifdef USE_APPLET |
26 #include "gnome_applet_mgr.h" | |
27 #include <gnome.h> | |
730
e46cc3c6ff26
[gaim-migrate @ 740]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
724
diff
changeset
|
28 #else |
e46cc3c6ff26
[gaim-migrate @ 740]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
724
diff
changeset
|
29 #ifdef USE_GNOME |
e46cc3c6ff26
[gaim-migrate @ 740]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
724
diff
changeset
|
30 #include <gnome.h> |
e46cc3c6ff26
[gaim-migrate @ 740]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
724
diff
changeset
|
31 #endif /* USE_GNOME */ |
1 | 32 #endif /* USE_APPLET */ |
395
9a436c1d128d
[gaim-migrate @ 405]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
392
diff
changeset
|
33 #ifdef GAIM_PLUGINS |
9a436c1d128d
[gaim-migrate @ 405]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
392
diff
changeset
|
34 #include <dlfcn.h> |
9a436c1d128d
[gaim-migrate @ 405]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
392
diff
changeset
|
35 #endif /* GAIM_PLUGINS */ |
1 | 36 #include <gtk/gtk.h> |
37 #include <gdk/gdkx.h> | |
216
f7e17fb767eb
[gaim-migrate @ 226]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
38 #include <gdk/gdk.h> |
1 | 39 #include <unistd.h> |
40 #include <netinet/in.h> | |
41 #include <arpa/inet.h> | |
42 #include <sys/wait.h> | |
43 #include <stdio.h> | |
44 #include <string.h> | |
45 #include <stdarg.h> | |
46 #include <stdlib.h> | |
228 | 47 #include <ctype.h> |
1 | 48 #include "gaim.h" |
49 #ifndef USE_APPLET | |
50 #include "pixmaps/logo.xpm" | |
51 #endif /* USE_APPLET */ | |
614
a3e32af35b30
[gaim-migrate @ 624]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
600
diff
changeset
|
52 #if HAVE_SIGNAL_H |
a3e32af35b30
[gaim-migrate @ 624]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
600
diff
changeset
|
53 #include <signal.h> |
a3e32af35b30
[gaim-migrate @ 624]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
600
diff
changeset
|
54 #endif |
462 | 55 #include "locale.h" |
430 | 56 #include "gtkticker.h" |
57 | |
1 | 58 static GtkWidget *name; |
59 static GtkWidget *pass; | |
60 static GtkWidget *signon; | |
61 static GtkWidget *cancel; | |
62 static GtkWidget *progress; | |
63 static GtkWidget *notice; | |
64 | |
65 GList *permit = NULL; | |
66 GList *deny = NULL; | |
67 GList *log_conversations = NULL; | |
68 GList *buddy_pounces = NULL; | |
69 GList *away_messages = NULL; | |
70 GList *groups = NULL; | |
71 GList *buddy_chats = NULL; | |
72 GList *conversations = NULL; | |
73 GList *chat_rooms = NULL; | |
74 | |
75 GtkWidget *mainwindow = NULL; | |
705
dcf672c5a1ff
[gaim-migrate @ 715]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
644
diff
changeset
|
76 GtkWidget *remember = NULL; |
1 | 77 |
430 | 78 void BuddyTickerCreateWindow( void ); |
79 | |
1 | 80 char toc_addy[16]; |
26 | 81 char *quad_addr = NULL; |
1 | 82 |
338
9d258a0aa560
[gaim-migrate @ 348]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
296
diff
changeset
|
83 gboolean running = FALSE; /* whether or not we're currently trying to sign on */ |
1 | 84 |
85 void cancel_logon(void) | |
86 { | |
87 #ifdef USE_APPLET | |
746
5a908dd5cfc4
[gaim-migrate @ 756]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
730
diff
changeset
|
88 applet_buddy_show = FALSE; |
5a908dd5cfc4
[gaim-migrate @ 756]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
730
diff
changeset
|
89 signoff(); |
757
531c58849b28
[gaim-migrate @ 767]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
746
diff
changeset
|
90 running = FALSE; |
1 | 91 gtk_widget_hide(mainwindow); |
92 #else | |
392
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
93 #ifdef GAIM_PLUGINS |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
94 GList *c; |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
95 struct gaim_plugin *p; |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
96 void (*gaim_plugin_remove)(); |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
97 char *error; |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
98 |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
99 /* first we tell those who have requested it we're quitting */ |
780
c714def9cebb
[gaim-migrate @ 790]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
757
diff
changeset
|
100 plugin_event(event_quit, 0, 0, 0); |
392
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
101 |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
102 /* then we remove everyone in a mass suicide */ |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
103 c = plugins; |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
104 while (c) { |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
105 p = (struct gaim_plugin *)c->data; |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
106 gaim_plugin_remove = dlsym(p->handle, "gaim_plugin_remove"); |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
107 if ((error = (char *)dlerror()) == NULL) |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
108 (*gaim_plugin_remove)(); |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
109 /* we don't need to worry about removing callbacks since |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
110 * there won't be any more chance to call them back :) */ |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
111 dlclose(p->handle); |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
112 g_free(p->filename); /* why do i bother? */ |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
113 g_free(p); |
403
d6f02d7f78d8
[gaim-migrate @ 413]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
395
diff
changeset
|
114 c = c->next; |
392
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
115 } |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
116 #endif /* GAIM_PLUGINS */ |
df5127560034
[gaim-migrate @ 402]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
369
diff
changeset
|
117 |
1 | 118 exit(0); |
119 #endif /* USE_APPLET */ | |
120 } | |
121 | |
122 void set_login_progress(int howfar, char *whattosay) | |
123 { | |
124 gtk_progress_bar_update(GTK_PROGRESS_BAR(progress), | |
125 ((float)howfar / (float)LOGIN_STEPS)); | |
126 gtk_statusbar_pop(GTK_STATUSBAR(notice), 1); | |
127 gtk_statusbar_push(GTK_STATUSBAR(notice), 1, whattosay); | |
128 | |
129 while (gtk_events_pending()) | |
130 gtk_main_iteration(); | |
131 | |
132 /* Why do I need these? */ | |
133 usleep(10); | |
134 while (gtk_events_pending()) | |
135 gtk_main_iteration(); | |
136 | |
137 } | |
138 | |
139 void hide_login_progress(char *why) | |
140 { | |
141 gtk_progress_bar_update(GTK_PROGRESS_BAR(progress), | |
142 0); | |
143 gtk_statusbar_pop(GTK_STATUSBAR(notice), 1); | |
144 gtk_statusbar_push(GTK_STATUSBAR(notice), 1, why); | |
145 | |
146 while (gtk_events_pending()) | |
147 gtk_main_iteration(); | |
148 | |
149 /* Why do I need these? */ | |
150 usleep(10); | |
151 while (gtk_events_pending()) | |
152 gtk_main_iteration(); | |
153 } | |
154 | |
109
45bcfa3b584c
[gaim-migrate @ 119]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
107
diff
changeset
|
155 static int snd_tmout; |
133
e277d5f0c1dd
[gaim-migrate @ 143]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
109
diff
changeset
|
156 int logins_not_muted = 1; |
109
45bcfa3b584c
[gaim-migrate @ 119]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
107
diff
changeset
|
157 static void sound_timeout() { |
133
e277d5f0c1dd
[gaim-migrate @ 143]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
109
diff
changeset
|
158 logins_not_muted = 1; |
109
45bcfa3b584c
[gaim-migrate @ 119]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
107
diff
changeset
|
159 gtk_timeout_remove(snd_tmout); |
45bcfa3b584c
[gaim-migrate @ 119]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
107
diff
changeset
|
160 } |
45bcfa3b584c
[gaim-migrate @ 119]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
107
diff
changeset
|
161 |
228 | 162 char g_screenname[ 64 ]; /* gotta be enough */ |
163 | |
1 | 164 void dologin(GtkWidget *widget, GtkWidget *w) |
165 { | |
166 char *username = gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(name)->entry)); | |
167 char *password = gtk_entry_get_text(GTK_ENTRY(pass)); | |
228 | 168 int i; |
1 | 169 |
170 if (query_state() != STATE_OFFLINE) | |
171 return; | |
172 | |
173 if (!strlen(username)) { | |
355 | 174 hide_login_progress(_("Please enter your logon")); |
1 | 175 return; |
176 } | |
177 if (!strlen(password)) { | |
355 | 178 hide_login_progress(_("You must give your password")); |
1 | 179 return; |
180 } | |
181 | |
228 | 182 /* save screenname away for cache file use */ |
183 | |
184 strcpy( g_screenname, username ); | |
185 | |
186 /* fold cache screen name file to upper case to avoid problems | |
187 finding file later if user uses different case at login time */ | |
188 | |
189 for ( i = 0; i < strlen( g_screenname ); i++ ) | |
190 g_screenname[i] = toupper( g_screenname[i] ); | |
191 | |
1 | 192 #ifdef USE_APPLET |
746
5a908dd5cfc4
[gaim-migrate @ 756]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
730
diff
changeset
|
193 set_user_state(signing_on); |
1 | 194 #endif /* USE_APPLET */ |
195 | |
84 | 196 if (running) return; |
197 running = TRUE; | |
1 | 198 |
84 | 199 if (serv_login(username, password) < 0) { |
200 running = FALSE; | |
1 | 201 return; |
84 | 202 } |
423
0d4e80bdb96b
[gaim-migrate @ 433]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
410
diff
changeset
|
203 |
0d4e80bdb96b
[gaim-migrate @ 433]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
410
diff
changeset
|
204 if (!USE_OSCAR) /* serv_login will set up USE_OSCAR */ |
0d4e80bdb96b
[gaim-migrate @ 433]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
410
diff
changeset
|
205 gaim_setup(); |
265
59f1748b09a6
[gaim-migrate @ 275]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
253
diff
changeset
|
206 } |
1 | 207 |
270
cfa39d39dec6
[gaim-migrate @ 280]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
265
diff
changeset
|
208 void auth_failed() { |
cfa39d39dec6
[gaim-migrate @ 280]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
265
diff
changeset
|
209 running = FALSE; |
cfa39d39dec6
[gaim-migrate @ 280]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
265
diff
changeset
|
210 } |
cfa39d39dec6
[gaim-migrate @ 280]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
265
diff
changeset
|
211 |
265
59f1748b09a6
[gaim-migrate @ 275]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
253
diff
changeset
|
212 /* we need to do this for Oscar because serv_login only starts the login |
59f1748b09a6
[gaim-migrate @ 275]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
253
diff
changeset
|
213 * process, it doesn't end there. gaim_setup will be called later from |
59f1748b09a6
[gaim-migrate @ 275]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
253
diff
changeset
|
214 * oscar.c, after the buddy list is made and serv_finish_login is called */ |
59f1748b09a6
[gaim-migrate @ 275]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
253
diff
changeset
|
215 void gaim_setup() { |
109
45bcfa3b584c
[gaim-migrate @ 119]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
107
diff
changeset
|
216 if (sound_options & OPT_SOUND_LOGIN && |
45bcfa3b584c
[gaim-migrate @ 119]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
107
diff
changeset
|
217 sound_options & OPT_SOUND_SILENT_SIGNON) { |
133
e277d5f0c1dd
[gaim-migrate @ 143]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
109
diff
changeset
|
218 logins_not_muted = 0; |
109
45bcfa3b584c
[gaim-migrate @ 119]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
107
diff
changeset
|
219 snd_tmout = gtk_timeout_add(10000, (GtkFunction)sound_timeout, |
45bcfa3b584c
[gaim-migrate @ 119]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
107
diff
changeset
|
220 NULL); |
45bcfa3b584c
[gaim-migrate @ 119]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
107
diff
changeset
|
221 } |
45bcfa3b584c
[gaim-migrate @ 119]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
107
diff
changeset
|
222 |
84 | 223 #ifdef USE_APPLET |
746
5a908dd5cfc4
[gaim-migrate @ 756]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
730
diff
changeset
|
224 set_user_state(online); |
5a908dd5cfc4
[gaim-migrate @ 756]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
730
diff
changeset
|
225 applet_widget_unregister_callback(APPLET_WIDGET(applet),"signon"); |
5a908dd5cfc4
[gaim-migrate @ 756]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
730
diff
changeset
|
226 applet_widget_register_callback(APPLET_WIDGET(applet), |
5a908dd5cfc4
[gaim-migrate @ 756]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
730
diff
changeset
|
227 "signoff", |
5a908dd5cfc4
[gaim-migrate @ 756]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
730
diff
changeset
|
228 _("Signoff"), |
5a908dd5cfc4
[gaim-migrate @ 756]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
730
diff
changeset
|
229 signoff, |
5a908dd5cfc4
[gaim-migrate @ 756]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
730
diff
changeset
|
230 NULL); |
265
59f1748b09a6
[gaim-migrate @ 275]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
253
diff
changeset
|
231 #endif /* USE_APPLET */ |
94
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
85
diff
changeset
|
232 |
780
c714def9cebb
[gaim-migrate @ 790]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
757
diff
changeset
|
233 plugin_event(event_signon, 0, 0, 0); |
94
9f6ce50ffb78
[gaim-migrate @ 104]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
85
diff
changeset
|
234 |
84 | 235 running = FALSE; |
236 return; | |
1 | 237 } |
238 | |
239 | |
240 | |
241 | |
242 void doenter(GtkWidget *widget, GtkWidget *w) | |
243 { | |
244 if (widget == name) { | |
245 gtk_entry_set_text(GTK_ENTRY(pass),""); | |
246 gtk_entry_select_region(GTK_ENTRY(GTK_COMBO(name)->entry), 0, 0); | |
158
e9414f13d8b7
[gaim-migrate @ 168]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
157
diff
changeset
|
247 gtk_widget_grab_focus(pass); |
1 | 248 } else if (widget == pass) { |
158
e9414f13d8b7
[gaim-migrate @ 168]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
157
diff
changeset
|
249 gtk_widget_grab_focus(signon); |
1 | 250 } |
251 | |
252 } | |
253 | |
254 | |
255 static void combo_changed(GtkWidget *w, GtkWidget *combo) | |
256 { | |
158
e9414f13d8b7
[gaim-migrate @ 168]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
157
diff
changeset
|
257 char *txt = gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(combo)->entry)); |
1 | 258 struct aim_user *u; |
259 | |
25 | 260 if (!(general_options & OPT_GEN_REMEMBER_PASS)) { |
1 | 261 return; |
25 | 262 } |
263 | |
1 | 264 u = find_user(txt); |
265 | |
266 if (u != NULL) { | |
267 gtk_entry_set_text(GTK_ENTRY(pass), u->password); | |
268 } else { | |
269 gtk_entry_set_text(GTK_ENTRY(pass), ""); | |
270 } | |
25 | 271 |
1 | 272 return; |
273 } | |
274 | |
275 static GList *combo_user_names() | |
276 { | |
277 GList *usr = aim_users; | |
278 GList *tmp = NULL; | |
279 struct aim_user *u; | |
280 | |
281 | |
282 if (!usr) | |
283 return g_list_append(NULL, "<unknown>"); | |
284 | |
285 while(usr) { | |
286 u = (struct aim_user *)usr->data; | |
287 tmp = g_list_append(tmp, g_strdup(u->username)); | |
288 usr = usr->next; | |
289 | |
290 } | |
291 | |
292 return tmp; | |
293 } | |
294 | |
295 | |
296 | |
297 void show_login() | |
298 { | |
299 GtkWidget *options; | |
96
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
300 #ifdef GAIM_PLUGINS |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
301 GtkWidget *plugs; |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
302 #endif |
1 | 303 GtkWidget *reg; |
304 GtkWidget *bbox; | |
96
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
305 GtkWidget *hbox; |
1 | 306 GtkWidget *sbox; |
307 GtkWidget *label; | |
308 GtkWidget *table; | |
309 | |
310 #ifndef USE_APPLET | |
311 GtkWidget *pmw; | |
312 GdkPixmap *pm; | |
313 GtkStyle *style; | |
314 GdkBitmap *mask; | |
315 #endif /* USE_APPLET */ | |
316 | |
317 if (mainwindow) { | |
318 gtk_widget_show(mainwindow); | |
705
dcf672c5a1ff
[gaim-migrate @ 715]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
644
diff
changeset
|
319 if (!(general_options & OPT_GEN_REMEMBER_PASS)) |
dcf672c5a1ff
[gaim-migrate @ 715]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
644
diff
changeset
|
320 gtk_entry_set_text(GTK_ENTRY(pass), ""); |
1 | 321 return; |
322 } | |
430 | 323 |
1 | 324 mainwindow = gtk_window_new(GTK_WINDOW_TOPLEVEL); |
621 | 325 gtk_widget_realize(mainwindow); |
622 | 326 signon = gtk_button_new_with_label(_("Signon")); |
327 cancel = gtk_button_new_with_label(_("Cancel")); | |
328 reg = gtk_button_new_with_label(_("Register")); | |
329 options = gtk_button_new_with_label(_("Options")); | |
96
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
330 #ifdef GAIM_PLUGINS |
622 | 331 plugs = gtk_button_new_with_label(_("Plugins")); |
96
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
332 #endif |
1 | 333 table = gtk_table_new(8, 2, FALSE); |
334 name = gtk_combo_new(); | |
335 pass = gtk_entry_new(); | |
336 notice = gtk_statusbar_new(); | |
621 | 337 progress = gtk_progress_bar_new(); |
1 | 338 |
621 | 339 gtk_combo_set_popdown_strings(GTK_COMBO(name), combo_user_names()); |
1 | 340 |
535
f03f041c1aa9
[gaim-migrate @ 545]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
508
diff
changeset
|
341 if (display_options & OPT_DISP_COOL_LOOK) |
f03f041c1aa9
[gaim-migrate @ 545]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
508
diff
changeset
|
342 { |
f03f041c1aa9
[gaim-migrate @ 545]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
508
diff
changeset
|
343 gtk_button_set_relief(GTK_BUTTON(signon), GTK_RELIEF_NONE); |
f03f041c1aa9
[gaim-migrate @ 545]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
508
diff
changeset
|
344 gtk_button_set_relief(GTK_BUTTON(cancel), GTK_RELIEF_NONE); |
f03f041c1aa9
[gaim-migrate @ 545]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
508
diff
changeset
|
345 gtk_button_set_relief(GTK_BUTTON(reg), GTK_RELIEF_NONE); |
f03f041c1aa9
[gaim-migrate @ 545]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
508
diff
changeset
|
346 gtk_button_set_relief(GTK_BUTTON(options), GTK_RELIEF_NONE); |
600
01777a942034
[gaim-migrate @ 610]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
583
diff
changeset
|
347 #ifdef GAIM_PLUGINS |
535
f03f041c1aa9
[gaim-migrate @ 545]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
508
diff
changeset
|
348 gtk_button_set_relief(GTK_BUTTON(plugs), GTK_RELIEF_NONE); |
600
01777a942034
[gaim-migrate @ 610]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
583
diff
changeset
|
349 #endif |
535
f03f041c1aa9
[gaim-migrate @ 545]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
508
diff
changeset
|
350 } |
f03f041c1aa9
[gaim-migrate @ 545]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
508
diff
changeset
|
351 |
1 | 352 /* Make the buttons do stuff */ |
353 /* Clicking the button initiates a login */ | |
354 gtk_signal_connect(GTK_OBJECT(signon), "clicked", | |
355 GTK_SIGNAL_FUNC(dologin), mainwindow); | |
356 gtk_signal_connect(GTK_OBJECT(cancel), "clicked", | |
357 GTK_SIGNAL_FUNC(cancel_logon), mainwindow); | |
358 /* Allow user to change prefs before logging in */ | |
359 gtk_signal_connect(GTK_OBJECT(options), "clicked", | |
360 GTK_SIGNAL_FUNC(show_prefs), NULL); | |
96
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
361 #ifdef GAIM_PLUGINS |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
362 /* Allow user to control plugins before logging in */ |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
363 gtk_signal_connect(GTK_OBJECT(plugs), "clicked", |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
364 GTK_SIGNAL_FUNC(show_plugins), NULL); |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
365 #endif |
1 | 366 |
367 /* Register opens the right URL */ | |
368 gtk_signal_connect(GTK_OBJECT(reg), "clicked", | |
286 | 369 GTK_SIGNAL_FUNC(open_url), "http://aim.aol.com/aimnew/Aim/register.adp?promo=106723&pageset=Aim&client=no"); |
1 | 370 /* Enter in the username clears the password and sets |
371 the pointer in the password field */ | |
372 gtk_signal_connect(GTK_OBJECT(GTK_COMBO(name)->entry), "activate", | |
373 GTK_SIGNAL_FUNC(doenter), mainwindow); | |
374 | |
375 gtk_signal_connect(GTK_OBJECT(GTK_COMBO(name)->entry), "changed", | |
376 GTK_SIGNAL_FUNC(combo_changed), name); | |
377 | |
378 gtk_signal_connect(GTK_OBJECT(pass), "activate", | |
379 GTK_SIGNAL_FUNC(doenter), mainwindow); | |
380 gtk_signal_connect(GTK_OBJECT(mainwindow), "delete_event", | |
381 GTK_SIGNAL_FUNC(cancel_logon), mainwindow); | |
382 /* Homogenous spacing, 10 padding */ | |
383 bbox = gtk_hbox_new(TRUE, 10); | |
96
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
384 hbox = gtk_hbox_new(TRUE, 10); |
621 | 385 sbox = gtk_vbox_new(TRUE, 5); |
1 | 386 |
622 | 387 gtk_box_pack_start(GTK_BOX(bbox), reg, TRUE, TRUE, 0); |
1 | 388 gtk_box_pack_start(GTK_BOX(bbox), cancel, TRUE, TRUE, 0); |
389 gtk_box_pack_start(GTK_BOX(bbox), signon, TRUE, TRUE, 0); | |
96
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
390 |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
391 gtk_box_pack_start(GTK_BOX(hbox), options, TRUE, TRUE, 0); |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
392 #ifdef GAIM_PLUGINS |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
393 gtk_box_pack_start(GTK_BOX(hbox), plugs, TRUE, TRUE, 0); |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
394 #endif |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
395 |
1 | 396 gtk_box_pack_start(GTK_BOX(sbox), bbox, TRUE, TRUE, 0); |
96
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
397 gtk_box_pack_start(GTK_BOX(sbox), hbox, TRUE, TRUE, 0); |
1 | 398 |
399 /* Labels for selectors and text boxes */ | |
400 #if 0 | |
401 label = gtk_label_new("TOC: "); | |
402 gtk_table_attach(GTK_TABLE(table), label, 0,1,1,2,0,0, 5, 5); | |
403 gtk_widget_show(label); | |
404 #endif | |
350
fd3cc0a28d5d
[gaim-migrate @ 360]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
349
diff
changeset
|
405 label = gtk_label_new(_("Screen Name: ")); |
1 | 406 gtk_table_attach(GTK_TABLE(table), label, 0,1,2,3,0,0, 5, 5); |
407 gtk_widget_show(label); | |
350
fd3cc0a28d5d
[gaim-migrate @ 360]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
349
diff
changeset
|
408 label = gtk_label_new(_("Password: ")); |
1 | 409 gtk_table_attach(GTK_TABLE(table), label, 0,1,3,4,0,0, 5, 5); |
410 gtk_widget_show(label); | |
350
fd3cc0a28d5d
[gaim-migrate @ 360]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
349
diff
changeset
|
411 remember = gtk_check_button_new_with_label(_("Remember Password")); |
1 | 412 gtk_table_attach(GTK_TABLE(table), remember, 0,2,4,5,0,0, 5, 5); |
413 gtk_widget_show(remember); | |
414 | |
415 gtk_widget_show(options); | |
96
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
416 #ifdef GAIM_PLUGINS |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
417 gtk_widget_show(plugs); |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
418 #endif |
1 | 419 |
420 /* Adjust sizes of inputs */ | |
621 | 421 gtk_widget_set_usize(name,100,0); |
422 gtk_widget_set_usize(pass,100,0); | |
1 | 423 |
424 | |
425 /* Status and label */ | |
426 gtk_widget_show(notice); | |
427 | |
428 gtk_widget_set_usize(progress,150,0); | |
429 | |
430 gtk_widget_show(progress); | |
431 | |
432 gtk_table_attach(GTK_TABLE(table), progress, 0, 2, 6, 7, 0, 0, 5, 5); | |
433 gtk_widget_set_usize(GTK_STATUSBAR(notice)->label, 150, 0); | |
434 gtk_table_attach(GTK_TABLE(table), notice, 0, 2, 8, 9, 0, 0, 5, 5); | |
435 | |
436 /* Attach the buttons at the bottom */ | |
437 gtk_widget_show(signon); | |
438 gtk_widget_show(cancel); | |
439 gtk_widget_show(reg); | |
440 gtk_widget_show(bbox); | |
96
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
441 gtk_widget_show(hbox); |
1 | 442 gtk_widget_show(sbox); |
443 gtk_table_attach(GTK_TABLE(table), sbox, 0,2,7,8,0,0, 5, 5); | |
444 | |
445 /* Text fields */ | |
446 | |
447 gtk_table_attach(GTK_TABLE(table),name,1,2,2,3,0,0,5,5); | |
448 gtk_widget_show(name); | |
449 gtk_table_attach(GTK_TABLE(table),pass,1,2,3,4,0,0,5,5); | |
450 gtk_entry_set_visibility(GTK_ENTRY(pass), FALSE); | |
451 gtk_widget_show(pass); | |
452 | |
453 gtk_container_border_width(GTK_CONTAINER(sbox), 10); | |
454 | |
455 gtk_container_add(GTK_CONTAINER(mainwindow),table ); | |
456 | |
457 gtk_widget_show(table); | |
355 | 458 gtk_window_set_title(GTK_WINDOW(mainwindow),_("Gaim - Login")); |
1 | 459 |
460 | |
461 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(remember), (general_options & OPT_GEN_REMEMBER_PASS)); | |
423
0d4e80bdb96b
[gaim-migrate @ 433]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
410
diff
changeset
|
462 |
1 | 463 if (current_user) { |
508
1181582366f5
[gaim-migrate @ 518]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
462
diff
changeset
|
464 sprintf(debug_buff, "Current user is %s\n", current_user->username); |
1181582366f5
[gaim-migrate @ 518]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
462
diff
changeset
|
465 debug_print(debug_buff); |
1181582366f5
[gaim-migrate @ 518]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
462
diff
changeset
|
466 gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(name)->entry), current_user->username); |
158
e9414f13d8b7
[gaim-migrate @ 168]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
157
diff
changeset
|
467 if ((general_options & OPT_GEN_REMEMBER_PASS)) { |
e9414f13d8b7
[gaim-migrate @ 168]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
157
diff
changeset
|
468 combo_changed(NULL, name); |
157
aad89d9bce85
[gaim-migrate @ 167]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
155
diff
changeset
|
469 gtk_widget_grab_focus(signon); |
158
e9414f13d8b7
[gaim-migrate @ 168]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
157
diff
changeset
|
470 } else { |
157
aad89d9bce85
[gaim-migrate @ 167]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
155
diff
changeset
|
471 gtk_widget_grab_focus(pass); |
158
e9414f13d8b7
[gaim-migrate @ 168]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
157
diff
changeset
|
472 } |
e9414f13d8b7
[gaim-migrate @ 168]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
157
diff
changeset
|
473 } else { |
157
aad89d9bce85
[gaim-migrate @ 167]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
155
diff
changeset
|
474 gtk_widget_grab_focus(name); |
158
e9414f13d8b7
[gaim-migrate @ 168]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
157
diff
changeset
|
475 } |
1 | 476 |
477 | |
478 gtk_signal_connect(GTK_OBJECT(remember), "clicked", GTK_SIGNAL_FUNC(set_general_option), (int *)OPT_GEN_REMEMBER_PASS); | |
479 | |
480 | |
481 gtk_widget_realize(mainwindow); | |
482 | |
483 #ifndef USE_APPLET | |
484 /* Logo at the top */ | |
485 style = gtk_widget_get_style(mainwindow); | |
486 pm = gdk_pixmap_create_from_xpm_d(mainwindow->window, &mask, | |
487 &style->bg[GTK_STATE_NORMAL], (gchar **)aol_logo); | |
488 pmw = gtk_pixmap_new( pm, mask); | |
489 gtk_table_attach(GTK_TABLE(table), pmw, 0,2,0,1,0,0,5,5); | |
490 gtk_widget_show(pmw); | |
644
b3900e312d8e
[gaim-migrate @ 654]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
636
diff
changeset
|
491 gdk_pixmap_unref(pm); |
1 | 492 #endif /* USE_APPLET */ |
493 | |
494 | |
495 aol_icon(mainwindow->window); | |
496 #ifndef _WIN32 | |
497 gdk_window_set_group(mainwindow->window, mainwindow->window); | |
498 #endif | |
499 | |
500 | |
501 gtk_widget_show(mainwindow); | |
436 | 502 |
503 SetTickerPrefs(); | |
1 | 504 |
505 if((general_options & OPT_GEN_AUTO_LOGIN) && | |
506 (general_options & OPT_GEN_REMEMBER_PASS)) { | |
507 dologin(signon, NULL); | |
508 } | |
509 } | |
510 | |
200
bc117fbcf527
[gaim-migrate @ 210]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
184
diff
changeset
|
511 extern void show_debug(GtkObject *); |
180 | 512 |
614
a3e32af35b30
[gaim-migrate @ 624]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
600
diff
changeset
|
513 #if HAVE_SIGNAL_H |
a3e32af35b30
[gaim-migrate @ 624]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
600
diff
changeset
|
514 void sighandler(int sig) |
a3e32af35b30
[gaim-migrate @ 624]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
600
diff
changeset
|
515 { |
a3e32af35b30
[gaim-migrate @ 624]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
600
diff
changeset
|
516 fprintf(stderr, "God damn, I tripped.\n"); |
a3e32af35b30
[gaim-migrate @ 624]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
600
diff
changeset
|
517 exit(11); /* signal 11 */ |
a3e32af35b30
[gaim-migrate @ 624]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
600
diff
changeset
|
518 } |
a3e32af35b30
[gaim-migrate @ 624]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
600
diff
changeset
|
519 #endif |
a3e32af35b30
[gaim-migrate @ 624]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
600
diff
changeset
|
520 |
1 | 521 int main(int argc, char *argv[]) |
522 { | |
369
cf895313fc50
[gaim-migrate @ 379]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
357
diff
changeset
|
523 #ifdef ENABLE_NLS |
cf895313fc50
[gaim-migrate @ 379]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
357
diff
changeset
|
524 bindtextdomain(PACKAGE, LOCALEDIR); |
cf895313fc50
[gaim-migrate @ 379]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
357
diff
changeset
|
525 textdomain(PACKAGE); |
cf895313fc50
[gaim-migrate @ 379]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
357
diff
changeset
|
526 #endif |
cf895313fc50
[gaim-migrate @ 379]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
357
diff
changeset
|
527 |
614
a3e32af35b30
[gaim-migrate @ 624]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
600
diff
changeset
|
528 #if HAVE_SIGNAL_H |
a3e32af35b30
[gaim-migrate @ 624]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
600
diff
changeset
|
529 /* Let's not violate any PLA's!!!! */ |
636
072200640327
[gaim-migrate @ 646]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
624
diff
changeset
|
530 /* signal(SIGSEGV, sighandler); */ |
614
a3e32af35b30
[gaim-migrate @ 624]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
600
diff
changeset
|
531 #endif |
a3e32af35b30
[gaim-migrate @ 624]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
600
diff
changeset
|
532 |
546
e312b8b9bee5
[gaim-migrate @ 556]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
535
diff
changeset
|
533 if (argc > 1 && !strcmp(argv[1], "--version")) { |
e312b8b9bee5
[gaim-migrate @ 556]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
535
diff
changeset
|
534 gtk_init(&argc, &argv); |
e312b8b9bee5
[gaim-migrate @ 556]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
535
diff
changeset
|
535 set_defaults(); /* needed for open_url_nw */ |
e312b8b9bee5
[gaim-migrate @ 556]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
535
diff
changeset
|
536 load_prefs(); |
e312b8b9bee5
[gaim-migrate @ 556]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
535
diff
changeset
|
537 show_about(0, (void *)1); |
e312b8b9bee5
[gaim-migrate @ 556]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
535
diff
changeset
|
538 gtk_main(); |
e312b8b9bee5
[gaim-migrate @ 556]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
535
diff
changeset
|
539 return 0; |
e312b8b9bee5
[gaim-migrate @ 556]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
535
diff
changeset
|
540 } |
e312b8b9bee5
[gaim-migrate @ 556]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
535
diff
changeset
|
541 |
1 | 542 #ifdef USE_APPLET |
338
9d258a0aa560
[gaim-migrate @ 348]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
296
diff
changeset
|
543 init_applet_mgr(argc, argv); |
724
e7d812852a7f
[gaim-migrate @ 734]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
705
diff
changeset
|
544 #elif defined USE_GNOME |
e7d812852a7f
[gaim-migrate @ 734]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
705
diff
changeset
|
545 gnome_init(PACKAGE,VERSION,argc,argv); |
1 | 546 #else |
547 gtk_init(&argc, &argv); | |
724
e7d812852a7f
[gaim-migrate @ 734]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
705
diff
changeset
|
548 #endif /* USE_GNOME */ |
1 | 549 |
550 set_defaults(); | |
551 load_prefs(); | |
180 | 552 |
176
c99d0b82c8a8
[gaim-migrate @ 186]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
158
diff
changeset
|
553 if (general_options & OPT_GEN_DEBUG) |
c99d0b82c8a8
[gaim-migrate @ 186]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
158
diff
changeset
|
554 show_debug(NULL); |
1 | 555 |
216
f7e17fb767eb
[gaim-migrate @ 226]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
556 gdk_threads_enter(); |
f7e17fb767eb
[gaim-migrate @ 226]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
557 |
1 | 558 #ifdef USE_APPLET |
559 applet_widget_register_callback(APPLET_WIDGET(applet), | |
560 "prefs", | |
561 _("Preferences"), | |
562 show_prefs, | |
563 NULL); | |
564 applet_widget_register_callback(APPLET_WIDGET(applet), | |
565 "signon", | |
566 _("Signon"), | |
342
f4fba304b236
[gaim-migrate @ 352]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
338
diff
changeset
|
567 applet_do_signon, |
1 | 568 NULL); |
97
5b4b7aa8dd9a
[gaim-migrate @ 107]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
96
diff
changeset
|
569 #ifdef GAIM_PLUGINS |
96
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
570 applet_widget_register_callback(APPLET_WIDGET(applet), |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
571 "plugins", |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
572 _("Plugins"), |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
573 GTK_SIGNAL_FUNC(show_plugins), |
247f540ea6e1
[gaim-migrate @ 106]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
94
diff
changeset
|
574 NULL); |
97
5b4b7aa8dd9a
[gaim-migrate @ 107]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
96
diff
changeset
|
575 #endif /* GAIM_PLUGINS */ |
1 | 576 |
577 if((general_options & OPT_GEN_AUTO_LOGIN) && | |
578 (general_options & OPT_GEN_REMEMBER_PASS)) { | |
579 | |
580 applet_show_login(APPLET_WIDGET(applet), NULL); | |
581 } | |
82 | 582 |
583 update_pixmaps(); | |
1 | 584 |
585 applet_widget_gtk_main(); | |
586 #else | |
587 | |
588 | |
589 show_login(); | |
590 gtk_main(); | |
591 | |
592 #endif /* USE_APPLET */ | |
216
f7e17fb767eb
[gaim-migrate @ 226]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
200
diff
changeset
|
593 gdk_threads_leave(); |
1 | 594 |
595 return 0; | |
596 | |
597 } |