Mercurial > pidgin
annotate src/gtkdialogs.c @ 13131:47ecef83e2e1
[gaim-migrate @ 15493]
A lot of our conversation code assumes that conv->account != NULL.
This is a completely invalid assumption. If you have a conversation
open on an account, and you delete the account, Gaim should leave the
conversation window open and set the account to NULL and handle
everything appropriately. Currently it does not, and that makes me
a little unhappy.
To reproduce this:
1. Open a conversation with someone
2. Delete the account that you're sending messages from
3. Watch the assertion failures scroll by in the debug window
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Mon, 06 Feb 2006 05:43:09 +0000 |
parents | a6811e213977 |
children | 4cef9fe8ea5b |
rev | line source |
---|---|
9709 | 1 /* |
10297
ec140184437b
[gaim-migrate @ 11480]
Luke Schierer <lschiere@pidgin.im>
parents:
10266
diff
changeset
|
2 * @file gtkdialogs.c GTK+ Dialogs |
ec140184437b
[gaim-migrate @ 11480]
Luke Schierer <lschiere@pidgin.im>
parents:
10266
diff
changeset
|
3 * @ingroup gtkui |
ec140184437b
[gaim-migrate @ 11480]
Luke Schierer <lschiere@pidgin.im>
parents:
10266
diff
changeset
|
4 * |
9709 | 5 * gaim |
6 * | |
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. | |
10 * | |
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 | |
24 */ | |
9791 | 25 #include "internal.h" |
26 #include "gtkgaim.h" | |
9709 | 27 |
28 #include "debug.h" | |
29 #include "notify.h" | |
30 #include "prpl.h" | |
31 #include "request.h" | |
32 #include "util.h" | |
33 | |
12232
375f1f3817a8
[gaim-migrate @ 14534]
Richard Laager <rlaager@wiktel.com>
parents:
12122
diff
changeset
|
34 #include "gtkblist.h" |
9709 | 35 #include "gtkdialogs.h" |
36 #include "gtkimhtml.h" | |
37 #include "gtkimhtmltoolbar.h" | |
38 #include "gtklog.h" | |
39 #include "gtkutils.h" | |
10297
ec140184437b
[gaim-migrate @ 11480]
Luke Schierer <lschiere@pidgin.im>
parents:
10266
diff
changeset
|
40 #include "gtkstock.h" |
9709 | 41 |
9753 | 42 static GList *dialogwindows = NULL; |
9709 | 43 |
9753 | 44 static GtkWidget *about = NULL; |
9709 | 45 |
9758 | 46 struct developer { |
47 char *name; | |
48 char *role; | |
49 char *email; | |
50 }; | |
51 | |
52 struct translator { | |
53 char *language; | |
54 char *abbr; | |
55 char *name; | |
56 char *email; | |
57 }; | |
58 | |
12065
ff985a2d88b9
[gaim-migrate @ 14360]
Richard Laager <rlaager@wiktel.com>
parents:
12062
diff
changeset
|
59 /* Order: Lead Developer, then Alphabetical by Last Name */ |
9758 | 60 static struct developer developers[] = { |
12248 | 61 {"Sean Egan", N_("lead developer"), "sean.egan@gmail.com"}, |
10508
4cc999cc6718
[gaim-migrate @ 11802]
Luke Schierer <lschiere@pidgin.im>
parents:
10493
diff
changeset
|
62 {"Daniel 'datallah' Atallah", N_("developer"), NULL}, |
12065
ff985a2d88b9
[gaim-migrate @ 14360]
Richard Laager <rlaager@wiktel.com>
parents:
12062
diff
changeset
|
63 {"Ethan 'Paco-Paco' Blanton", N_("developer"), NULL}, |
10095
b28f9be379b3
[gaim-migrate @ 11114]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
9991
diff
changeset
|
64 {"Herman Bloggs", N_("win32 port"), "herman@bluedigits.com"}, |
9758 | 65 {"Mark 'KingAnt' Doliner", N_("developer"), NULL}, |
12065
ff985a2d88b9
[gaim-migrate @ 14360]
Richard Laager <rlaager@wiktel.com>
parents:
12062
diff
changeset
|
66 {"Christian 'ChipX86' Hammond", N_("developer & webmaster"), NULL}, |
ff985a2d88b9
[gaim-migrate @ 14360]
Richard Laager <rlaager@wiktel.com>
parents:
12062
diff
changeset
|
67 {"Gary 'grim' Kramlich", N_("developer"), NULL}, |
ff985a2d88b9
[gaim-migrate @ 14360]
Richard Laager <rlaager@wiktel.com>
parents:
12062
diff
changeset
|
68 {"Richard 'rlaager' Laager", N_("developer"), NULL}, |
12312
1c8ea8f3b84e
[gaim-migrate @ 14616]
Christopher O'Brien <siege@pidgin.im>
parents:
12295
diff
changeset
|
69 {"Christopher 'siege' O'Brien", N_("developer"), "taliesein@users.sf.net"}, |
10370
acd5b7af0409
[gaim-migrate @ 11590]
Luke Schierer <lschiere@pidgin.im>
parents:
10369
diff
changeset
|
70 {"Etan 'deryni' Reisner", N_("developer"), NULL}, |
9758 | 71 {"Tim 'marv' Ringenbach", N_("developer"), NULL}, |
10369
584c792dd15c
[gaim-migrate @ 11588]
Luke Schierer <lschiere@pidgin.im>
parents:
10324
diff
changeset
|
72 {"Luke 'LSchiere' Schierer", N_("support"), "lschiere@users.sf.net"}, |
10116 | 73 {"Stu 'nosnilmot' Tomlinson", N_("developer"), NULL}, |
12065
ff985a2d88b9
[gaim-migrate @ 14360]
Richard Laager <rlaager@wiktel.com>
parents:
12062
diff
changeset
|
74 {"Nathan 'faceprint' Walp", N_("developer"), NULL}, |
9758 | 75 {NULL, NULL, NULL} |
76 }; | |
77 | |
12065
ff985a2d88b9
[gaim-migrate @ 14360]
Richard Laager <rlaager@wiktel.com>
parents:
12062
diff
changeset
|
78 /* Order: Alphabetical by Last Name */ |
10372
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
79 static struct developer patch_writers[] = { |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
80 {"Ka-Hing 'javabsp' Cheung", NULL, NULL}, |
11612
6135c29a514f
[gaim-migrate @ 13885]
Luke Schierer <lschiere@pidgin.im>
parents:
11581
diff
changeset
|
81 {"Sadrul Habib Chowdhury", NULL, NULL}, |
10372
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
82 {"Felipe 'shx' Contreras", NULL, NULL}, |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
83 {"Decklin Foster", NULL, NULL}, |
12868
74f6596fab78
[gaim-migrate @ 15219]
Luke Schierer <lschiere@pidgin.im>
parents:
12797
diff
changeset
|
84 {"Casey Harkins", NULL, NULL}, |
11062
97b6fb28e976
[gaim-migrate @ 13019]
Luke Schierer <lschiere@pidgin.im>
parents:
11036
diff
changeset
|
85 {"Peter 'Bleeter' Lawler", NULL, NULL}, |
10372
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
86 {"Robert 'Robot101' McQueen", NULL, NULL}, |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
87 {"Benjamin Miller", NULL, NULL}, |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
88 {"Kevin 'SimGuy' Stange", NULL, NULL}, |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
89 {NULL, NULL, NULL} |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
90 }; |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
91 |
12065
ff985a2d88b9
[gaim-migrate @ 14360]
Richard Laager <rlaager@wiktel.com>
parents:
12062
diff
changeset
|
92 /* Order: Alphabetical by Last Name */ |
9758 | 93 static struct developer retired_developers[] = { |
12406
bc45ab9756b5
[gaim-migrate @ 14713]
Richard Laager <rlaager@wiktel.com>
parents:
12374
diff
changeset
|
94 {"Jim Duchek", N_("maintainer"), "jim@linuxpimps.com"}, |
10615 | 95 {"Rob Flynn", N_("maintainer"), "gaim@robflynn.com"}, |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
96 {"Adam Fritzler", N_("libfaim maintainer"), NULL}, |
12065
ff985a2d88b9
[gaim-migrate @ 14360]
Richard Laager <rlaager@wiktel.com>
parents:
12062
diff
changeset
|
97 {"Syd Logan", N_("hacker and designated driver [lazy bum]"), NULL}, |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
98 {"Jim Seymour", N_("Jabber developer"), NULL}, |
9758 | 99 {"Mark Spencer", N_("original author"), "markster@marko.net"}, |
12065
ff985a2d88b9
[gaim-migrate @ 14360]
Richard Laager <rlaager@wiktel.com>
parents:
12062
diff
changeset
|
100 {"Eric Warmenhoven", N_("lead developer"), "warmenhoven@yahoo.com"}, |
9758 | 101 {NULL, NULL, NULL} |
102 }; | |
103 | |
12065
ff985a2d88b9
[gaim-migrate @ 14360]
Richard Laager <rlaager@wiktel.com>
parents:
12062
diff
changeset
|
104 /* Order: Code, then Alphabetical by Last Name */ |
9758 | 105 static struct translator current_translators[] = { |
10852
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
106 {N_("Bulgarian"), "bg", "Vladimira Girginova", "missing@here.is"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
107 {N_("Bulgarian"), "bg", "Vladimir (Kaladan) Petkov", "vpetkov@i-space.org"}, |
12581
1f3af98a7819
[gaim-migrate @ 14909]
Luke Schierer <lschiere@pidgin.im>
parents:
12534
diff
changeset
|
108 {N_("Bengali"), "bn", "INDRANIL DAS GUPTA", "indradg@l2c2.org"}, |
1f3af98a7819
[gaim-migrate @ 14909]
Luke Schierer <lschiere@pidgin.im>
parents:
12534
diff
changeset
|
109 {N_("Bengali"), "bn", "Samia Nimatullah", "mailsamia2001@yahoo.com"}, |
11868
4b71193448b3
[gaim-migrate @ 14159]
Luke Schierer <lschiere@pidgin.im>
parents:
11863
diff
changeset
|
110 {N_("Bosnian"), "bs", "Lejla Hadzialic", "lejlah@gmail.com"}, |
10852
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
111 {N_("Catalan"), "ca", "Josep Puigdemont", "tradgnome@softcatala.org"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
112 {N_("Czech"), "cs", "Miloslav Trmac", "mitr@volny.cz"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
113 {N_("Danish"), "da", "Morten Brix Pedersen", "morten@wtf.dk"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
114 {N_("German"), "de", "Björn Voigt", "bjoern@cs.tu-berlin.de"}, |
12062
4ccd528ffe6e
[gaim-migrate @ 14357]
Richard Laager <rlaager@wiktel.com>
parents:
12061
diff
changeset
|
115 {N_("Greek"), "el", "Katsaloulis Panayotis", "panayotis@panayotis.com"}, |
11931
62777e2a9f00
[gaim-migrate @ 14222]
Richard Laager <rlaager@wiktel.com>
parents:
11930
diff
changeset
|
116 {N_("Greek"), "el", "Bouklis Panos", "panos@echidna-band.com"}, |
10852
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
117 {N_("Australian English"), "en_AU", "Peter Lawler", "trans@six-by-nine.com.au"}, |
12062
4ccd528ffe6e
[gaim-migrate @ 14357]
Richard Laager <rlaager@wiktel.com>
parents:
12061
diff
changeset
|
118 {N_("Canadian English"), "en_CA", "Adam Weinberger", "adamw@gnome.org"}, |
10852
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
119 {N_("British English"), "en_GB", "Luke Ross", "lukeross@sys3175.co.uk"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
120 {N_("Spanish"), "es", "Javier Fernández-Sanguino Peña", "jfs@debian.org"}, |
12494
0c8a45692e57
[gaim-migrate @ 14806]
Luke Schierer <lschiere@pidgin.im>
parents:
12406
diff
changeset
|
121 {N_("Finnish"), "fi", "Timo Jyrinki", "timo.jyrinki@iki.fi"}, |
10852
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
122 {N_("French"), "fr", "Éric Boumaour", "zongo_fr@users.sourceforge.net"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
123 {N_("Hebrew"), "he", "Pavel Bibergal", "cyberkm203@hotmail.com"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
124 {N_("Hindi"), "hi", "Ravishankar Shrivastava", "raviratlami@yahoo.com"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
125 {N_("Hungarian"), "hu", "Zoltan Sutto", "sutto.zoltan@rutinsoft.hu"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
126 {N_("Italian"), "it", "Claudio Satriano", "satriano@na.infn.it"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
127 {N_("Japanese"), "ja", "Takashi Aihana", "aihana@gnome.gr.jp"}, |
12581
1f3af98a7819
[gaim-migrate @ 14909]
Luke Schierer <lschiere@pidgin.im>
parents:
12534
diff
changeset
|
128 {N_("Georgian"), "ka", "Ubuntu Georgian Translators", "alexander.didebulidze@stusta.mhn.de"}, |
12062
4ccd528ffe6e
[gaim-migrate @ 14357]
Richard Laager <rlaager@wiktel.com>
parents:
12061
diff
changeset
|
129 {N_("Korean"), "ko", "Kyung-uk Son", "vvs740@chol.com"}, |
11874
f3a0cefa8e35
[gaim-migrate @ 14165]
Luke Schierer <lschiere@pidgin.im>
parents:
11868
diff
changeset
|
130 {N_("Kurdish"), "ku", "Erdal Ronahi, Amed Ç. Jiyan", "erdal.ronahi@gmail.com,amedcj@hotmail.com"}, |
12582
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
131 {N_("Lithuanian"), "lt", "Andrius Štikonas", "a.stikonas@gmail.com"}, |
12062
4ccd528ffe6e
[gaim-migrate @ 14357]
Richard Laager <rlaager@wiktel.com>
parents:
12061
diff
changeset
|
132 {N_("Macedonian"), "mk", "Tomislav Markovski", "herrera@users.sf.net"}, |
10852
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
133 {N_("Dutch, Flemish"), "nl", "Vincent van Adrighem", "V.vanAdrighem@dirck.mine.nu"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
134 {N_("Norwegian"), "no", "Petter Johan Olsen", "petter.olsen@cc.uit.no"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
135 {N_("Polish"), "pl", "Emil Nowak", "emil5@go2.pl"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
136 {N_("Polish"), "pl", "Krzysztof Foltman", "krzysztof@foltman.com"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
137 {N_("Portuguese"), "pt", "Duarte Henriques", "duarte_henriques@myrealbox.com"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
138 {N_("Portuguese-Brazil"), "pt_BR", "Maurício de Lemos Rodrigues Collares Neto", "mauricioc@gmail.com"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
139 {N_("Romanian"), "ro", "Mişu Moldovan", "dumol@go.ro"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
140 {N_("Russian"), "ru", "Dmitry Beloglazov", "dmaa@users.sf.net"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
141 {N_("Serbian"), "sr", "Danilo Šegan", "dsegan@gmx.net"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
142 {N_("Serbian"), "sr", "Aleksandar Urosevic", "urke@users.sourceforge.net"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
143 {N_("Slovenian"), "sl", "Matjaz Horvat", "matjaz@owca.info"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
144 {N_("Swedish"), "sv", "Tore Lundqvist", "tlt@mima.x.se"}, |
12374
c57935373cc4
[gaim-migrate @ 14678]
Luke Schierer <lschiere@pidgin.im>
parents:
12321
diff
changeset
|
145 {N_("Tamil"), "ta", "Viveka Nathan K", "vivekanathan@users.sourceforge.net"}, |
11465
448bc3b8eb63
[gaim-migrate @ 13705]
Luke Schierer <lschiere@pidgin.im>
parents:
11338
diff
changeset
|
146 {N_("Telugu"), "te", "Mr. Subbaramaih", "info.gist@cdac.in"}, |
10852
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
147 {N_("Vietnamese"), "vi", N_("T.M.Thanh and the Gnome-Vi Team"), "gnomevi-list@lists.sf.net"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
148 {N_("Simplified Chinese"), "zh_CN", "Funda Wang", "fundawang@linux.net.cn"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
149 {N_("Traditional Chinese"), "zh_TW", "Ambrose C. Li", "acli@ada.dhs.org"}, |
62b5117114d2
[gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents:
10851
diff
changeset
|
150 {N_("Traditional Chinese"), "zh_TW", "Paladin R. Liu", "paladin@ms1.hinet.net"}, |
9758 | 151 {NULL, NULL, NULL, NULL} |
152 }; | |
153 | |
154 | |
155 static struct translator past_translators[] = { | |
12582
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
156 {N_("Amharic"), "am", "Daniel Yacob", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
157 {N_("Bulgarian"), "bg", "Hristo Todorov", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
158 {N_("Catalan"), "ca", "JM Pérez Cáncer", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
159 {N_("Catalan"), "ca", "Robert Millan", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
160 {N_("Czech"), "cs", "Honza Král", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
161 {N_("German"), "de", "Daniel Seifert, Karsten Weiss", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
162 {N_("Spanish"), "es", "JM Pérez Cáncer", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
163 {N_("Spanish"), "es", "Nicolás Lichtmaier", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
164 {N_("Spanish"), "es", "Amaya Rodrigo", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
165 {N_("Spanish"), "es", "Alejandro G Villar", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
166 {N_("Finnish"), "fi", "Arto Alakulju", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
167 {N_("Finnish"), "fi", "Tero Kuusela", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
168 {N_("French"), "fr", "Sébastien François", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
169 {N_("French"), "fr", "Stéphane Pontier", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
170 {N_("French"), "fr", "Stéphane Wirtel", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
171 {N_("French"), "fr", "Loïc Jeannin", NULL}, |
9758 | 172 {N_("Italian"), "it", "Salvatore di Maggio", NULL}, |
12582
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
173 {N_("Japanese"), "ja", "Ryosuke Kutsuna", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
174 {N_("Japanese"), "ja", "Taku Yasui", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
175 {N_("Japanese"), "ja", "Junichi Uekawa", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
176 {N_("Georgian"), "ka", "Temuri Doghonadze", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
177 {N_("Korean"), "ko", "Sang-hyun S, A Ho-seok Lee", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
178 {N_("Lithuanian"), "lt", "Gediminas Čičinskas", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
179 {N_("Polish"), "pl", "Przemysław Sułek", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
180 {N_("Russian"), "ru", "Alexandre Prokoudine", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
181 {N_("Russian"), "ru", "Sergey Volozhanin", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
182 {N_("Slovak"), "sk", "Daniel Režný", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
183 {N_("Swedish"), "sv", "Christian Rose", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
184 {N_("Simplified Chinese"), "zh_CN", "Hashao, Rocky S. Lee", NULL}, |
f75c0d35e032
[gaim-migrate @ 14910]
Luke Schierer <lschiere@pidgin.im>
parents:
12581
diff
changeset
|
185 {N_("Traditional Chinese"), "zh_TW", "Hashao, Rocky S. Lee", NULL}, |
9758 | 186 {NULL, NULL, NULL, NULL} |
187 }; | |
188 | |
9730 | 189 void |
190 gaim_gtkdialogs_destroy_all() | |
9709 | 191 { |
9753 | 192 while (dialogwindows) { |
193 gtk_widget_destroy(dialogwindows->data); | |
194 dialogwindows = g_list_remove(dialogwindows, dialogwindows->data); | |
195 } | |
196 } | |
197 | |
198 static void destroy_about() | |
199 { | |
200 if (about != NULL) | |
201 gtk_widget_destroy(about); | |
202 about = NULL; | |
203 } | |
204 | |
12321
a1bb603436cd
[gaim-migrate @ 14625]
Richard Laager <rlaager@wiktel.com>
parents:
12312
diff
changeset
|
205 void gaim_gtkdialogs_about() |
9753 | 206 { |
207 GtkWidget *hbox; | |
208 GtkWidget *vbox; | |
209 GtkWidget *logo; | |
10175 | 210 GtkWidget *frame; |
9753 | 211 GtkWidget *text; |
212 GtkWidget *bbox; | |
213 GtkWidget *button; | |
214 GtkTextIter iter; | |
9758 | 215 GString *str; |
216 int i; | |
10266 | 217 AtkObject *obj; |
9753 | 218 |
219 if (about != NULL) { | |
220 gtk_window_present(GTK_WINDOW(about)); | |
221 return; | |
222 } | |
223 | |
224 GAIM_DIALOG(about); | |
225 gtk_window_set_default_size(GTK_WINDOW(about), 450, -1); | |
226 gtk_window_set_title(GTK_WINDOW(about), _("About Gaim")); | |
227 gtk_window_set_role(GTK_WINDOW(about), "about"); | |
228 gtk_window_set_resizable(GTK_WINDOW(about), TRUE); | |
9778 | 229 gtk_window_set_default_size(GTK_WINDOW(about), 340, 550); /* Golden ratio in da hizzy */ |
9753 | 230 |
11243 | 231 hbox = gtk_hbox_new(FALSE, GAIM_HIG_BORDER); |
232 gtk_container_set_border_width(GTK_CONTAINER(hbox), GAIM_HIG_BORDER); | |
9753 | 233 gtk_container_add(GTK_CONTAINER(about), hbox); |
234 | |
11243 | 235 vbox = gtk_vbox_new(FALSE, GAIM_HIG_BORDER); |
9753 | 236 gtk_container_add(GTK_CONTAINER(hbox), vbox); |
237 | |
238 logo = gtk_image_new_from_stock(GAIM_STOCK_LOGO, gtk_icon_size_from_name(GAIM_ICON_SIZE_LOGO)); | |
10266 | 239 obj = gtk_widget_get_accessible(logo); |
240 atk_object_set_description(obj, "Gaim " VERSION); | |
9753 | 241 gtk_box_pack_start(GTK_BOX(vbox), logo, FALSE, FALSE, 0); |
242 | |
10175 | 243 frame = gaim_gtk_create_imhtml(FALSE, &text, NULL); |
10522 | 244 gtk_imhtml_set_format_functions(GTK_IMHTML(text), GTK_IMHTML_ALL ^ GTK_IMHTML_SMILEY); |
10175 | 245 gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 0); |
9753 | 246 |
9758 | 247 str = g_string_sized_new(4096); |
9753 | 248 |
10153 | 249 g_string_append(str, |
12937 | 250 _("Gaim is a modular messaging client capable of using " |
251 "AIM, MSN, Yahoo!, Jabber, ICQ, IRC, SILC, " | |
252 "Novell GroupWise, Lotus Sametime, Napster, Zephyr, and Gadu-Gadu " | |
13103
a6811e213977
[gaim-migrate @ 15465]
Richard Laager <rlaager@wiktel.com>
parents:
12967
diff
changeset
|
253 "all at once. It is written using GTK+.<BR><BR>" |
12937 | 254 "You may modify and redistribute the program under " |
12938
56129c18aa2b
[gaim-migrate @ 15291]
Richard Laager <rlaager@wiktel.com>
parents:
12937
diff
changeset
|
255 "the terms of the GPL (version 2 or later). A copy of the GPL is " |
12937 | 256 "contained in the 'COPYING' file distributed with Gaim. " |
257 "Gaim is copyrighted by its contributors. See the 'COPYRIGHT' " | |
258 "file for the complete list of contributors. We provide no " | |
259 "warranty for this program.<BR><BR>")); | |
9753 | 260 |
9758 | 261 g_string_append(str, "<FONT SIZE=\"4\">URL:</FONT> <A HREF=\"" |
262 GAIM_WEBSITE "\">" GAIM_WEBSITE "</A><BR/><BR/>"); | |
10493 | 263 #ifdef _WIN32 |
264 g_string_append_printf(str, _("<FONT SIZE=\"4\">IRC:</FONT> " | |
265 "#wingaim on irc.freenode.net<BR><BR>")); | |
266 #else | |
9758 | 267 g_string_append_printf(str, _("<FONT SIZE=\"4\">IRC:</FONT> " |
268 "#gaim on irc.freenode.net<BR><BR>")); | |
10493 | 269 #endif |
9753 | 270 |
12406
bc45ab9756b5
[gaim-migrate @ 14713]
Richard Laager <rlaager@wiktel.com>
parents:
12374
diff
changeset
|
271 /* Current Developers */ |
9758 | 272 g_string_append_printf(str, "<FONT SIZE=\"4\">%s:</FONT><BR/>", |
12406
bc45ab9756b5
[gaim-migrate @ 14713]
Richard Laager <rlaager@wiktel.com>
parents:
12374
diff
changeset
|
273 _("Current Developers")); |
9758 | 274 for (i = 0; developers[i].name != NULL; i++) { |
275 if (developers[i].email != NULL) { | |
10116 | 276 g_string_append_printf(str, " %s (%s) <<a href=\"mailto:%s\">%s</a>><br/>", |
9758 | 277 developers[i].name, _(developers[i].role), |
278 developers[i].email, developers[i].email); | |
279 } else { | |
280 g_string_append_printf(str, " %s (%s)<br/>", | |
281 developers[i].name, _(developers[i].role)); | |
282 } | |
283 } | |
284 g_string_append(str, "<BR/>"); | |
9709 | 285 |
9753 | 286 /* Crazy Patch Writers */ |
9758 | 287 g_string_append_printf(str, "<FONT SIZE=\"4\">%s:</FONT><BR/>", |
288 _("Crazy Patch Writers")); | |
10372
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
289 for (i = 0; patch_writers[i].name != NULL; i++) { |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
290 if (patch_writers[i].email != NULL) { |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
291 g_string_append_printf(str, " %s <<a href=\"mailto:%s\">%s</a>><br/>", |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
292 patch_writers[i].name, |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
293 patch_writers[i].email, patch_writers[i].email); |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
294 } else { |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
295 g_string_append_printf(str, " %s<br/>", |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
296 patch_writers[i].name); |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
297 } |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
298 } |
618a330c0260
[gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents:
10371
diff
changeset
|
299 g_string_append(str, "<BR/>"); |
9753 | 300 |
301 /* Retired Developers */ | |
9758 | 302 g_string_append_printf(str, "<FONT SIZE=\"4\">%s:</FONT><BR/>", |
303 _("Retired Developers")); | |
304 for (i = 0; retired_developers[i].name != NULL; i++) { | |
305 if (retired_developers[i].email != NULL) { | |
10116 | 306 g_string_append_printf(str, " %s (%s) <<a href=\"mailto:%s\">%s</a>><br/>", |
9758 | 307 retired_developers[i].name, _(retired_developers[i].role), |
308 retired_developers[i].email, retired_developers[i].email); | |
309 } else { | |
310 g_string_append_printf(str, " %s (%s)<br/>", | |
311 retired_developers[i].name, _(retired_developers[i].role)); | |
312 } | |
313 } | |
314 g_string_append(str, "<BR/>"); | |
9753 | 315 |
316 /* Current Translators */ | |
9758 | 317 g_string_append_printf(str, "<FONT SIZE=\"4\">%s:</FONT><BR/>", |
318 _("Current Translators")); | |
319 for (i = 0; current_translators[i].language != NULL; i++) { | |
320 if (current_translators[i].email != NULL) { | |
10116 | 321 g_string_append_printf(str, " <b>%s (%s)</b> - %s <<a href=\"mailto:%s\">%s</a>><br/>", |
9758 | 322 _(current_translators[i].language), |
323 current_translators[i].abbr, | |
324 _(current_translators[i].name), | |
325 current_translators[i].email, | |
326 current_translators[i].email); | |
327 } else { | |
328 g_string_append_printf(str, " <b>%s (%s)</b> - %s<br/>", | |
329 _(current_translators[i].language), | |
330 current_translators[i].abbr, | |
331 _(current_translators[i].name)); | |
332 } | |
333 } | |
334 g_string_append(str, "<BR/>"); | |
9753 | 335 |
336 /* Past Translators */ | |
9758 | 337 g_string_append_printf(str, "<FONT SIZE=\"4\">%s:</FONT><BR/>", |
338 _("Past Translators")); | |
339 for (i = 0; past_translators[i].language != NULL; i++) { | |
340 if (past_translators[i].email != NULL) { | |
10116 | 341 g_string_append_printf(str, " <b>%s (%s)</b> - %s <<a href=\"mailto:%s\">%s</a>><br/>", |
9758 | 342 _(past_translators[i].language), |
343 past_translators[i].abbr, | |
344 _(past_translators[i].name), | |
345 past_translators[i].email, | |
346 past_translators[i].email); | |
347 } else { | |
348 g_string_append_printf(str, " <b>%s (%s)</b> - %s<br/>", | |
349 _(past_translators[i].language), | |
350 past_translators[i].abbr, | |
351 _(past_translators[i].name)); | |
352 } | |
353 } | |
354 g_string_append(str, "<BR/>"); | |
355 | |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
356 g_string_append_printf(str, "<FONT SIZE=\"4\">%s</FONT><br/>", _("Debugging Information")); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
357 |
10411 | 358 /* The following primarly intented for user/developer interaction and thus |
359 ought not be translated */ | |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
360 |
10411 | 361 #ifdef CONFIG_ARGS /* win32 build doesn't use configure */ |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
362 g_string_append(str, " <b>Arguments to <i>./configure</i>:</b> " CONFIG_ARGS "<br/>"); |
10411 | 363 #endif |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
364 |
12534
bed2ca758451
[gaim-migrate @ 14847]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
12511
diff
changeset
|
365 #ifndef _WIN32 |
10411 | 366 #ifdef DEBUG |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
367 g_string_append(str, " <b>Print debugging messages:</b> Yes<br/>"); |
10411 | 368 #else |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
369 g_string_append(str, " <b>Print debugging messages:</b> No<br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
370 #endif |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
371 |
10411 | 372 #ifdef ENABLE_BINRELOC |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
373 g_string_append(str, " <b>Binary relocation:</b> Enabled<br/>"); |
10411 | 374 #else |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
375 g_string_append(str, " <b>Binary relocation:</b> Disabled<br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
376 #endif |
12534
bed2ca758451
[gaim-migrate @ 14847]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
12511
diff
changeset
|
377 #endif |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
378 |
10411 | 379 #ifdef GAIM_PLUGINS |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
380 g_string_append(str, " <b>Plugins:</b> Enabled<br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
381 #else |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
382 g_string_append(str, " <b>Plugins:</b> Disabled<br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
383 #endif |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
384 |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
385 #ifdef HAVE_SSL |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
386 g_string_append(str, " <b>SSL:</b> Gaim was compiled with SSL support.<br/>"); |
10411 | 387 #else |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
388 g_string_append(str, " <b>SSL:</b> Gaim was <b><i>NOT</i></b> compiled with any SSL support!<br/>"); |
10411 | 389 #endif |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
390 |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
391 |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
392 g_string_append(str, "<br/> <b>Library Support</b><br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
393 |
12511
d0bafd22f056
[gaim-migrate @ 14823]
Richard Laager <rlaager@wiktel.com>
parents:
12504
diff
changeset
|
394 #ifdef HAVE_CYRUS_SASL |
d0bafd22f056
[gaim-migrate @ 14823]
Richard Laager <rlaager@wiktel.com>
parents:
12504
diff
changeset
|
395 g_string_append_printf(str, " <b>Cyrus SASL:</b> Enabled<br/>"); |
d0bafd22f056
[gaim-migrate @ 14823]
Richard Laager <rlaager@wiktel.com>
parents:
12504
diff
changeset
|
396 #else |
d0bafd22f056
[gaim-migrate @ 14823]
Richard Laager <rlaager@wiktel.com>
parents:
12504
diff
changeset
|
397 g_string_append_printf(str, " <b>Cyrus SASL:</b> Disabled<br/>"); |
d0bafd22f056
[gaim-migrate @ 14823]
Richard Laager <rlaager@wiktel.com>
parents:
12504
diff
changeset
|
398 #endif |
d0bafd22f056
[gaim-migrate @ 14823]
Richard Laager <rlaager@wiktel.com>
parents:
12504
diff
changeset
|
399 |
12534
bed2ca758451
[gaim-migrate @ 14847]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
12511
diff
changeset
|
400 #ifndef _WIN32 |
12967
53cde8409599
[gaim-migrate @ 15320]
Etan Reisner <pidgin@unreliablesource.net>
parents:
12938
diff
changeset
|
401 #ifdef HAVE_DBUS |
53cde8409599
[gaim-migrate @ 15320]
Etan Reisner <pidgin@unreliablesource.net>
parents:
12938
diff
changeset
|
402 g_string_append_printf(str, " <b>D-BUS:</b> Enabled<br/>"); |
53cde8409599
[gaim-migrate @ 15320]
Etan Reisner <pidgin@unreliablesource.net>
parents:
12938
diff
changeset
|
403 #else |
53cde8409599
[gaim-migrate @ 15320]
Etan Reisner <pidgin@unreliablesource.net>
parents:
12938
diff
changeset
|
404 g_string_append_printf(str, " <b>D-BUS:</b> Disabled<br/>"); |
53cde8409599
[gaim-migrate @ 15320]
Etan Reisner <pidgin@unreliablesource.net>
parents:
12938
diff
changeset
|
405 #endif |
53cde8409599
[gaim-migrate @ 15320]
Etan Reisner <pidgin@unreliablesource.net>
parents:
12938
diff
changeset
|
406 |
10835 | 407 #ifdef HAVE_EVOLUTION_ADDRESSBOOK |
408 g_string_append_printf(str, " <b>Evolution Addressbook:</b> Enabled<br/>"); | |
10411 | 409 #else |
10835 | 410 g_string_append_printf(str, " <b>Evolution Addressbook:</b> Disabled<br/>"); |
10411 | 411 #endif |
12534
bed2ca758451
[gaim-migrate @ 14847]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
12511
diff
changeset
|
412 #endif |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
413 |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
414 #ifdef USE_GTKSPELL |
12067
e859c1663a27
[gaim-migrate @ 14362]
Richard Laager <rlaager@wiktel.com>
parents:
12065
diff
changeset
|
415 g_string_append(str, " <b>GtkSpell:</b> Enabled<br/>"); |
10411 | 416 #else |
12067
e859c1663a27
[gaim-migrate @ 14362]
Richard Laager <rlaager@wiktel.com>
parents:
12065
diff
changeset
|
417 g_string_append(str, " <b>GtkSpell:</b> Disabled<br/>"); |
10411 | 418 #endif |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
419 |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
420 #ifdef HAVE_GNUTLS |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
421 g_string_append(str, " <b>GnuTLS:</b> Enabled<br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
422 #else |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
423 g_string_append(str, " <b>GnuTLS:</b> Disabled<br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
424 #endif |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
425 |
12534
bed2ca758451
[gaim-migrate @ 14847]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
12511
diff
changeset
|
426 #ifndef _WIN32 |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
427 #ifdef USE_AO |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
428 g_string_append(str, " <b>libao:</b> Enabled<br/>"); |
10411 | 429 #else |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
430 g_string_append(str, " <b>libao:</b> Disabled<br/>"); |
10411 | 431 #endif |
12534
bed2ca758451
[gaim-migrate @ 14847]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
12511
diff
changeset
|
432 #endif |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
433 |
12122
9b06c216e362
[gaim-migrate @ 14422]
Richard Laager <rlaager@wiktel.com>
parents:
12120
diff
changeset
|
434 #ifdef ENABLE_MONO |
9b06c216e362
[gaim-migrate @ 14422]
Richard Laager <rlaager@wiktel.com>
parents:
12120
diff
changeset
|
435 g_string_append(str, " <b>Mono:</b> Enabled<br/>"); |
9b06c216e362
[gaim-migrate @ 14422]
Richard Laager <rlaager@wiktel.com>
parents:
12120
diff
changeset
|
436 #else |
9b06c216e362
[gaim-migrate @ 14422]
Richard Laager <rlaager@wiktel.com>
parents:
12120
diff
changeset
|
437 g_string_append(str, " <b>Mono:</b> Disabled<br/>"); |
9b06c216e362
[gaim-migrate @ 14422]
Richard Laager <rlaager@wiktel.com>
parents:
12120
diff
changeset
|
438 #endif |
9b06c216e362
[gaim-migrate @ 14422]
Richard Laager <rlaager@wiktel.com>
parents:
12120
diff
changeset
|
439 |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
440 #ifdef HAVE_NSS |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
441 g_string_append(str, " <b>Network Security Services (NSS):</b> Enabled<br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
442 #else |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
443 g_string_append(str, " <b>Network Security Services (NSS):</b> Disabled<br/>"); |
10411 | 444 #endif |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
445 |
12122
9b06c216e362
[gaim-migrate @ 14422]
Richard Laager <rlaager@wiktel.com>
parents:
12120
diff
changeset
|
446 #ifdef HAVE_PERL |
9b06c216e362
[gaim-migrate @ 14422]
Richard Laager <rlaager@wiktel.com>
parents:
12120
diff
changeset
|
447 g_string_append(str, " <b>Perl:</b> Enabled<br/>"); |
9b06c216e362
[gaim-migrate @ 14422]
Richard Laager <rlaager@wiktel.com>
parents:
12120
diff
changeset
|
448 #else |
9b06c216e362
[gaim-migrate @ 14422]
Richard Laager <rlaager@wiktel.com>
parents:
12120
diff
changeset
|
449 g_string_append(str, " <b>Perl:</b> Disabled<br/>"); |
9b06c216e362
[gaim-migrate @ 14422]
Richard Laager <rlaager@wiktel.com>
parents:
12120
diff
changeset
|
450 #endif |
9b06c216e362
[gaim-migrate @ 14422]
Richard Laager <rlaager@wiktel.com>
parents:
12120
diff
changeset
|
451 |
12534
bed2ca758451
[gaim-migrate @ 14847]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
12511
diff
changeset
|
452 #ifndef _WIN32 |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
453 #ifdef HAVE_STARTUP_NOTIFICATION |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
454 g_string_append(str, " <b>Startup Notification:</b> Enabled<br/>"); |
10411 | 455 #else |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
456 g_string_append(str, " <b>Startup Notification:</b> Disabled<br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
457 #endif |
12534
bed2ca758451
[gaim-migrate @ 14847]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
12511
diff
changeset
|
458 #endif |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
459 |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
460 #ifdef HAVE_TCL |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
461 g_string_append(str, " <b>Tcl:</b> Enabled<br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
462 #else |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
463 g_string_append(str, " <b>Tcl:</b> Disabled<br/>"); |
10411 | 464 #endif |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
465 |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
466 #ifdef HAVE_TK |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
467 g_string_append(str, " <b>Tk:</b> Enabled<br/>"); |
10411 | 468 #else |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
469 g_string_append(str, " <b>Tk:</b> Disabled<br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
470 #endif |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
471 |
12534
bed2ca758451
[gaim-migrate @ 14847]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
12511
diff
changeset
|
472 #ifndef _WIN32 |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
473 #ifdef USE_SM |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
474 g_string_append(str, " <b>X Session Management:</b> Enabled<br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
475 #else |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
476 g_string_append(str, " <b>X Session Management:</b> Disabled<br/>"); |
10411 | 477 #endif |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
478 |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
479 #ifdef USE_SCREENSAVER |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
480 g_string_append(str, " <b>XScreenSaver:</b> Enabled<br/>"); |
10411 | 481 #else |
10813
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
482 g_string_append(str, " <b>XScreenSaver:</b> Disabled<br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
483 #endif |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
484 |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
485 #ifdef LIBZEPHYR_EXT |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
486 g_string_append(str, " <b>Zephyr library (libzephyr):</b> External<br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
487 #else |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
488 g_string_append(str, " <b>Zephyr library (libzephyr):</b> Not External<br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
489 #endif |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
490 |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
491 #ifdef ZEPHYR_USES_KERBEROS |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
492 g_string_append(str, " <b>Zephyr uses Kerberos:</b> Yes<br/>"); |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
493 #else |
290131d5f626
[gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents:
10812
diff
changeset
|
494 g_string_append(str, " <b>Zephyr uses Kerberos:</b> No<br/>"); |
10411 | 495 #endif |
12534
bed2ca758451
[gaim-migrate @ 14847]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
12511
diff
changeset
|
496 #endif |
10411 | 497 |
498 /* End of not to be translated section */ | |
499 | |
9758 | 500 gtk_imhtml_append_text(GTK_IMHTML(text), str->str, GTK_IMHTML_NO_SCROLL); |
501 g_string_free(str, TRUE); | |
9753 | 502 |
503 gtk_text_buffer_get_start_iter(gtk_text_view_get_buffer(GTK_TEXT_VIEW(text)), &iter); | |
504 gtk_text_buffer_place_cursor(gtk_text_view_get_buffer(GTK_TEXT_VIEW(text)), &iter); | |
10153 | 505 |
9753 | 506 /* Close Button */ |
507 bbox = gtk_hbutton_box_new(); | |
508 gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_END); | |
509 gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 0); | |
510 | |
511 button = gtk_button_new_from_stock(GTK_STOCK_CLOSE); | |
512 gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0); | |
513 | |
514 g_signal_connect_swapped(G_OBJECT(button), "clicked", | |
515 G_CALLBACK(destroy_about), G_OBJECT(about)); | |
516 g_signal_connect(G_OBJECT(about), "destroy", | |
517 G_CALLBACK(destroy_about), G_OBJECT(about)); | |
518 | |
519 /* this makes the sizes not work? */ | |
520 GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT); | |
521 gtk_widget_grab_default(button); | |
522 | |
523 /* Let's give'em something to talk about -- woah woah woah */ | |
524 gtk_widget_show_all(about); | |
525 gtk_window_present(GTK_WINDOW(about)); | |
9709 | 526 } |
527 | |
9730 | 528 static void |
529 gaim_gtkdialogs_im_cb(gpointer data, GaimRequestFields *fields) | |
9709 | 530 { |
9730 | 531 GaimAccount *account; |
532 const char *username; | |
9709 | 533 |
9730 | 534 account = gaim_request_fields_get_account(fields, "account"); |
535 username = gaim_request_fields_get_string(fields, "screenname"); | |
9709 | 536 |
9730 | 537 gaim_gtkdialogs_im_with_user(account, username); |
9709 | 538 } |
539 | |
9730 | 540 void |
541 gaim_gtkdialogs_im(void) | |
9709 | 542 { |
9730 | 543 GaimRequestFields *fields; |
544 GaimRequestFieldGroup *group; | |
545 GaimRequestField *field; | |
9709 | 546 |
9730 | 547 fields = gaim_request_fields_new(); |
9709 | 548 |
9730 | 549 group = gaim_request_field_group_new(NULL); |
550 gaim_request_fields_add_group(fields, group); | |
9709 | 551 |
10668 | 552 field = gaim_request_field_string_new("screenname", _("_Name"), NULL, FALSE); |
553 gaim_request_field_set_type_hint(field, "screenname"); | |
9730 | 554 gaim_request_field_set_required(field, TRUE); |
555 gaim_request_field_group_add_field(group, field); | |
9709 | 556 |
9730 | 557 field = gaim_request_field_account_new("account", _("_Account"), NULL); |
10791
2ab4b5acc8d1
[gaim-migrate @ 12433]
Luke Schierer <lschiere@pidgin.im>
parents:
10774
diff
changeset
|
558 gaim_request_field_set_type_hint(field, "account"); |
9730 | 559 gaim_request_field_set_visible(field, |
560 (gaim_connections_get_all() != NULL && | |
561 gaim_connections_get_all()->next != NULL)); | |
562 gaim_request_field_set_required(field, TRUE); | |
563 gaim_request_field_group_add_field(group, field); | |
564 | |
565 gaim_request_fields(gaim_get_blist(), _("New Instant Message"), | |
566 NULL, | |
10668 | 567 _("Please enter the screen name or alias of the person " |
568 "you would like to IM."), | |
9730 | 569 fields, |
570 _("OK"), G_CALLBACK(gaim_gtkdialogs_im_cb), | |
571 _("Cancel"), NULL, | |
572 NULL); | |
9709 | 573 } |
574 | |
9730 | 575 void |
576 gaim_gtkdialogs_im_with_user(GaimAccount *account, const char *username) | |
9709 | 577 { |
9730 | 578 GaimConversation *conv; |
9709 | 579 |
9753 | 580 g_return_if_fail(account != NULL); |
581 g_return_if_fail(username != NULL); | |
582 | |
11338 | 583 conv = gaim_find_conversation_with_account(GAIM_CONV_TYPE_IM, username, account); |
9709 | 584 |
9730 | 585 if (conv == NULL) |
11338 | 586 conv = gaim_conversation_new(GAIM_CONV_TYPE_IM, account, username); |
12295
fc42c0d41482
[gaim-migrate @ 14599]
Luke Schierer <lschiere@pidgin.im>
parents:
12288
diff
changeset
|
587 |
fc42c0d41482
[gaim-migrate @ 14599]
Luke Schierer <lschiere@pidgin.im>
parents:
12288
diff
changeset
|
588 gaim_gtkconv_present_conversation(conv); |
9709 | 589 } |
590 | |
9730 | 591 static gboolean |
592 gaim_gtkdialogs_ee(const char *ee) | |
9709 | 593 { |
594 GtkWidget *window; | |
595 GtkWidget *hbox; | |
596 GtkWidget *label; | |
10219 | 597 GtkWidget *img; |
9709 | 598 gchar *norm = gaim_strreplace(ee, "rocksmyworld", ""); |
599 | |
600 label = gtk_label_new(NULL); | |
601 if (!strcmp(norm, "zilding")) | |
602 gtk_label_set_markup(GTK_LABEL(label), | |
603 "<span weight=\"bold\" size=\"large\" foreground=\"purple\">Amazing! Simply Amazing!</span>"); | |
604 else if (!strcmp(norm, "robflynn")) | |
605 gtk_label_set_markup(GTK_LABEL(label), | |
606 "<span weight=\"bold\" size=\"large\" foreground=\"#1f6bad\">Pimpin\' Penguin Style! *Waddle Waddle*</span>"); | |
607 else if (!strcmp(norm, "flynorange")) | |
608 gtk_label_set_markup(GTK_LABEL(label), | |
10816
c94f40ffcafb
[gaim-migrate @ 12471]
Luke Schierer <lschiere@pidgin.im>
parents:
10813
diff
changeset
|
609 "<span weight=\"bold\" size=\"large\" foreground=\"blue\">You should be me. I'm so cute!</span>"); |
9709 | 610 else if (!strcmp(norm, "ewarmenhoven")) |
611 gtk_label_set_markup(GTK_LABEL(label), | |
612 "<span weight=\"bold\" size=\"large\" foreground=\"orange\">Now that's what I like!</span>"); | |
613 else if (!strcmp(norm, "markster97")) | |
614 gtk_label_set_markup(GTK_LABEL(label), | |
615 "<span weight=\"bold\" size=\"large\" foreground=\"brown\">Ahh, and excellent choice!</span>"); | |
616 else if (!strcmp(norm, "seanegn")) | |
617 gtk_label_set_markup(GTK_LABEL(label), | |
618 "<span weight=\"bold\" size=\"large\" foreground=\"#009900\">Everytime you click my name, an angel gets its wings.</span>"); | |
619 else if (!strcmp(norm, "chipx86")) | |
620 gtk_label_set_markup(GTK_LABEL(label), | |
621 "<span weight=\"bold\" size=\"large\" foreground=\"red\">This sunflower seed taste like pizza.</span>"); | |
622 else if (!strcmp(norm, "markdoliner")) | |
623 gtk_label_set_markup(GTK_LABEL(label), | |
10816
c94f40ffcafb
[gaim-migrate @ 12471]
Luke Schierer <lschiere@pidgin.im>
parents:
10813
diff
changeset
|
624 "<span weight=\"bold\" size=\"large\" foreground=\"#6364B1\">Hey! I was in that tumbleweed!</span>"); |
9709 | 625 else if (!strcmp(norm, "lschiere")) |
626 gtk_label_set_markup(GTK_LABEL(label), | |
627 "<span weight=\"bold\" size=\"large\" foreground=\"gray\">I'm not anything.</span>"); | |
628 g_free(norm); | |
629 | |
630 if (strlen(gtk_label_get_label(GTK_LABEL(label))) <= 0) | |
631 return FALSE; | |
632 | |
633 window = gtk_dialog_new_with_buttons(GAIM_ALERT_TITLE, NULL, 0, GTK_STOCK_CLOSE, GTK_RESPONSE_OK, NULL); | |
634 gtk_dialog_set_default_response (GTK_DIALOG(window), GTK_RESPONSE_OK); | |
635 g_signal_connect(G_OBJECT(window), "response", G_CALLBACK(gtk_widget_destroy), NULL); | |
636 | |
11243 | 637 gtk_container_set_border_width (GTK_CONTAINER(window), GAIM_HIG_BOX_SPACE); |
9709 | 638 gtk_window_set_resizable(GTK_WINDOW(window), FALSE); |
639 gtk_dialog_set_has_separator(GTK_DIALOG(window), FALSE); | |
11243 | 640 gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(window)->vbox), GAIM_HIG_BORDER); |
641 gtk_container_set_border_width (GTK_CONTAINER(GTK_DIALOG(window)->vbox), GAIM_HIG_BOX_SPACE); | |
9709 | 642 |
11243 | 643 hbox = gtk_hbox_new(FALSE, GAIM_HIG_BORDER); |
9709 | 644 gtk_container_add(GTK_CONTAINER(GTK_DIALOG(window)->vbox), hbox); |
10219 | 645 img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_COOL, gtk_icon_size_from_name(GAIM_ICON_SIZE_DIALOG_COOL)); |
9709 | 646 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0); |
647 | |
648 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); | |
649 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); | |
650 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); | |
651 | |
652 gtk_widget_show_all(window); | |
653 return TRUE; | |
654 } | |
655 | |
656 static void | |
9730 | 657 gaim_gtkdialogs_info_cb(gpointer data, GaimRequestFields *fields) |
9709 | 658 { |
659 char *username; | |
660 gboolean found = FALSE; | |
661 GaimAccount *account; | |
662 | |
663 account = gaim_request_fields_get_account(fields, "account"); | |
664 | |
665 username = g_strdup(gaim_normalize(account, | |
666 gaim_request_fields_get_string(fields, "screenname"))); | |
667 | |
668 if (username != NULL && gaim_str_has_suffix(username, "rocksmyworld")) | |
9730 | 669 found = gaim_gtkdialogs_ee(username); |
9709 | 670 |
671 if (!found && username != NULL && *username != '\0' && account != NULL) | |
672 serv_get_info(gaim_account_get_connection(account), username); | |
673 | |
674 g_free(username); | |
675 } | |
676 | |
677 void | |
9714 | 678 gaim_gtkdialogs_info(void) |
9709 | 679 { |
680 GaimRequestFields *fields; | |
681 GaimRequestFieldGroup *group; | |
682 GaimRequestField *field; | |
683 | |
684 fields = gaim_request_fields_new(); | |
685 | |
686 group = gaim_request_field_group_new(NULL); | |
687 gaim_request_fields_add_group(fields, group); | |
688 | |
10668 | 689 field = gaim_request_field_string_new("screenname", _("_Name"), NULL, FALSE); |
9709 | 690 gaim_request_field_set_type_hint(field, "screenname"); |
691 gaim_request_field_set_required(field, TRUE); | |
692 gaim_request_field_group_add_field(group, field); | |
693 | |
694 field = gaim_request_field_account_new("account", _("_Account"), NULL); | |
10791
2ab4b5acc8d1
[gaim-migrate @ 12433]
Luke Schierer <lschiere@pidgin.im>
parents:
10774
diff
changeset
|
695 gaim_request_field_set_type_hint(field, "account"); |
9709 | 696 gaim_request_field_set_visible(field, |
697 (gaim_connections_get_all() != NULL && | |
698 gaim_connections_get_all()->next != NULL)); | |
699 gaim_request_field_set_required(field, TRUE); | |
700 gaim_request_field_group_add_field(group, field); | |
701 | |
702 gaim_request_fields(gaim_get_blist(), _("Get User Info"), | |
703 NULL, | |
10668 | 704 _("Please enter the screen name or alias of the person " |
705 "whose info you would like to view."), | |
9709 | 706 fields, |
9730 | 707 _("OK"), G_CALLBACK(gaim_gtkdialogs_info_cb), |
9709 | 708 _("Cancel"), NULL, |
709 NULL); | |
710 } | |
711 | |
712 static void | |
9730 | 713 gaim_gtkdialogs_log_cb(gpointer data, GaimRequestFields *fields) |
9709 | 714 { |
715 char *username; | |
716 GaimAccount *account; | |
717 | |
718 account = gaim_request_fields_get_account(fields, "account"); | |
719 | |
720 username = g_strdup(gaim_normalize(account, | |
721 gaim_request_fields_get_string(fields, "screenname"))); | |
722 | |
12232
375f1f3817a8
[gaim-migrate @ 14534]
Richard Laager <rlaager@wiktel.com>
parents:
12122
diff
changeset
|
723 if (username != NULL && *username != '\0' && account != NULL) |
375f1f3817a8
[gaim-migrate @ 14534]
Richard Laager <rlaager@wiktel.com>
parents:
12122
diff
changeset
|
724 { |
375f1f3817a8
[gaim-migrate @ 14534]
Richard Laager <rlaager@wiktel.com>
parents:
12122
diff
changeset
|
725 GaimGtkBuddyList *gtkblist = gaim_gtk_blist_get_default_gtk_blist(); |
375f1f3817a8
[gaim-migrate @ 14534]
Richard Laager <rlaager@wiktel.com>
parents:
12122
diff
changeset
|
726 GdkCursor *cursor = gdk_cursor_new(GDK_WATCH); |
375f1f3817a8
[gaim-migrate @ 14534]
Richard Laager <rlaager@wiktel.com>
parents:
12122
diff
changeset
|
727 |
375f1f3817a8
[gaim-migrate @ 14534]
Richard Laager <rlaager@wiktel.com>
parents:
12122
diff
changeset
|
728 gdk_window_set_cursor(gtkblist->window->window, cursor); |
375f1f3817a8
[gaim-migrate @ 14534]
Richard Laager <rlaager@wiktel.com>
parents:
12122
diff
changeset
|
729 gdk_cursor_unref(cursor); |
375f1f3817a8
[gaim-migrate @ 14534]
Richard Laager <rlaager@wiktel.com>
parents:
12122
diff
changeset
|
730 while (gtk_events_pending()) |
375f1f3817a8
[gaim-migrate @ 14534]
Richard Laager <rlaager@wiktel.com>
parents:
12122
diff
changeset
|
731 gtk_main_iteration(); |
375f1f3817a8
[gaim-migrate @ 14534]
Richard Laager <rlaager@wiktel.com>
parents:
12122
diff
changeset
|
732 |
9917 | 733 gaim_gtk_log_show(GAIM_LOG_IM, username, account); |
9709 | 734 |
12232
375f1f3817a8
[gaim-migrate @ 14534]
Richard Laager <rlaager@wiktel.com>
parents:
12122
diff
changeset
|
735 gdk_window_set_cursor(gtkblist->window->window, NULL); |
375f1f3817a8
[gaim-migrate @ 14534]
Richard Laager <rlaager@wiktel.com>
parents:
12122
diff
changeset
|
736 } |
375f1f3817a8
[gaim-migrate @ 14534]
Richard Laager <rlaager@wiktel.com>
parents:
12122
diff
changeset
|
737 |
9709 | 738 g_free(username); |
739 } | |
740 | |
9991 | 741 /* |
742 * TODO - This needs to deal with logs of all types, not just IM logs. | |
743 */ | |
9709 | 744 void |
9714 | 745 gaim_gtkdialogs_log(void) |
9709 | 746 { |
747 GaimRequestFields *fields; | |
748 GaimRequestFieldGroup *group; | |
749 GaimRequestField *field; | |
750 | |
751 fields = gaim_request_fields_new(); | |
752 | |
753 group = gaim_request_field_group_new(NULL); | |
754 gaim_request_fields_add_group(fields, group); | |
755 | |
10668 | 756 field = gaim_request_field_string_new("screenname", _("_Name"), NULL, FALSE); |
11025 | 757 gaim_request_field_set_type_hint(field, "screenname-all"); |
9709 | 758 gaim_request_field_set_required(field, TRUE); |
759 gaim_request_field_group_add_field(group, field); | |
760 | |
761 field = gaim_request_field_account_new("account", _("_Account"), NULL); | |
10791
2ab4b5acc8d1
[gaim-migrate @ 12433]
Luke Schierer <lschiere@pidgin.im>
parents:
10774
diff
changeset
|
762 gaim_request_field_set_type_hint(field, "account"); |
9709 | 763 gaim_request_field_account_set_show_all(field, TRUE); |
764 gaim_request_field_set_visible(field, | |
765 (gaim_accounts_get_all() != NULL && | |
766 gaim_accounts_get_all()->next != NULL)); | |
767 gaim_request_field_set_required(field, TRUE); | |
768 gaim_request_field_group_add_field(group, field); | |
769 | |
11025 | 770 gaim_request_fields(gaim_get_blist(), _("View User Log"), |
9709 | 771 NULL, |
10668 | 772 _("Please enter the screen name or alias of the person " |
773 "whose log you would like to view."), | |
9709 | 774 fields, |
9730 | 775 _("OK"), G_CALLBACK(gaim_gtkdialogs_log_cb), |
9709 | 776 _("Cancel"), NULL, |
777 NULL); | |
778 } | |
779 | |
9730 | 780 static void |
781 gaim_gtkdialogs_alias_contact_cb(GaimContact *contact, const char *new_alias) | |
782 { | |
783 gaim_contact_set_alias(contact, new_alias); | |
784 } | |
785 | |
786 void | |
787 gaim_gtkdialogs_alias_contact(GaimContact *contact) | |
788 { | |
9753 | 789 g_return_if_fail(contact != NULL); |
790 | |
9730 | 791 gaim_request_input(NULL, _("Alias Contact"), NULL, |
792 _("Enter an alias for this contact."), | |
793 contact->alias, FALSE, FALSE, NULL, | |
794 _("Alias"), G_CALLBACK(gaim_gtkdialogs_alias_contact_cb), | |
795 _("Cancel"), NULL, contact); | |
796 } | |
797 | |
798 static void | |
799 gaim_gtkdialogs_alias_buddy_cb(GaimBuddy *buddy, const char *new_alias) | |
800 { | |
801 gaim_blist_alias_buddy(buddy, new_alias); | |
802 serv_alias_buddy(buddy); | |
803 } | |
804 | |
805 void | |
9753 | 806 gaim_gtkdialogs_alias_buddy(GaimBuddy *buddy) |
9730 | 807 { |
9753 | 808 gchar *secondary; |
809 | |
810 g_return_if_fail(buddy != NULL); | |
811 | |
812 secondary = g_strdup_printf(_("Enter an alias for %s."), buddy->name); | |
9730 | 813 |
814 gaim_request_input(NULL, _("Alias Buddy"), NULL, | |
9753 | 815 secondary, buddy->alias, FALSE, FALSE, NULL, |
9730 | 816 _("Alias"), G_CALLBACK(gaim_gtkdialogs_alias_buddy_cb), |
9753 | 817 _("Cancel"), NULL, buddy); |
9730 | 818 |
819 g_free(secondary); | |
820 } | |
821 | |
822 static void | |
823 gaim_gtkdialogs_alias_chat_cb(GaimChat *chat, const char *new_alias) | |
9709 | 824 { |
825 gaim_blist_alias_chat(chat, new_alias); | |
826 } | |
827 | |
828 void | |
9730 | 829 gaim_gtkdialogs_alias_chat(GaimChat *chat) |
9709 | 830 { |
9753 | 831 g_return_if_fail(chat != NULL); |
832 | |
9709 | 833 gaim_request_input(NULL, _("Alias Chat"), NULL, |
834 _("Enter an alias for this chat."), | |
835 chat->alias, FALSE, FALSE, NULL, | |
9730 | 836 _("Alias"), G_CALLBACK(gaim_gtkdialogs_alias_chat_cb), |
9709 | 837 _("Cancel"), NULL, chat); |
838 } | |
839 | |
840 static void | |
9753 | 841 gaim_gtkdialogs_remove_contact_cb(GaimContact *contact) |
9709 | 842 { |
9730 | 843 GaimBlistNode *bnode, *cnode; |
844 GaimGroup *group; | |
845 | |
846 cnode = (GaimBlistNode *)contact; | |
847 group = (GaimGroup*)cnode->parent; | |
848 for (bnode = cnode->child; bnode; bnode = bnode->next) { | |
849 GaimBuddy *buddy = (GaimBuddy*)bnode; | |
850 if (gaim_account_is_connected(buddy->account)) | |
11643 | 851 gaim_account_remove_buddy(buddy->account, buddy, group); |
9730 | 852 } |
853 gaim_blist_remove_contact(contact); | |
854 } | |
855 | |
856 void | |
857 gaim_gtkdialogs_remove_contact(GaimContact *contact) | |
858 { | |
859 GaimBuddy *buddy = gaim_contact_get_priority_buddy(contact); | |
860 | |
9753 | 861 g_return_if_fail(contact != NULL); |
862 g_return_if_fail(buddy != NULL); | |
9730 | 863 |
864 if (((GaimBlistNode*)contact)->child == (GaimBlistNode*)buddy && | |
865 !((GaimBlistNode*)buddy)->next) { | |
866 gaim_gtkdialogs_remove_buddy(buddy); | |
867 } else { | |
10324 | 868 gchar *text; |
869 text = g_strdup_printf( | |
870 ngettext( | |
871 "You are about to remove the contact containing %s " | |
10816
c94f40ffcafb
[gaim-migrate @ 12471]
Luke Schierer <lschiere@pidgin.im>
parents:
10813
diff
changeset
|
872 "and %d other buddy from your buddy list. Do you " |
10324 | 873 "want to continue?", |
874 "You are about to remove the contact containing %s " | |
10816
c94f40ffcafb
[gaim-migrate @ 12471]
Luke Schierer <lschiere@pidgin.im>
parents:
10813
diff
changeset
|
875 "and %d other buddies from your buddy list. Do you " |
10324 | 876 "want to continue?", contact->totalsize - 1), |
877 buddy->name, contact->totalsize - 1); | |
9730 | 878 |
10222 | 879 gaim_request_action(contact, NULL, _("Remove Contact"), text, 0, contact, 2, |
12603
e4e47871c373
[gaim-migrate @ 14938]
Richard Laager <rlaager@wiktel.com>
parents:
12582
diff
changeset
|
880 _("_Remove Contact"), G_CALLBACK(gaim_gtkdialogs_remove_contact_cb), |
9730 | 881 _("Cancel"), NULL); |
882 | |
883 g_free(text); | |
884 } | |
9709 | 885 } |
886 | |
12406
bc45ab9756b5
[gaim-migrate @ 14713]
Richard Laager <rlaager@wiktel.com>
parents:
12374
diff
changeset
|
887 static void |
9753 | 888 gaim_gtkdialogs_remove_group_cb(GaimGroup *group) |
9709 | 889 { |
9730 | 890 GaimBlistNode *cnode, *bnode; |
891 | |
892 cnode = ((GaimBlistNode*)group)->child; | |
893 | |
894 while (cnode) { | |
895 if (GAIM_BLIST_NODE_IS_CONTACT(cnode)) { | |
896 bnode = cnode->child; | |
897 cnode = cnode->next; | |
898 while (bnode) { | |
899 GaimBuddy *buddy; | |
900 if (GAIM_BLIST_NODE_IS_BUDDY(bnode)) { | |
901 buddy = (GaimBuddy*)bnode; | |
902 bnode = bnode->next; | |
903 if (gaim_account_is_connected(buddy->account)) { | |
11643 | 904 gaim_account_remove_buddy(buddy->account, buddy, group); |
9730 | 905 gaim_blist_remove_buddy(buddy); |
906 } | |
907 } else { | |
908 bnode = bnode->next; | |
909 } | |
910 } | |
911 } else if (GAIM_BLIST_NODE_IS_CHAT(cnode)) { | |
912 GaimChat *chat = (GaimChat *)cnode; | |
913 cnode = cnode->next; | |
914 if (gaim_account_is_connected(chat->account)) | |
915 gaim_blist_remove_chat(chat); | |
916 } else { | |
917 cnode = cnode->next; | |
918 } | |
919 } | |
920 | |
921 gaim_blist_remove_group(group); | |
922 } | |
923 | |
924 void | |
925 gaim_gtkdialogs_remove_group(GaimGroup *group) | |
926 { | |
9753 | 927 gchar *text; |
928 | |
929 g_return_if_fail(group != NULL); | |
930 | |
10816
c94f40ffcafb
[gaim-migrate @ 12471]
Luke Schierer <lschiere@pidgin.im>
parents:
10813
diff
changeset
|
931 text = g_strdup_printf(_("You are about to remove the group %s and all its members from your buddy list. Do you want to continue?"), |
9753 | 932 group->name); |
9730 | 933 |
10222 | 934 gaim_request_action(group, NULL, _("Remove Group"), text, 0, group, 2, |
12603
e4e47871c373
[gaim-migrate @ 14938]
Richard Laager <rlaager@wiktel.com>
parents:
12582
diff
changeset
|
935 _("_Remove Group"), G_CALLBACK(gaim_gtkdialogs_remove_group_cb), |
9730 | 936 _("Cancel"), NULL); |
937 | |
938 g_free(text); | |
9709 | 939 } |
940 | |
10246 | 941 /* XXX - Some of this should be moved into the core, methinks. */ |
9709 | 942 static void |
9753 | 943 gaim_gtkdialogs_remove_buddy_cb(GaimBuddy *buddy) |
9709 | 944 { |
9730 | 945 GaimGroup *group; |
946 gchar *name; | |
947 GaimAccount *account; | |
948 | |
12088 | 949 group = gaim_buddy_get_group(buddy); |
9730 | 950 name = g_strdup(buddy->name); /* b->name is a crasher after remove_buddy */ |
951 account = buddy->account; | |
952 | |
9753 | 953 gaim_debug_info("blist", "Removing '%s' from buddy list.\n", buddy->name); |
11643 | 954 /* TODO - Should remove from blist first... then call gaim_account_remove_buddy()? */ |
955 gaim_account_remove_buddy(buddy->account, buddy, group); | |
9730 | 956 gaim_blist_remove_buddy(buddy); |
957 | |
958 g_free(name); | |
9709 | 959 } |
960 | |
961 void | |
9730 | 962 gaim_gtkdialogs_remove_buddy(GaimBuddy *buddy) |
9709 | 963 { |
9753 | 964 gchar *text; |
9730 | 965 |
9753 | 966 g_return_if_fail(buddy != NULL); |
9730 | 967 |
10816
c94f40ffcafb
[gaim-migrate @ 12471]
Luke Schierer <lschiere@pidgin.im>
parents:
10813
diff
changeset
|
968 text = g_strdup_printf(_("You are about to remove %s from your buddy list. Do you want to continue?"), |
9753 | 969 buddy->name); |
9730 | 970 |
10222 | 971 gaim_request_action(buddy, NULL, _("Remove Buddy"), text, 0, buddy, 2, |
12603
e4e47871c373
[gaim-migrate @ 14938]
Richard Laager <rlaager@wiktel.com>
parents:
12582
diff
changeset
|
972 _("_Remove Buddy"), G_CALLBACK(gaim_gtkdialogs_remove_buddy_cb), |
9730 | 973 _("Cancel"), NULL); |
974 | |
975 g_free(text); | |
976 } | |
9709 | 977 |
9730 | 978 static void |
9753 | 979 gaim_gtkdialogs_remove_chat_cb(GaimChat *chat) |
9730 | 980 { |
981 gaim_blist_remove_chat(chat); | |
982 } | |
9709 | 983 |
9730 | 984 void |
985 gaim_gtkdialogs_remove_chat(GaimChat *chat) | |
986 { | |
10877
99c1fb67b7bb
[gaim-migrate @ 12569]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
10874
diff
changeset
|
987 const gchar *name; |
99c1fb67b7bb
[gaim-migrate @ 12569]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
10874
diff
changeset
|
988 gchar *text; |
9753 | 989 |
990 g_return_if_fail(chat != NULL); | |
9730 | 991 |
10877
99c1fb67b7bb
[gaim-migrate @ 12569]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
10874
diff
changeset
|
992 name = gaim_chat_get_name(chat); |
99c1fb67b7bb
[gaim-migrate @ 12569]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
10874
diff
changeset
|
993 text = g_strdup_printf(_("You are about to remove the chat %s from your buddy list. Do you want to continue?"), |
99c1fb67b7bb
[gaim-migrate @ 12569]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
10874
diff
changeset
|
994 name ? name : ""); |
99c1fb67b7bb
[gaim-migrate @ 12569]
Daniel Atallah <daniel.atallah@gmail.com>
parents:
10874
diff
changeset
|
995 |
10222 | 996 gaim_request_action(chat, NULL, _("Remove Chat"), text, 0, chat, 2, |
12603
e4e47871c373
[gaim-migrate @ 14938]
Richard Laager <rlaager@wiktel.com>
parents:
12582
diff
changeset
|
997 _("_Remove Chat"), G_CALLBACK(gaim_gtkdialogs_remove_chat_cb), |
9730 | 998 _("Cancel"), NULL); |
999 | |
1000 g_free(text); | |
9709 | 1001 } |