Mercurial > pidgin.yaz
annotate src/about.c @ 8378:2b68c423357e
[gaim-migrate @ 9105]
" For people and systems which have libzephyr installed
(e.g Debian), this will allow the zephyr plugin to
optionally be linked against it, instead of building
and linking in the libzephyr that comes with gaim.
Why?
1) A gaim binary package can be compiled against a
locally installed libzephyr.a, and use either
unkerberized or kerberized zephyr depending on which
version of the zephyr shared libraries is installed.
2) It reduces the build speed and size of the zephyr
plugin (on Debian x86, from 6.5 MB to ~ 300 kb)
Also, I added a zephyr icon (a blue Z), that's similar
to the icons used by Windows and MacOS zephyr clients
at MIT." --Arun A Tharuvai
someone will have to tell me how to fix the win32 makefiles, and i'm not
sure he patched enough to get his icon to be actually used.
committer: Tailor Script <tailor@pidgin.im>
author | Luke Schierer <lschiere@pidgin.im> |
---|---|
date | Mon, 01 Mar 2004 18:08:42 +0000 |
parents | ad449554f1ab |
children | a1683af5b8f6 |
rev | line source |
---|---|
1 | 1 /* |
2 * gaim | |
3 * | |
8046 | 4 * Gaim is the legal property of its developers, whose names are too numerous |
5 * to list here. Please refer to the COPYRIGHT file distributed with this | |
6 * source distribution. | |
1 | 7 * |
8 * This program is free software; you can redistribute it and/or modify | |
3424 | 9 * it under the terms of the GNU General Public License as published by |
1 | 10 * the Free Software Foundation; either version 2 of the License, or |
11 * (at your option) any later version. | |
12 * | |
13 * This program is distributed in the hope that it will be useful, | |
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 * GNU General Public License for more details. | |
17 * | |
18 * You should have received a copy of the GNU General Public License | |
19 * along with this program; if not, write to the Free Software | |
20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
21 * | |
22 */ | |
23 | |
5872
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5024
diff
changeset
|
24 #include "internal.h" |
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5024
diff
changeset
|
25 #include "gtkimhtml.h" |
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5024
diff
changeset
|
26 #include "gtkutils.h" |
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5024
diff
changeset
|
27 #include "stock.h" |
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5024
diff
changeset
|
28 #include "ui.h" |
1 | 29 |
5872
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5024
diff
changeset
|
30 /* XXX For WEBSITE */ |
1 | 31 #include "gaim.h" |
32 | |
1250
b5783215b245
[gaim-migrate @ 1260]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1233
diff
changeset
|
33 static GtkWidget *about = NULL; |
1 | 34 |
35 static void destroy_about() | |
36 { | |
37 if (about) | |
38 gtk_widget_destroy(about); | |
39 about = NULL; | |
40 } | |
41 | |
4082 | 42 void show_about(GtkWidget *w, void *data) |
1 | 43 { |
7942 | 44 GtkWidget *hbox; |
1 | 45 GtkWidget *vbox; |
3721 | 46 GtkWidget *logo; |
7942 | 47 GtkWidget *label; |
48 GtkWidget *sw; | |
49 GtkWidget *text; | |
50 GtkWidget *bbox; | |
51 GtkWidget *button; | |
52 char *str, *labeltext; | |
1250
b5783215b245
[gaim-migrate @ 1260]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1233
diff
changeset
|
53 |
7942 | 54 if (about != NULL) |
55 return; | |
1 | 56 |
7942 | 57 GAIM_DIALOG(about); |
58 gtk_window_set_default_size(GTK_WINDOW(about), 450, -1); | |
59 gtk_window_set_title(GTK_WINDOW(about), _("About Gaim")); | |
60 gtk_window_set_role(GTK_WINDOW(about), "about"); | |
61 gtk_window_set_resizable(GTK_WINDOW(about), TRUE); | |
62 gtk_widget_realize(about); | |
1205 | 63 |
7942 | 64 hbox = gtk_hbox_new(FALSE, 12); |
65 gtk_container_set_border_width(GTK_CONTAINER(hbox), 12); | |
66 gtk_container_add(GTK_CONTAINER(about), hbox); | |
1205 | 67 |
7942 | 68 vbox = gtk_vbox_new(FALSE, 12); |
69 gtk_container_add(GTK_CONTAINER(hbox), vbox); | |
70 | |
71 logo = gtk_image_new_from_stock(GAIM_STOCK_LOGO, gtk_icon_size_from_name(GAIM_ICON_SIZE_LOGO)); | |
72 gtk_box_pack_start(GTK_BOX(vbox), logo, FALSE, FALSE, 0); | |
1205 | 73 |
7942 | 74 labeltext = g_strdup_printf(_("<span weight=\"bold\" size=\"larger\">Gaim v%s</span>"), VERSION); |
75 label = gtk_label_new(NULL); | |
76 gtk_label_set_markup(GTK_LABEL(label), labeltext); | |
77 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); | |
78 gtk_misc_set_alignment(GTK_MISC(label), 0.5, 0); | |
79 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); | |
80 g_free(labeltext); | |
2950 | 81 |
7942 | 82 sw = gtk_scrolled_window_new(NULL, NULL); |
83 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), | |
84 GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); | |
85 gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_IN); | |
86 gtk_widget_set_size_request(sw, -1, 350); | |
87 gtk_box_pack_start(GTK_BOX(vbox), sw, FALSE, FALSE, 0); | |
4006 | 88 |
7942 | 89 text = gtk_imhtml_new(NULL, NULL); |
90 gtk_container_add(GTK_CONTAINER(sw), text); | |
91 gaim_setup_imhtml(text); | |
4006 | 92 |
7942 | 93 gtk_imhtml_append_text(GTK_IMHTML(text), |
94 _("Gaim is a modular Instant Messaging client capable of " | |
95 "using AIM, ICQ, Yahoo!, MSN, IRC, Jabber, Napster, " | |
96 "Zephyr, and Gadu-Gadu all at once. It is written using " | |
97 "Gtk+ and is licensed under the GPL.<BR><BR>"), GTK_IMHTML_NO_SCROLL); | |
98 | |
99 gtk_imhtml_append_text(GTK_IMHTML(text), | |
100 "<FONT SIZE=\"3\">URL:</FONT> <A HREF=\"" GAIM_WEBSITE "\">" | |
101 GAIM_WEBSITE "</A><BR><BR>", GTK_IMHTML_NO_SCROLL); | |
4006 | 102 |
7942 | 103 gtk_imhtml_append_text(GTK_IMHTML(text), |
104 _("<FONT SIZE=\"3\">IRC:</FONT> #gaim on irc.freenode.net" | |
105 "<BR><BR>"), GTK_IMHTML_NO_SCROLL); | |
4006 | 106 |
7942 | 107 /* Active Developers */ |
108 str = g_strconcat( | |
109 "<FONT SIZE=\"3\">", _("Active Developers"), ":</FONT><BR>" | |
110 " Rob Flynn (", _("maintainer"), ") " | |
8196 | 111 "<<A HREF=\"mailto:gaim@robflynn.com\">gaim@robflynn.com</A>><BR>" |
7942 | 112 " Sean Egan (", _("lead developer"), ") " |
113 "<<A HREF=\"mailto:sean.egan@binghamton.edu\">" | |
114 "bj91704@binghamton.edu</A>><BR>" | |
115 " Christian 'ChipX86' Hammond (", _("developer & webmaster"), ")<BR>" | |
116 " Herman Bloggs (", _("win32 port"), ") " | |
117 "<<A HREF=\"mailto:hermanator12002@yahoo.com\">" | |
118 "hermanator12002@yahoo.com</A>><BR>" | |
119 " Nathan 'faceprint' Walp (", _("developer"), ")<BR>" | |
120 " Mark 'KingAnt' Doliner (", _("developer"), ")<BR>" | |
121 " Ethan 'Paco-Paco' Blanton (", _("developer"), ")<br>" | |
122 " Luke 'LSchiere' Schierer (", _("support"), ")<BR>" | |
123 "<BR>", NULL); | |
124 gtk_imhtml_append_text(GTK_IMHTML(text), str, GTK_IMHTML_NO_SCROLL); | |
125 g_free(str); | |
4006 | 126 |
7942 | 127 /* Crazy Patch Writers */ |
128 str = g_strconcat( | |
129 "<FONT SIZE=\"3\">", _("Crazy Patch Writers"), ":</FONT><BR>" | |
130 " Benjamin Miller<BR>" | |
131 " Decklin Foster<BR>" | |
132 " Etan 'deryni' Reisner<BR>" | |
133 " Robert 'Robot101' McQueen<BR>" | |
134 " Tim 'marv' Ringenbach<br>" | |
135 " Kevin 'SimGuy' Stange<br>" | |
136 " Stu 'nosnilmot' Tomlinson<br>" | |
137 "<BR>", NULL); | |
138 gtk_imhtml_append_text(GTK_IMHTML(text), str, GTK_IMHTML_NO_SCROLL); | |
139 g_free(str); | |
140 | |
141 /* Retired Developers */ | |
142 str = g_strconcat( | |
143 "<FONT SIZE=\"3\">", _("Retired Developers"), ":</FONT><BR>" | |
144 " Adam Fritzler (", _("former libfaim maintainer"), ")<BR>" | |
145 " Eric Warmenhoven (", _("former lead developer"), ") " | |
146 "<<A HREF=\"mailto:warmenhoven@yahoo.com\">" | |
147 "warmenhoven@yahoo.com</A>><BR>" | |
148 " Jim Duchek (", _("former maintainer"), ")<BR>" | |
149 " Jim Seymour (", _("former Jabber developer"), ")<BR>" | |
150 " Mark Spencer (", _("original author"), ") " | |
151 "<<A HREF=\"mailto:markster@marko.net\">" | |
152 "markster@marko.net</A>><BR>" | |
153 " Syd Logan (", _("hacker and designated driver [lazy bum]"), | |
154 ")<BR>" | |
155 "<BR>", NULL); | |
156 gtk_imhtml_append_text(GTK_IMHTML(text), str, GTK_IMHTML_NO_SCROLL); | |
157 g_free(str); | |
4006 | 158 |
7942 | 159 /* Current Translators */ |
160 str = g_strconcat( | |
161 "<FONT SIZE=\"3\">", _("Current Translators"), ":</FONT><BR>" | |
162 " <b>", _("Catalan"), " (ca)</b> - Robert Millan <<a href=\"mailto: zeratul2@wanadoo.es\">zeratul2@wanadoo.es</a>><br>" | |
163 " <b>", _("Czech"), " (cs)</b> - Miloslav Trmac <<a href=\"mailto: mitr@volny.cz\">mitr@volny.cz</a>><br>" | |
164 " <b>", _("Danish"), " (da)</b> - Morten Brix Pedersen <<a href=\"mailto: morten@wtf.dk\">morten@wtf.dk</a>><br>" | |
165 " <b>", _("British English"), "(en_GB)</b> - Luke Ross <<a href=\"mailto: lukeross@sys3175.co.uk\">lukeross@sys3175.co.uk</a>><br>" | |
166 " <b>", _("German"), " (de)</b> - Björn Voigt <<a href=\"mailto: bjoern@cs.tu-berlin.de\">bjoern@cs.tu-berlin.de</a>><br>" | |
167 " <b>", _("Spanish"), " (es)</b> - Javier Fernández-Sanguino Peña <<a href=\"mailto: jfs@debian.org\">jfs@debian.org</a>><br>" | |
168 " <b>", _("Finnish"), " (fi)</b> - Arto Alakulju <<a href=\"mailto: arto@alakulju.net\">arto@alakulju.net</a>><br>" | |
169 " <b>", _("French"), " (fr)</b> - Éric Boumaour <<a href=\"mailto: zongo_fr@users.sourceforge.net\">zongo_fr@users.sourceforge.net</a>><br>" | |
170 " <b>", _("Hindi"), " (hi)</b> - Ravishankar Shrivastava <<a href=\"mailto: raviratlami@yahoo.com\">raviratlami@yahoo.com</a>><br>" | |
171 " <b>", _("Hungarian"), " (hu)</b> - Zoltan Sutto <<a href=\"mailto: suttozoltan@chello.hu\">suttozoltan@chello.hu</a>><br>" | |
172 " <b>", _("Italian"), " (it)</b> - Claudio Satriano <<a href=\"mailto: satriano@na.infn.it\">satriano@na.infn.it</a>><br>" | |
173 " <b>", _("Korean"), " (ko)</b> - Kyung-uk Son <<a href=\"mailto: vvs740@chol.com\">vvs740@chol.com</a>><br>" | |
174 " <b>", _("Dutch; Flemish"), " (nl)</b> - Vincent van Adrighem <<a href=\"mailto: V.vanAdrighem@dirck.mine.nu\">V.vanAdrighem@dirck.mine.nu</a>><br>" | |
175 " <b>", _("Norwegian"), " (no)</b> - Petter Johan Olsen<br>" | |
176 " <b>", _("Polish"), " (pl)</b> - Krzysztof <<a href=\"krzysztof@foltman.com\">krzysztof@foltman.com</a>>, Emil <<a href=\"emil5@go2.pl\">emil5@go2.pl</a>><br>" | |
177 " <b>", _("Portuguese"), " (pt)</b> - Duarte Henriques <<a href=\"mailto:duarte_henriques@myrealbox.com\">duarte_henriques@myrealbox.com</a>><br>" | |
178 " <b>", _("Portuguese-Brazil"), " (pt_BR)</b> - Maurício de Lemos Rodrigues Collares Neto <<a href=\"mailto: mauricioc@myrealbox.com\">mauricioc@myrealbox.com</a>><br>" | |
179 " <b>", _("Romanian"), " (ro)</b> - Mişu Moldovan <<a href=\"mailto: dumol@go.ro\">dumol@go.ro</a>><br>" | |
8034 | 180 " <b>", _("Russian"), "(ru)</b> - Alexandre Prokoudine <<a href=\"mailto: avp@altlinux.ru\">avp@altlinux.ru</a>><br>" |
7942 | 181 " <b>", _("Serbian"), " (sr)</b> - Danilo Šegan <<a href=\"mailto: dsegan@gmx.net\">dsegan@gmx.net</a>>, Aleksandar Urosevic <<a href=\"mailto: urke@users.sourceforge.net\">urke@users.sourceforge.net</a>><br>" |
182 " <b>", _("Swedish"), " (sv)</b> - Tore Lundqvist <<a href=\"mailto: tlt@mima.x.se\">tlt@mima.x.se</a>><br>" | |
183 " <b>", _("Vietnamese"), "(vi)</b> - T.M.Thanh, ", _("Gnome Vi Team"), ". <<a href=\"mailto: gnomevi-list@lists.sf.net\">gnomevi-list@lists.sf.net</a>><br>" | |
184 " <b>", _("Simplified Chinese"), " (zh_CN)</b> - Funda Wang <<a href=\"mailto: fundawang@linux.net.cn\">fundawang@linux.net.cn</a>><br>" | |
185 " <b>", _("Traditional Chinese"), " (zh_TW)</b> - Ambrose C. Li <<a href=\"mailto: acli@ada.dhs.org\">acli@ada.dhs.org</a>>, Paladin R. Liu <<a href=\"mailto: paladin@ms1.hinet.net\">paladin@ms1.hinet.net</a>><br>" | |
186 "<BR>", NULL); | |
187 gtk_imhtml_append_text(GTK_IMHTML(text), str, GTK_IMHTML_NO_SCROLL); | |
188 g_free(str); | |
6546 | 189 |
7942 | 190 /* Past Translators */ |
191 str = g_strconcat( | |
192 "<FONT SIZE=\"3\">", _("Past Translators"), ":</FONT><BR>" | |
193 " <b>", _("Amharic"), " (am)</b> - Daniel Yacob<br>" | |
194 " <b>", _("Bulgarian"), " (bg)</b> - Hristo Todorov<br>" | |
195 " <b>", _("Catalan"), " (ca)</b> - JM Pérez Cáncer<br>" | |
196 " <b>", _("Czech"), " (cs)</b> - Honza Král<br>" | |
197 " <b>", _("German"), " (de)</b> - Daniel Seifert, Karsten Weiss<br>" | |
198 " <b>", _("Spanish"), " (es)</b> - Amaya Rodrigo, Alejandro G Villar, Nicolás Lichtmaier, JM Pérez Cáncer<br>" | |
199 " <b>", _("Finnish"), " (fi)</b> - Tero Kuusela<br>" | |
200 " <b>", _("French"), " (fr)</b> - sebfrance, Stéphane Pontier, Stéphane Wirtel, Loïc Jeannin<br>" | |
201 " <b>", _("Hebrew"), " (he)</b> - Pavel Bibergal<br>" | |
202 " <b>", _("Italian"), " (it)</b> - Salvatore di Maggio<br>" | |
203 " <b>", _("Japanese"), " (ja)</b> - Ryosuke Kutsuna, Taku Yasui, Junichi Uekawa<br>" | |
204 " <b>", _("Korean"), " (ko)</b> - Sang-hyun S, A Ho-seok Lee<br>" | |
205 " <b>", _("Polish"), " (pl)</b> - Przemysław Sułek<br>" | |
206 " <b>", _("Russian"), " (ru)</b> - Sergey Volozhanin<br>" | |
207 " <b>", _("Slovak"), " (sk)</b> - Daniel Režný<br>" | |
208 " <b>", _("Swedish"), " (sv)</b> - Christian Rose<br>" | |
209 " <b>", _("Chinese"), " (zh_CN, zh_TW)</b> - Hashao, Rocky S. Lee<br>" | |
210 "<BR>", NULL); | |
211 gtk_imhtml_append_text(GTK_IMHTML(text), str, GTK_IMHTML_NO_SCROLL); | |
212 g_free(str); | |
6546 | 213 |
7942 | 214 gtk_adjustment_set_value(gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(sw)), 0); |
1205 | 215 |
7942 | 216 /* Close Button */ |
217 bbox = gtk_hbutton_box_new(); | |
218 gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_END); | |
219 gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 0); | |
622 | 220 |
7942 | 221 button = gtk_button_new_from_stock(GTK_STOCK_CLOSE); |
222 gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0); | |
1210 | 223 |
7942 | 224 g_signal_connect_swapped(G_OBJECT(button), "clicked", |
225 G_CALLBACK(destroy_about), G_OBJECT(about)); | |
226 g_signal_connect(G_OBJECT(about), "destroy", | |
227 G_CALLBACK(destroy_about), G_OBJECT(about)); | |
1205 | 228 |
7942 | 229 /* this makes the sizes not work? */ |
230 GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT); | |
231 gtk_widget_grab_default(button); | |
1210 | 232 |
233 /* Let's give'em something to talk about -- woah woah woah */ | |
5024 | 234 gtk_widget_show_all(about); |
4157 | 235 gtk_window_present(GTK_WINDOW(about)); |
1205 | 236 } |