annotate src/gtkdialogs.c @ 10550:522cd02f235f

[gaim-migrate @ 11924] This should fix the annoying problem of the docked buddy list stealing screen real estate when it is hidden. Turns out it was actually using the section of the screen, you just couldn't see it. I think this is the last of the bugs that I introduced into the docking stuff. committer: Tailor Script <tailor@pidgin.im>
author Daniel Atallah <daniel.atallah@gmail.com>
date Fri, 28 Jan 2005 05:01:24 +0000
parents e8b160971254
children 2e720df50861
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
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
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
5 * gaim
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
6 *
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
7 * Gaim is the legal property of its developers, whose names are too numerous
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
8 * to list here. Please refer to the COPYRIGHT file distributed with this
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
9 * source distribution.
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
10 *
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
11 * This program is free software; you can redistribute it and/or modify
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
12 * it under the terms of the GNU General Public License as published by
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
13 * the Free Software Foundation; either version 2 of the License, or
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
14 * (at your option) any later version.
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
15 *
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
16 * This program is distributed in the hope that it will be useful,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
19 * GNU General Public License for more details.
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
20 *
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
21 * You should have received a copy of the GNU General Public License
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
22 * along with this program; if not, write to the Free Software
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
24 */
9791
4a15962c344a [gaim-migrate @ 10659]
Mark Doliner <mark@kingant.net>
parents: 9778
diff changeset
25 #include "internal.h"
4a15962c344a [gaim-migrate @ 10659]
Mark Doliner <mark@kingant.net>
parents: 9778
diff changeset
26 #include "gtkgaim.h"
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
27
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
28 #include "debug.h"
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
29 #include "notify.h"
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
30 #include "prpl.h"
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
31 #include "request.h"
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
32 #include "util.h"
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
33
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
34 #include "gtkdialogs.h"
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
35 #include "gtkimhtml.h"
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
36 #include "gtkimhtmltoolbar.h"
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
37 #include "gtklog.h"
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
38 #include "gtkutils.h"
10297
ec140184437b [gaim-migrate @ 11480]
Luke Schierer <lschiere@pidgin.im>
parents: 10266
diff changeset
39 #include "gtkstock.h"
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
40
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
41 static GList *dialogwindows = NULL;
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
42
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
43 static GtkWidget *about = NULL;
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
44
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
45 struct warning {
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
46 GtkWidget *window;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
47 GtkWidget *anon;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
48 char *who;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
49 GaimConnection *gc;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
50 };
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
51
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
52 struct developer {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
53 char *name;
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
54 char *role;
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
55 char *email;
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
56 };
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
57
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
58 struct translator {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
59 char *language;
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
60 char *abbr;
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
61 char *name;
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
62 char *email;
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
63 };
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
64
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
65 static struct developer developers[] = {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
66 {"Rob Flynn", N_("maintainer"), "gaim@robflynn.com"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
67 {"Sean Egan", N_("lead developer"), "sean.egan@binghamton.edu"},
10508
4cc999cc6718 [gaim-migrate @ 11802]
Luke Schierer <lschiere@pidgin.im>
parents: 10493
diff changeset
68 {"Daniel 'datallah' Atallah", N_("developer"), NULL},
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
69 {"Christian 'ChipX86' Hammond", N_("developer & webmaster"), NULL},
10095
b28f9be379b3 [gaim-migrate @ 11114]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 9991
diff changeset
70 {"Herman Bloggs", N_("win32 port"), "herman@bluedigits.com"},
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
71 {"Nathan 'faceprint' Walp", N_("developer"), NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
72 {"Mark 'KingAnt' Doliner", N_("developer"), NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
73 {"Ethan 'Paco-Paco' Blanton", N_("developer"), NULL},
10370
acd5b7af0409 [gaim-migrate @ 11590]
Luke Schierer <lschiere@pidgin.im>
parents: 10369
diff changeset
74 {"Etan 'deryni' Reisner", N_("developer"), NULL},
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
75 {"Tim 'marv' Ringenbach", N_("developer"), NULL},
10369
584c792dd15c [gaim-migrate @ 11588]
Luke Schierer <lschiere@pidgin.im>
parents: 10324
diff changeset
76 {"Luke 'LSchiere' Schierer", N_("support"), "lschiere@users.sf.net"},
10116
9f358a718f38 [gaim-migrate @ 11153]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10095
diff changeset
77 {"Stu 'nosnilmot' Tomlinson", N_("developer"), NULL},
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
78 {NULL, NULL, NULL}
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
79 };
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
80
10372
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
81 static struct developer patch_writers[] = {
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
82 {"Ka-Hing 'javabsp' Cheung", NULL, NULL},
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
83 {"Felipe 'shx' Contreras", NULL, NULL},
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
84 {"Decklin Foster", NULL, NULL},
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
85 {"Gary 'grim' Kramlich", NULL, NULL},
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
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
92 static struct developer retired_developers[] = {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
93 {"Adam Fritzler", N_("former libfaim maintainer"), NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
94 {"Eric Warmenhoven", N_("former lead developer"), "warmenhoven@yahoo.com"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
95 {"Jim Duchek", N_("former maintainer"), NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
96 {"Jim Seymour", N_("former Jabber developer"), NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
97 {"Mark Spencer", N_("original author"), "markster@marko.net"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
98 {"Syd Logan", N_("hacker and designated driver [lazy bum]"), NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
99 {NULL, NULL, NULL}
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
100 };
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
101
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
102 static struct translator current_translators[] = {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
103 {N_("Bulgarian"), "bg", "Alexander Shopov", "al_shopov@users.sf.net"},
10131
a6c3b931214f [gaim-migrate @ 11194]
Mark Doliner <mark@kingant.net>
parents: 10116
diff changeset
104 {N_("Catalan"), "ca", "Josep Puigdemont", "tradgnome@softcatala.org"},
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
105 {N_("Czech"), "cs", "Miloslav Trmac", "mitr@volny.cz"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
106 {N_("Danish"), "da", "Morten Brix Pedersen", "morten@wtf.dk"},
10131
a6c3b931214f [gaim-migrate @ 11194]
Mark Doliner <mark@kingant.net>
parents: 10116
diff changeset
107 {N_("Australian English"), "en_AU", "Peter Lawler", "trans@six-by-nine.com.au"},
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
108 {N_("British English"), "en_GB", "Luke Ross", "lukeross@sys3175.co.uk"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
109 {N_("Canadian English"), "en_CA", "Adam Weinberger", "adamw@gnome.org"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
110 {N_("German"), "de", "Björn Voigt", "bjoern@cs.tu-berlin.de"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
111 {N_("Spanish"), "es", "Javier Fernández-Sanguino Peña", "jfs@debian.org"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
112 {N_("Finnish"), "fi", "Arto Alakulju", "arto@alakulju.net"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
113 {N_("French"), "fr", "Éric Boumaour", "zongo_fr@users.sourceforge.net"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
114 {N_("Hebrew"), "he", "Pavel Bibergal", "cyberkm203@hotmail.com"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
115 {N_("Hindi"), "hi", "Ravishankar Shrivastava", "raviratlami@yahoo.com"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
116 {N_("Hungarian"), "hu", "Zoltan Sutto", "suttozoltan@chello.hu"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
117 {N_("Italian"), "it", "Claudio Satriano", "satriano@na.infn.it"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
118 {N_("Japanese"), "ja", "Takashi Aihana", "aihana@gnome.gr.jp"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
119 {N_("Lithuanian"), "lt", "Gediminas Čičinskas", "gediminas@parok.lt"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
120 {N_("Korean"), "ko", "Kyung-uk Son", "vvs740@chol.com"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
121 {N_("Dutch; Flemish"), "nl", "Vincent van Adrighem", "V.vanAdrighem@dirck.mine.nu"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
122 {N_("Macedonian"), "mk", "Tomislav Markovski", "herrera@users.sf.net"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
123 {N_("Norwegian"), "no", "Petter Johan Olsen", "petter.olsen@cc.uit.no"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
124 {N_("Polish"), "pl", "Krzysztof Foltman, Emil Nowak", "krzysztof@foltman.com;emil5@go2.pl"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
125 {N_("Portuguese"), "pt", "Duarte Henriques", "duarte_henriques@myrealbox.com"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
126 {N_("Portuguese-Brazil"), "pt_BR", "Maurício de Lemos Rodrigues Collares Neto", "mauricioc@gmail.com"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
127 {N_("Romanian"), "ro", "Mişu Moldovan", "dumol@go.ro"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
128 {N_("Russian"), "ru", "Dmitry Beloglazov", "dmaa@users.sf.net"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
129 {N_("Serbian"), "sr", "Danilo Šegan, Aleksandar Urosevic", "dsegan@gmx.net;urke@users.sourceforge.net"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
130 {N_("Slovenian"), "sl", "Matjaz Horvat", "matjaz@owca.info"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
131 {N_("Swedish"), "sv", "Tore Lundqvist", "tlt@mima.x.se"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
132 {N_("Vietnamese"), "vi", N_("T.M.Thanh and the Gnome-Vi Team"), "gnomevi-list@lists.sf.net"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
133 {N_("Simplified Chinese"), "zh_CN", "Funda Wang", "fundawang@linux.net.cn"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
134 {N_("Traditional Chinese"), "zh_TW", "Ambrose C. Li, Paladin R. Liu", "acli@ada.dhs.org;paladin@ms1.hinet.net"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
135 {NULL, NULL, NULL, NULL}
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
136 };
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
137
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
138
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
139 static struct translator past_translators[] = {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
140 {N_("Amharic"), "am", "Daniel Yacob", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
141 {N_("Bulgarian"), "bg", "Hristo Todorov", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
142 {N_("Catalan"), "ca", "JM Pérez Cáncer", NULL},
10131
a6c3b931214f [gaim-migrate @ 11194]
Mark Doliner <mark@kingant.net>
parents: 10116
diff changeset
143 {N_("Catalan"), "ca", "Robert Millan", NULL},
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
144 {N_("Czech"), "cs", "Honza Král", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
145 {N_("German"), "de", "Daniel Seifert, Karsten Weiss", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
146 {N_("Spanish"), "es", "Amaya Rodrigo, Alejandro G Villar, Nicolás Lichtmaier, JM Pérez Cáncer", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
147 {N_("Finnish"), "fi", "Tero Kuusela", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
148 {N_("French"), "fr", "Sébastien François, Stéphane Pontier, Stéphane Wirtel, Loïc Jeannin", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
149 {N_("Italian"), "it", "Salvatore di Maggio", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
150 {N_("Japanese"), "ja", "Ryosuke Kutsuna, Taku Yasui, Junichi Uekawa", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
151 {N_("Korean"), "ko", "Sang-hyun S, A Ho-seok Lee", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
152 {N_("Polish"), "pl", "Przemysław Sułek", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
153 {N_("Russian"), "ru", "Sergey Volozhanin", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
154 {N_("Russian"), "ru", "Alexandre Prokoudine", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
155 {N_("Slovak"), "sk", "Daniel Režný", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
156 {N_("Swedish"), "sv", "Christian Rose", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
157 {N_("Chinese"), "zh_CN, zh_TW", "Hashao, Rocky S. Lee", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
158 {NULL, NULL, NULL, NULL}
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
159 };
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
160
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
161 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
162 gaim_gtkdialogs_destroy_all()
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
163 {
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
164 while (dialogwindows) {
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
165 gtk_widget_destroy(dialogwindows->data);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
166 dialogwindows = g_list_remove(dialogwindows, dialogwindows->data);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
167 }
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
168 }
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
169
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
170 static void destroy_about()
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
171 {
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
172 if (about != NULL)
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
173 gtk_widget_destroy(about);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
174 about = NULL;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
175 }
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
176
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
177 void gaim_gtkdialogs_about(GtkWidget *w, void *data)
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
178 {
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
179 GtkWidget *hbox;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
180 GtkWidget *vbox;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
181 GtkWidget *logo;
10175
53410b84336f [gaim-migrate @ 11290]
Mark Doliner <mark@kingant.net>
parents: 10167
diff changeset
182 GtkWidget *frame;
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
183 GtkWidget *text;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
184 GtkWidget *bbox;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
185 GtkWidget *button;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
186 GtkTextIter iter;
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
187 GString *str;
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
188 int i;
10266
2a9ec10e0c4c [gaim-migrate @ 11412]
Mark Doliner <mark@kingant.net>
parents: 10246
diff changeset
189 AtkObject *obj;
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
190
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
191 if (about != NULL) {
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
192 gtk_window_present(GTK_WINDOW(about));
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
193 return;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
194 }
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
195
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
196 GAIM_DIALOG(about);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
197 gtk_window_set_default_size(GTK_WINDOW(about), 450, -1);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
198 gtk_window_set_title(GTK_WINDOW(about), _("About Gaim"));
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
199 gtk_window_set_role(GTK_WINDOW(about), "about");
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
200 gtk_window_set_resizable(GTK_WINDOW(about), TRUE);
9778
3d40125495e3 [gaim-migrate @ 10646]
Mark Doliner <mark@kingant.net>
parents: 9758
diff changeset
201 gtk_window_set_default_size(GTK_WINDOW(about), 340, 550); /* Golden ratio in da hizzy */
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
202
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
203 hbox = gtk_hbox_new(FALSE, 12);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
204 gtk_container_set_border_width(GTK_CONTAINER(hbox), 12);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
205 gtk_container_add(GTK_CONTAINER(about), hbox);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
206
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
207 vbox = gtk_vbox_new(FALSE, 12);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
208 gtk_container_add(GTK_CONTAINER(hbox), vbox);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
209
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
210 logo = gtk_image_new_from_stock(GAIM_STOCK_LOGO, gtk_icon_size_from_name(GAIM_ICON_SIZE_LOGO));
10266
2a9ec10e0c4c [gaim-migrate @ 11412]
Mark Doliner <mark@kingant.net>
parents: 10246
diff changeset
211 obj = gtk_widget_get_accessible(logo);
2a9ec10e0c4c [gaim-migrate @ 11412]
Mark Doliner <mark@kingant.net>
parents: 10246
diff changeset
212 atk_object_set_description(obj, "Gaim " VERSION);
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
213 gtk_box_pack_start(GTK_BOX(vbox), logo, FALSE, FALSE, 0);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
214
10175
53410b84336f [gaim-migrate @ 11290]
Mark Doliner <mark@kingant.net>
parents: 10167
diff changeset
215 frame = gaim_gtk_create_imhtml(FALSE, &text, NULL);
10522
e8b160971254 [gaim-migrate @ 11838]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10508
diff changeset
216 gtk_imhtml_set_format_functions(GTK_IMHTML(text), GTK_IMHTML_ALL ^ GTK_IMHTML_SMILEY);
10175
53410b84336f [gaim-migrate @ 11290]
Mark Doliner <mark@kingant.net>
parents: 10167
diff changeset
217 gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 0);
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
218
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
219 str = g_string_sized_new(4096);
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
220
10153
0b43f6fef9b5 [gaim-migrate @ 11231]
Mark Doliner <mark@kingant.net>
parents: 10131
diff changeset
221 g_string_append(str,
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
222 _("Gaim is a modular messaging client capable of using "
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
223 "AIM, MSN, Yahoo!, Jabber, ICQ, IRC, SILC, "
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
224 "Novell GroupWise, Napster, Zephyr, and Gadu-Gadu "
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
225 "all at once. It is written using "
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
226 "Gtk+ and is licensed under the GPL.<BR><BR>"));
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
227
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
228 g_string_append(str, "<FONT SIZE=\"4\">URL:</FONT> <A HREF=\""
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
229 GAIM_WEBSITE "\">" GAIM_WEBSITE "</A><BR/><BR/>");
10493
387d06e21ae3 [gaim-migrate @ 11783]
Nathan Walp <nwalp@pidgin.im>
parents: 10411
diff changeset
230 #ifdef _WIN32
387d06e21ae3 [gaim-migrate @ 11783]
Nathan Walp <nwalp@pidgin.im>
parents: 10411
diff changeset
231 g_string_append_printf(str, _("<FONT SIZE=\"4\">IRC:</FONT> "
387d06e21ae3 [gaim-migrate @ 11783]
Nathan Walp <nwalp@pidgin.im>
parents: 10411
diff changeset
232 "#wingaim on irc.freenode.net<BR><BR>"));
387d06e21ae3 [gaim-migrate @ 11783]
Nathan Walp <nwalp@pidgin.im>
parents: 10411
diff changeset
233 #else
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
234 g_string_append_printf(str, _("<FONT SIZE=\"4\">IRC:</FONT> "
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
235 "#gaim on irc.freenode.net<BR><BR>"));
10493
387d06e21ae3 [gaim-migrate @ 11783]
Nathan Walp <nwalp@pidgin.im>
parents: 10411
diff changeset
236 #endif
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
237
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
238 /* Active Developers */
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
239 g_string_append_printf(str, "<FONT SIZE=\"4\">%s:</FONT><BR/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
240 _("Active Developers"));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
241 for (i = 0; developers[i].name != NULL; i++) {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
242 if (developers[i].email != NULL) {
10116
9f358a718f38 [gaim-migrate @ 11153]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10095
diff changeset
243 g_string_append_printf(str, " %s (%s) &lt;<a href=\"mailto:%s\">%s</a>&gt;<br/>",
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
244 developers[i].name, _(developers[i].role),
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
245 developers[i].email, developers[i].email);
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
246 } else {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
247 g_string_append_printf(str, " %s (%s)<br/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
248 developers[i].name, _(developers[i].role));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
249 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
250 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
251 g_string_append(str, "<BR/>");
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
252
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
253 /* Crazy Patch Writers */
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
254 g_string_append_printf(str, "<FONT SIZE=\"4\">%s:</FONT><BR/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
255 _("Crazy Patch Writers"));
10372
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
256 for (i = 0; patch_writers[i].name != NULL; i++) {
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
257 if (patch_writers[i].email != NULL) {
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
258 g_string_append_printf(str, " %s &lt;<a href=\"mailto:%s\">%s</a>&gt;<br/>",
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
259 patch_writers[i].name,
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
260 patch_writers[i].email, patch_writers[i].email);
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
261 } else {
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
262 g_string_append_printf(str, " %s<br/>",
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
263 patch_writers[i].name);
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
264 }
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
265 }
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
266 g_string_append(str, "<BR/>");
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
267
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
268 /* Retired Developers */
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
269 g_string_append_printf(str, "<FONT SIZE=\"4\">%s:</FONT><BR/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
270 _("Retired Developers"));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
271 for (i = 0; retired_developers[i].name != NULL; i++) {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
272 if (retired_developers[i].email != NULL) {
10116
9f358a718f38 [gaim-migrate @ 11153]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10095
diff changeset
273 g_string_append_printf(str, " %s (%s) &lt;<a href=\"mailto:%s\">%s</a>&gt;<br/>",
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
274 retired_developers[i].name, _(retired_developers[i].role),
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
275 retired_developers[i].email, retired_developers[i].email);
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
276 } else {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
277 g_string_append_printf(str, " %s (%s)<br/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
278 retired_developers[i].name, _(retired_developers[i].role));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
279 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
280 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
281 g_string_append(str, "<BR/>");
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
282
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
283 /* Current Translators */
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
284 g_string_append_printf(str, "<FONT SIZE=\"4\">%s:</FONT><BR/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
285 _("Current Translators"));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
286 for (i = 0; current_translators[i].language != NULL; i++) {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
287 if (current_translators[i].email != NULL) {
10116
9f358a718f38 [gaim-migrate @ 11153]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10095
diff changeset
288 g_string_append_printf(str, " <b>%s (%s)</b> - %s &lt;<a href=\"mailto:%s\">%s</a>&gt;<br/>",
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
289 _(current_translators[i].language),
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
290 current_translators[i].abbr,
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
291 _(current_translators[i].name),
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
292 current_translators[i].email,
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
293 current_translators[i].email);
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
294 } else {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
295 g_string_append_printf(str, " <b>%s (%s)</b> - %s<br/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
296 _(current_translators[i].language),
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
297 current_translators[i].abbr,
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
298 _(current_translators[i].name));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
299 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
300 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
301 g_string_append(str, "<BR/>");
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
302
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
303 /* Past Translators */
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
304 g_string_append_printf(str, "<FONT SIZE=\"4\">%s:</FONT><BR/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
305 _("Past Translators"));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
306 for (i = 0; past_translators[i].language != NULL; i++) {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
307 if (past_translators[i].email != NULL) {
10116
9f358a718f38 [gaim-migrate @ 11153]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10095
diff changeset
308 g_string_append_printf(str, " <b>%s (%s)</b> - %s &lt;<a href=\"mailto:%s\">%s</a>&gt;<br/>",
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
309 _(past_translators[i].language),
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
310 past_translators[i].abbr,
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
311 _(past_translators[i].name),
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
312 past_translators[i].email,
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
313 past_translators[i].email);
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
314 } else {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
315 g_string_append_printf(str, " <b>%s (%s)</b> - %s<br/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
316 _(past_translators[i].language),
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
317 past_translators[i].abbr,
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
318 _(past_translators[i].name));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
319 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
320 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
321 g_string_append(str, "<BR/>");
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
322
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
323 /* The following primarly intented for user/developer interaction and thus
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
324 ought not be translated */
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
325 g_string_append(str, "<b>Gaim was compiled with the following:</b><br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
326 #ifdef CONFIG_ARGS /* win32 build doesn't use configure */
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
327 g_string_append(str, "Arguments to <i>./configure</i>: " CONFIG_ARGS "<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
328 #endif
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
329 #ifdef DEBUG
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
330 g_string_append(str, "Print debugging messages: Yes<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
331 #else
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
332 g_string_append(str, "Print debugging messages: No<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
333 #endif /* DEBUG */
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
334 #ifdef ENABLE_BINRELOC
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
335 g_string_append(str, "Binary relocation: Enabled<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
336 #else
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
337 g_string_append(str, "Binary relocation: Disabled<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
338 #endif /* ENABLE_BINRELOC */
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
339 #ifdef GAIM_PLUGINS
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
340 g_string_append(str, "Plugins: Enabled<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
341 #else
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
342 g_string_append(str, "Plugins: Disabled<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
343 #endif /* GAIM_PLUGINS */
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
344 #ifdef HAVE_SSL
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
345 g_string_append(str, "SSL: Gaim was compiled with SSL support<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
346 #else
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
347 g_string_append(str, "SSL: Gaim was <b><i>NOT</i></b> compiled with any SSL support!<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
348 #endif
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
349 #ifdef HAVE_GNUTLS
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
350 g_string_append(str, "GNUTLS: Enabled<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
351 #else
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
352 g_string_append(str, "GNUTLS: Disabled<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
353 #endif
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
354 #ifdef HAVE_NSS
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
355 g_string_append(str, "NSS: Enabled<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
356 #else
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
357 g_string_append(str, "NSS: Disabled<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
358 #endif
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
359 #ifdef HAVE_TK
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
360 g_string_append(str, "TK: Yes<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
361 #else
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
362 g_string_append(str, "TK: No<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
363 #endif
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
364 #ifdef LIBZEPHYR_EXT
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
365 g_string_append(str, "External libzephyr: Yes<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
366 #else
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
367 g_string_append(str, "External libzephyr: No<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
368 #endif
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
369 #ifdef ZEPHYR_USES_KERBEROS
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
370 g_string_append(str, "Zephyr uses Kerberos: Yes<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
371 #else
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
372 g_string_append(str, "Zephyr uses Kerberos: No<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
373 #endif
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
374 #ifdef USE_AO
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
375 g_string_append(str, "AO: Yes<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
376 #else
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
377 g_string_append(str, "AO: No<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
378 #endif
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
379 #ifdef USE_NAS_AUDIO
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
380 g_string_append(str, "NAS Audio: Yes<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
381 #else
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
382 g_string_append(str, "NAS Audio: No<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
383 #endif
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
384 #ifdef USE_GTKSPELL
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
385 g_string_append(str, "GtkSpell: Enabled<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
386 #else
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
387 g_string_append(str, "GtkSpell: Disabled<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
388 #endif
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
389 #ifdef USE_SCREENSAVER
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
390 g_string_append(str, "XScreenSaver support: Yes<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
391 #else
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
392 g_string_append(str, "XScreenSaver support: No<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
393 #endif
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
394 #ifdef USE_SM
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
395 g_string_append(str, "X SM support: Yes<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
396 #else
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
397 g_string_append(str, "X SM support: No<br/>");
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
398 #endif
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
399
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
400 /* End of not to be translated section */
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
401
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
402 gtk_imhtml_append_text(GTK_IMHTML(text), str->str, GTK_IMHTML_NO_SCROLL);
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
403 g_string_free(str, TRUE);
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
404
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
405 gtk_text_buffer_get_start_iter(gtk_text_view_get_buffer(GTK_TEXT_VIEW(text)), &iter);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
406 gtk_text_buffer_place_cursor(gtk_text_view_get_buffer(GTK_TEXT_VIEW(text)), &iter);
10153
0b43f6fef9b5 [gaim-migrate @ 11231]
Mark Doliner <mark@kingant.net>
parents: 10131
diff changeset
407
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
408 /* Close Button */
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
409 bbox = gtk_hbutton_box_new();
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
410 gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_END);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
411 gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 0);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
412
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
413 button = gtk_button_new_from_stock(GTK_STOCK_CLOSE);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
414 gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
415
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
416 g_signal_connect_swapped(G_OBJECT(button), "clicked",
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
417 G_CALLBACK(destroy_about), G_OBJECT(about));
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
418 g_signal_connect(G_OBJECT(about), "destroy",
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
419 G_CALLBACK(destroy_about), G_OBJECT(about));
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
420
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
421 /* this makes the sizes not work? */
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
422 GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
423 gtk_widget_grab_default(button);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
424
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
425 /* Let's give'em something to talk about -- woah woah woah */
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
426 gtk_widget_show_all(about);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
427 gtk_window_present(GTK_WINDOW(about));
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
428 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
429
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
430 static void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
431 gaim_gtkdialogs_im_cb(gpointer data, GaimRequestFields *fields)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
432 {
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
433 GaimAccount *account;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
434 const char *username;
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
435
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
436 account = gaim_request_fields_get_account(fields, "account");
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
437 username = gaim_request_fields_get_string(fields, "screenname");
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
438
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
439 gaim_gtkdialogs_im_with_user(account, username);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
440 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
441
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
442 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
443 gaim_gtkdialogs_im(void)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
444 {
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
445 GaimRequestFields *fields;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
446 GaimRequestFieldGroup *group;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
447 GaimRequestField *field;
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
448
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
449 fields = gaim_request_fields_new();
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
450
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
451 group = gaim_request_field_group_new(NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
452 gaim_request_fields_add_group(fields, group);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
453
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
454 field = gaim_request_field_string_new("screenname", _("_Screen name"),
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
455 NULL, FALSE);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
456 gaim_request_field_set_required(field, TRUE);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
457 gaim_request_field_set_type_hint(field, "screenname");
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
458 gaim_request_field_group_add_field(group, field);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
459
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
460 field = gaim_request_field_account_new("account", _("_Account"), NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
461 gaim_request_field_set_visible(field,
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
462 (gaim_connections_get_all() != NULL &&
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
463 gaim_connections_get_all()->next != NULL));
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
464 gaim_request_field_set_required(field, TRUE);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
465 gaim_request_field_group_add_field(group, field);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
466
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
467 gaim_request_fields(gaim_get_blist(), _("New Instant Message"),
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
468 NULL,
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
469 _("Please enter the screen name of the person you "
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
470 "would like to IM."),
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
471 fields,
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
472 _("OK"), G_CALLBACK(gaim_gtkdialogs_im_cb),
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
473 _("Cancel"), NULL,
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
474 NULL);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
475 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
476
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
477 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
478 gaim_gtkdialogs_im_with_user(GaimAccount *account, const char *username)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
479 {
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
480 GaimConversation *conv;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
481 GaimConvWindow *win;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
482 GaimGtkWindow *gtkwin;
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
483
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
484 g_return_if_fail(account != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
485 g_return_if_fail(username != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
486
10246
a66cf83552dc [gaim-migrate @ 11386]
Mark Doliner <mark@kingant.net>
parents: 10222
diff changeset
487 conv = gaim_find_conversation_with_account(GAIM_CONV_IM, username, account);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
488
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
489 if (conv == NULL)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
490 conv = gaim_conversation_new(GAIM_CONV_IM, account, username);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
491
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
492 win = gaim_conversation_get_window(conv);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
493 gtkwin = GAIM_GTK_WINDOW(win);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
494
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
495 gtk_window_present(GTK_WINDOW(gtkwin->window));
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
496 gaim_conv_window_switch_conversation(win, gaim_conversation_get_index(conv));
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
497 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
498
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
499 static gboolean
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
500 gaim_gtkdialogs_ee(const char *ee)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
501 {
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
502 GtkWidget *window;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
503 GtkWidget *hbox;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
504 GtkWidget *label;
10219
f37516ae6a0b [gaim-migrate @ 11347]
Mark Doliner <mark@kingant.net>
parents: 10193
diff changeset
505 GtkWidget *img;
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
506 gchar *norm = gaim_strreplace(ee, "rocksmyworld", "");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
507
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
508 label = gtk_label_new(NULL);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
509 if (!strcmp(norm, "zilding"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
510 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
511 "<span weight=\"bold\" size=\"large\" foreground=\"purple\">Amazing! Simply Amazing!</span>");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
512 else if (!strcmp(norm, "robflynn"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
513 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
514 "<span weight=\"bold\" size=\"large\" foreground=\"#1f6bad\">Pimpin\' Penguin Style! *Waddle Waddle*</span>");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
515 else if (!strcmp(norm, "flynorange"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
516 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
517 "<span weight=\"bold\" size=\"large\" foreground=\"blue\">You should be me. I'm so cute!</span>");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
518 else if (!strcmp(norm, "ewarmenhoven"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
519 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
520 "<span weight=\"bold\" size=\"large\" foreground=\"orange\">Now that's what I like!</span>");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
521 else if (!strcmp(norm, "markster97"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
522 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
523 "<span weight=\"bold\" size=\"large\" foreground=\"brown\">Ahh, and excellent choice!</span>");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
524 else if (!strcmp(norm, "seanegn"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
525 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
526 "<span weight=\"bold\" size=\"large\" foreground=\"#009900\">Everytime you click my name, an angel gets its wings.</span>");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
527 else if (!strcmp(norm, "chipx86"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
528 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
529 "<span weight=\"bold\" size=\"large\" foreground=\"red\">This sunflower seed taste like pizza.</span>");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
530 else if (!strcmp(norm, "markdoliner"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
531 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
532 "<span weight=\"bold\" size=\"large\" foreground=\"#6364B1\">Hey! I was in that tumbleweed!</span>");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
533 else if (!strcmp(norm, "lschiere"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
534 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
535 "<span weight=\"bold\" size=\"large\" foreground=\"gray\">I'm not anything.</span>");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
536 g_free(norm);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
537
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
538 if (strlen(gtk_label_get_label(GTK_LABEL(label))) <= 0)
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
539 return FALSE;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
540
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
541 window = gtk_dialog_new_with_buttons(GAIM_ALERT_TITLE, NULL, 0, GTK_STOCK_CLOSE, GTK_RESPONSE_OK, NULL);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
542 gtk_dialog_set_default_response (GTK_DIALOG(window), GTK_RESPONSE_OK);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
543 g_signal_connect(G_OBJECT(window), "response", G_CALLBACK(gtk_widget_destroy), NULL);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
544
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
545 gtk_container_set_border_width (GTK_CONTAINER(window), 6);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
546 gtk_window_set_resizable(GTK_WINDOW(window), FALSE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
547 gtk_dialog_set_has_separator(GTK_DIALOG(window), FALSE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
548 gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(window)->vbox), 12);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
549 gtk_container_set_border_width (GTK_CONTAINER(GTK_DIALOG(window)->vbox), 6);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
550
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
551 hbox = gtk_hbox_new(FALSE, 12);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
552 gtk_container_add(GTK_CONTAINER(GTK_DIALOG(window)->vbox), hbox);
10219
f37516ae6a0b [gaim-migrate @ 11347]
Mark Doliner <mark@kingant.net>
parents: 10193
diff changeset
553 img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_COOL, gtk_icon_size_from_name(GAIM_ICON_SIZE_DIALOG_COOL));
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
554 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
555
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
556 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
557 gtk_misc_set_alignment(GTK_MISC(label), 0, 0);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
558 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
559
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
560 gtk_widget_show_all(window);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
561 return TRUE;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
562 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
563
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
564 static void
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
565 gaim_gtkdialogs_info_cb(gpointer data, GaimRequestFields *fields)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
566 {
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
567 char *username;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
568 gboolean found = FALSE;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
569 GaimAccount *account;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
570
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
571 account = gaim_request_fields_get_account(fields, "account");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
572
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
573 username = g_strdup(gaim_normalize(account,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
574 gaim_request_fields_get_string(fields, "screenname")));
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
575
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
576 if (username != NULL && gaim_str_has_suffix(username, "rocksmyworld"))
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
577 found = gaim_gtkdialogs_ee(username);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
578
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
579 if (!found && username != NULL && *username != '\0' && account != NULL)
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
580 serv_get_info(gaim_account_get_connection(account), username);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
581
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
582 g_free(username);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
583 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
584
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
585 void
9714
2273790bb518 [gaim-migrate @ 10575]
Mark Doliner <mark@kingant.net>
parents: 9709
diff changeset
586 gaim_gtkdialogs_info(void)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
587 {
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
588 GaimRequestFields *fields;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
589 GaimRequestFieldGroup *group;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
590 GaimRequestField *field;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
591
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
592 fields = gaim_request_fields_new();
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
593
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
594 group = gaim_request_field_group_new(NULL);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
595 gaim_request_fields_add_group(fields, group);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
596
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
597 field = gaim_request_field_string_new("screenname", _("_Screen name"),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
598 NULL, FALSE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
599 gaim_request_field_set_type_hint(field, "screenname");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
600 gaim_request_field_set_required(field, TRUE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
601 gaim_request_field_group_add_field(group, field);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
602
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
603 field = gaim_request_field_account_new("account", _("_Account"), NULL);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
604 gaim_request_field_set_visible(field,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
605 (gaim_connections_get_all() != NULL &&
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
606 gaim_connections_get_all()->next != NULL));
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
607 gaim_request_field_set_required(field, TRUE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
608 gaim_request_field_group_add_field(group, field);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
609
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
610 gaim_request_fields(gaim_get_blist(), _("Get User Info"),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
611 NULL,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
612 _("Please enter the screen name of the person whose "
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
613 "info you would like to view."),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
614 fields,
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
615 _("OK"), G_CALLBACK(gaim_gtkdialogs_info_cb),
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
616 _("Cancel"), NULL,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
617 NULL);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
618 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
619
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
620 static void
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
621 gaim_gtkdialogs_log_cb(gpointer data, GaimRequestFields *fields)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
622 {
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
623 char *username;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
624 GaimAccount *account;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
625
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
626 account = gaim_request_fields_get_account(fields, "account");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
627
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
628 username = g_strdup(gaim_normalize(account,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
629 gaim_request_fields_get_string(fields, "screenname")));
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
630
9917
e74eb0d11f86 [gaim-migrate @ 10809]
Luke Schierer <lschiere@pidgin.im>
parents: 9905
diff changeset
631 if(username != NULL && *username != '\0' && account != NULL )
e74eb0d11f86 [gaim-migrate @ 10809]
Luke Schierer <lschiere@pidgin.im>
parents: 9905
diff changeset
632 gaim_gtk_log_show(GAIM_LOG_IM, username, account);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
633
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
634 g_free(username);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
635 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
636
9991
cc4b2125d05d [gaim-migrate @ 10904]
Mark Doliner <mark@kingant.net>
parents: 9976
diff changeset
637 /*
cc4b2125d05d [gaim-migrate @ 10904]
Mark Doliner <mark@kingant.net>
parents: 9976
diff changeset
638 * TODO - This needs to deal with logs of all types, not just IM logs.
cc4b2125d05d [gaim-migrate @ 10904]
Mark Doliner <mark@kingant.net>
parents: 9976
diff changeset
639 */
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
640 void
9714
2273790bb518 [gaim-migrate @ 10575]
Mark Doliner <mark@kingant.net>
parents: 9709
diff changeset
641 gaim_gtkdialogs_log(void)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
642 {
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
643 GaimRequestFields *fields;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
644 GaimRequestFieldGroup *group;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
645 GaimRequestField *field;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
646
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
647 fields = gaim_request_fields_new();
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
648
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
649 group = gaim_request_field_group_new(NULL);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
650 gaim_request_fields_add_group(fields, group);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
651
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
652 field = gaim_request_field_string_new("screenname", _("_Screen name"),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
653 NULL, FALSE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
654 gaim_request_field_set_type_hint(field, "screenname");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
655 gaim_request_field_set_required(field, TRUE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
656 gaim_request_field_group_add_field(group, field);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
657
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
658 field = gaim_request_field_account_new("account", _("_Account"), NULL);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
659 gaim_request_field_account_set_show_all(field, TRUE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
660 gaim_request_field_set_visible(field,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
661 (gaim_accounts_get_all() != NULL &&
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
662 gaim_accounts_get_all()->next != NULL));
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
663 gaim_request_field_set_required(field, TRUE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
664 gaim_request_field_group_add_field(group, field);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
665
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
666 gaim_request_fields(gaim_get_blist(), _("Get User Log"),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
667 NULL,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
668 _("Please enter the screen name of the person whose "
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
669 "log you would like to view."),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
670 fields,
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
671 _("OK"), G_CALLBACK(gaim_gtkdialogs_log_cb),
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
672 _("Cancel"), NULL,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
673 NULL);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
674 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
675
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
676 static void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
677 gaim_gtkdialogs_warn_cb(GtkWidget *widget, gint resp, struct warning *w)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
678 {
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
679 if (resp == GTK_RESPONSE_OK)
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
680 serv_warn(w->gc, w->who, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w->anon)));
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
681
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
682 dialogwindows = g_list_remove(dialogwindows, w->window);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
683 gtk_widget_destroy(w->window);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
684
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
685 g_free(w->who);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
686 g_free(w);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
687 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
688
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
689 /*
9991
cc4b2125d05d [gaim-migrate @ 10904]
Mark Doliner <mark@kingant.net>
parents: 9976
diff changeset
690 * TODO - Make this use the request API, if possible.
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
691 */
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
692 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
693 gaim_gtkdialogs_warn(GaimConnection *gc, const char *who)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
694 {
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
695 gchar *labeltext;
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
696 GtkWidget *hbox, *vbox;
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
697 GtkWidget *label;
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
698 GtkWidget *img;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
699 struct warning *w;
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
700
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
701 g_return_if_fail(gc != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
702 g_return_if_fail(who != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
703
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
704 w = g_new0(struct warning, 1);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
705 w->who = g_strdup(who);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
706 w->gc = gc;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
707
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
708 w->window = gtk_dialog_new_with_buttons(_("Warn User"), NULL, 0,
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
709 GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
710 GAIM_STOCK_WARN, GTK_RESPONSE_OK, NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
711 gtk_dialog_set_default_response (GTK_DIALOG(w->window), GTK_RESPONSE_OK);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
712 g_signal_connect(G_OBJECT(w->window), "response", G_CALLBACK(gaim_gtkdialogs_warn_cb), w);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
713
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
714 gtk_container_set_border_width (GTK_CONTAINER(w->window), 6);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
715 gtk_window_set_resizable(GTK_WINDOW(w->window), FALSE);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
716 gtk_dialog_set_has_separator(GTK_DIALOG(w->window), FALSE);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
717 gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(w->window)->vbox), 12);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
718 gtk_container_set_border_width (GTK_CONTAINER(GTK_DIALOG(w->window)->vbox), 6);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
719
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
720 hbox = gtk_hbox_new(FALSE, 12);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
721 gtk_container_add(GTK_CONTAINER(GTK_DIALOG(w->window)->vbox), hbox);
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
722
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
723 img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_WARNING, GTK_ICON_SIZE_DIALOG);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
724 gtk_misc_set_alignment(GTK_MISC(img), 0, 0);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
725 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
726
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
727 vbox = gtk_vbox_new(FALSE, 0);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
728 gtk_container_add(GTK_CONTAINER(hbox), vbox);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
729 labeltext = g_strdup_printf(_("<span weight=\"bold\" size=\"larger\">Warn %s?</span>\n\n"
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
730 "This will increase %s's warning level and he or she will be subject to harsher rate limiting.\n"), who, who);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
731 label = gtk_label_new(NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
732 gtk_label_set_markup(GTK_LABEL(label), labeltext);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
733 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
734 gtk_misc_set_alignment(GTK_MISC(label), 0, 0);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
735 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
736 g_free(labeltext);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
737
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
738 w->anon = gtk_check_button_new_with_mnemonic(_("Warn _anonymously?"));
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
739 gtk_box_pack_start(GTK_BOX(vbox), w->anon, FALSE, FALSE, 0);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
740
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
741 hbox = gtk_hbox_new(FALSE, 6);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
742 gtk_container_add(GTK_CONTAINER(vbox), hbox);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
743 img = gtk_image_new_from_stock(GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_MENU);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
744 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
745 labeltext = _("<b>Anonymous warnings are less severe.</b>");
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
746 label = gtk_label_new(NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
747 gtk_label_set_markup(GTK_LABEL(label), labeltext);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
748 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
749 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
750
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
751 dialogwindows = g_list_prepend(dialogwindows, w->window);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
752 gtk_widget_show_all(w->window);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
753 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
754
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
755 static void
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
756 gaim_gtkdialogs_alias_contact_cb(GaimContact *contact, const char *new_alias)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
757 {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
758 gaim_contact_set_alias(contact, new_alias);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
759 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
760
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
761 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
762 gaim_gtkdialogs_alias_contact(GaimContact *contact)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
763 {
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
764 g_return_if_fail(contact != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
765
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
766 gaim_request_input(NULL, _("Alias Contact"), NULL,
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
767 _("Enter an alias for this contact."),
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
768 contact->alias, FALSE, FALSE, NULL,
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
769 _("Alias"), G_CALLBACK(gaim_gtkdialogs_alias_contact_cb),
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
770 _("Cancel"), NULL, contact);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
771 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
772
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
773 static void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
774 gaim_gtkdialogs_alias_buddy_cb(GaimBuddy *buddy, const char *new_alias)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
775 {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
776 gaim_blist_alias_buddy(buddy, new_alias);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
777 serv_alias_buddy(buddy);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
778 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
779
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
780 void
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
781 gaim_gtkdialogs_alias_buddy(GaimBuddy *buddy)
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
782 {
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
783 gchar *secondary;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
784
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
785 g_return_if_fail(buddy != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
786
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
787 secondary = g_strdup_printf(_("Enter an alias for %s."), buddy->name);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
788
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
789 gaim_request_input(NULL, _("Alias Buddy"), NULL,
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
790 secondary, buddy->alias, FALSE, FALSE, NULL,
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
791 _("Alias"), G_CALLBACK(gaim_gtkdialogs_alias_buddy_cb),
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
792 _("Cancel"), NULL, buddy);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
793
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
794 g_free(secondary);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
795 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
796
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
797 static void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
798 gaim_gtkdialogs_alias_chat_cb(GaimChat *chat, const char *new_alias)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
799 {
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
800 gaim_blist_alias_chat(chat, new_alias);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
801 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
802
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
803 void
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
804 gaim_gtkdialogs_alias_chat(GaimChat *chat)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
805 {
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
806 g_return_if_fail(chat != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
807
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
808 gaim_request_input(NULL, _("Alias Chat"), NULL,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
809 _("Enter an alias for this chat."),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
810 chat->alias, FALSE, FALSE, NULL,
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
811 _("Alias"), G_CALLBACK(gaim_gtkdialogs_alias_chat_cb),
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
812 _("Cancel"), NULL, chat);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
813 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
814
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
815 static void
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
816 gaim_gtkdialogs_remove_contact_cb(GaimContact *contact)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
817 {
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
818 GaimBlistNode *bnode, *cnode;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
819 GaimGroup *group;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
820
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
821 cnode = (GaimBlistNode *)contact;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
822 group = (GaimGroup*)cnode->parent;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
823 for (bnode = cnode->child; bnode; bnode = bnode->next) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
824 GaimBuddy *buddy = (GaimBuddy*)bnode;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
825 if (gaim_account_is_connected(buddy->account))
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
826 serv_remove_buddy(buddy->account->gc, buddy, group);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
827 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
828 gaim_blist_remove_contact(contact);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
829 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
830
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
831 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
832 gaim_gtkdialogs_remove_contact(GaimContact *contact)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
833 {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
834 GaimBuddy *buddy = gaim_contact_get_priority_buddy(contact);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
835
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
836 g_return_if_fail(contact != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
837 g_return_if_fail(buddy != NULL);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
838
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
839 if (((GaimBlistNode*)contact)->child == (GaimBlistNode*)buddy &&
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
840 !((GaimBlistNode*)buddy)->next) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
841 gaim_gtkdialogs_remove_buddy(buddy);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
842 } else {
10324
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
843 gchar *text;
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
844 text = g_strdup_printf(
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
845 ngettext(
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
846 "You are about to remove the contact containing %s "
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
847 "and %d other buddy from your buddy list. Do you "
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
848 "want to continue?",
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
849 "You are about to remove the contact containing %s "
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
850 "and %d other buddies from your buddy list. Do you "
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
851 "want to continue?", contact->totalsize - 1),
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
852 buddy->name, contact->totalsize - 1);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
853
10222
224c9f244a3a [gaim-migrate @ 11351]
Sean Egan <seanegan@gmail.com>
parents: 10219
diff changeset
854 gaim_request_action(contact, NULL, _("Remove Contact"), text, 0, contact, 2,
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
855 _("Remove Contact"), G_CALLBACK(gaim_gtkdialogs_remove_contact_cb),
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
856 _("Cancel"), NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
857
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
858 g_free(text);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
859 }
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
860 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
861
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
862 void
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
863 gaim_gtkdialogs_remove_group_cb(GaimGroup *group)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
864 {
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
865 GaimBlistNode *cnode, *bnode;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
866
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
867 cnode = ((GaimBlistNode*)group)->child;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
868
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
869 while (cnode) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
870 if (GAIM_BLIST_NODE_IS_CONTACT(cnode)) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
871 bnode = cnode->child;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
872 cnode = cnode->next;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
873 while (bnode) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
874 GaimBuddy *buddy;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
875 if (GAIM_BLIST_NODE_IS_BUDDY(bnode)) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
876 GaimConversation *conv;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
877 buddy = (GaimBuddy*)bnode;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
878 bnode = bnode->next;
10246
a66cf83552dc [gaim-migrate @ 11386]
Mark Doliner <mark@kingant.net>
parents: 10222
diff changeset
879 conv = gaim_find_conversation_with_account(GAIM_CONV_IM,
a66cf83552dc [gaim-migrate @ 11386]
Mark Doliner <mark@kingant.net>
parents: 10222
diff changeset
880 buddy->name,
a66cf83552dc [gaim-migrate @ 11386]
Mark Doliner <mark@kingant.net>
parents: 10222
diff changeset
881 buddy->account);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
882 if (gaim_account_is_connected(buddy->account)) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
883 serv_remove_buddy(buddy->account->gc, buddy, group);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
884 gaim_blist_remove_buddy(buddy);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
885 if (conv)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
886 gaim_conversation_update(conv,
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
887 GAIM_CONV_UPDATE_REMOVE);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
888 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
889 } else {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
890 bnode = bnode->next;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
891 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
892 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
893 } else if (GAIM_BLIST_NODE_IS_CHAT(cnode)) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
894 GaimChat *chat = (GaimChat *)cnode;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
895 cnode = cnode->next;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
896 if (gaim_account_is_connected(chat->account))
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
897 gaim_blist_remove_chat(chat);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
898 } else {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
899 cnode = cnode->next;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
900 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
901 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
902
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
903 gaim_blist_remove_group(group);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
904 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
905
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
906 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
907 gaim_gtkdialogs_remove_group(GaimGroup *group)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
908 {
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
909 gchar *text;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
910
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
911 g_return_if_fail(group != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
912
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
913 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?"),
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
914 group->name);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
915
10222
224c9f244a3a [gaim-migrate @ 11351]
Sean Egan <seanegan@gmail.com>
parents: 10219
diff changeset
916 gaim_request_action(group, NULL, _("Remove Group"), text, 0, group, 2,
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
917 _("Remove Group"), G_CALLBACK(gaim_gtkdialogs_remove_group_cb),
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
918 _("Cancel"), NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
919
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
920 g_free(text);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
921 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
922
10246
a66cf83552dc [gaim-migrate @ 11386]
Mark Doliner <mark@kingant.net>
parents: 10222
diff changeset
923 /* XXX - Some of this should be moved into the core, methinks. */
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
924 static void
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
925 gaim_gtkdialogs_remove_buddy_cb(GaimBuddy *buddy)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
926 {
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
927 GaimGroup *group;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
928 GaimConversation *conv;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
929 gchar *name;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
930 GaimAccount *account;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
931
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
932 group = gaim_find_buddys_group(buddy);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
933 name = g_strdup(buddy->name); /* b->name is a crasher after remove_buddy */
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
934 account = buddy->account;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
935
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
936 gaim_debug_info("blist", "Removing '%s' from buddy list.\n", buddy->name);
9991
cc4b2125d05d [gaim-migrate @ 10904]
Mark Doliner <mark@kingant.net>
parents: 9976
diff changeset
937 /* TODO - Should remove from blist first... then call serv_remove_buddy()? */
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
938 serv_remove_buddy(buddy->account->gc, buddy, group);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
939 gaim_blist_remove_buddy(buddy);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
940
10246
a66cf83552dc [gaim-migrate @ 11386]
Mark Doliner <mark@kingant.net>
parents: 10222
diff changeset
941 conv = gaim_find_conversation_with_account(GAIM_CONV_IM, name, account);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
942 if (conv != NULL)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
943 gaim_conversation_update(conv, GAIM_CONV_UPDATE_REMOVE);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
944
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
945 g_free(name);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
946 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
947
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
948 void
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
949 gaim_gtkdialogs_remove_buddy(GaimBuddy *buddy)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
950 {
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
951 gchar *text;
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
952
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
953 g_return_if_fail(buddy != NULL);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
954
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
955 text = g_strdup_printf(_("You are about to remove %s from your buddy list. Do you want to continue?"),
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
956 buddy->name);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
957
10222
224c9f244a3a [gaim-migrate @ 11351]
Sean Egan <seanegan@gmail.com>
parents: 10219
diff changeset
958 gaim_request_action(buddy, NULL, _("Remove Buddy"), text, 0, buddy, 2,
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
959 _("Remove Buddy"), G_CALLBACK(gaim_gtkdialogs_remove_buddy_cb),
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
960 _("Cancel"), NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
961
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
962 g_free(text);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
963 }
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
964
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
965 static void
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
966 gaim_gtkdialogs_remove_chat_cb(GaimChat *chat)
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
967 {
9918
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
968 char *name = NULL;
10167
cf45c2a6a7cf [gaim-migrate @ 11254]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10153
diff changeset
969 GaimAccount *account;
9918
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
970 GaimConversation *conv = NULL;
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
971
10167
cf45c2a6a7cf [gaim-migrate @ 11254]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10153
diff changeset
972 account = chat->account;
cf45c2a6a7cf [gaim-migrate @ 11254]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10153
diff changeset
973
cf45c2a6a7cf [gaim-migrate @ 11254]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10153
diff changeset
974 if (GAIM_PLUGIN_PROTOCOL_INFO(account->gc->prpl)->get_chat_name != NULL)
cf45c2a6a7cf [gaim-migrate @ 11254]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10153
diff changeset
975 name = GAIM_PLUGIN_PROTOCOL_INFO(account->gc->prpl)->get_chat_name(chat->components);
9918
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
976
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
977 gaim_blist_remove_chat(chat);
9918
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
978
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
979 if (name != NULL) {
10246
a66cf83552dc [gaim-migrate @ 11386]
Mark Doliner <mark@kingant.net>
parents: 10222
diff changeset
980 conv = gaim_find_conversation_with_account(GAIM_CONV_CHAT, name, account);
9918
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
981 g_free(name);
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
982 }
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
983
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
984 if (conv != NULL)
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
985 gaim_conversation_update(conv, GAIM_CONV_UPDATE_REMOVE);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
986 }
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
987
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
988 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
989 gaim_gtkdialogs_remove_chat(GaimChat *chat)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
990 {
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
991 gchar *name = gaim_chat_get_display_name(chat);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
992 gchar *text = g_strdup_printf(_("You are about to remove the chat %s from your buddy list. Do you want to continue?"), name);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
993
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
994 g_return_if_fail(chat != NULL);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
995
10222
224c9f244a3a [gaim-migrate @ 11351]
Sean Egan <seanegan@gmail.com>
parents: 10219
diff changeset
996 gaim_request_action(chat, NULL, _("Remove Chat"), text, 0, chat, 2,
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
997 _("Remove Chat"), G_CALLBACK(gaim_gtkdialogs_remove_chat_cb),
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
998 _("Cancel"), NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
999
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1000 g_free(name);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1001 g_free(text);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
1002 }