annotate src/gtkdialogs.c @ 11016:6417b2f5de4e

[gaim-migrate @ 12885] Wherever possible, allow users to act on objects and data directly, rather than through dialogs or explicit commands. For example, it is more intuitive to drag a circle object around in a diagram rather than selecting a "Move" command from a menu while the circle is selected. Simlarly, in an email application, allow the user to attach files by dragging them from the file manager and dropping them onto the message composition window if they wish. -- GNOME HIG This allows direct manipulation of buddy aliases and group names, by moving the features from dialogs to GtkTreeView's inline editing. I think this is a great change, but it seems like the type of thing that might stir up controversy. If so, take it to the mailing list for discussion. If not, I'll go ahead and perfect this sometime later. -s. committer: Tailor Script <tailor@pidgin.im>
author Sean Egan <seanegan@gmail.com>
date Tue, 21 Jun 2005 04:40:34 +0000
parents 99c1fb67b7bb
children 8d2007d738d5
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 {"Sean Egan", N_("lead developer"), "sean.egan@binghamton.edu"},
10508
4cc999cc6718 [gaim-migrate @ 11802]
Luke Schierer <lschiere@pidgin.im>
parents: 10493
diff changeset
67 {"Daniel 'datallah' Atallah", N_("developer"), NULL},
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
68 {"Christian 'ChipX86' Hammond", N_("developer & webmaster"), NULL},
10095
b28f9be379b3 [gaim-migrate @ 11114]
Herman Bloggs <hermanator12002@yahoo.com>
parents: 9991
diff changeset
69 {"Herman Bloggs", N_("win32 port"), "herman@bluedigits.com"},
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
70 {"Nathan 'faceprint' Walp", N_("developer"), NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
71 {"Mark 'KingAnt' Doliner", N_("developer"), NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
72 {"Ethan 'Paco-Paco' Blanton", N_("developer"), NULL},
10370
acd5b7af0409 [gaim-migrate @ 11590]
Luke Schierer <lschiere@pidgin.im>
parents: 10369
diff changeset
73 {"Etan 'deryni' Reisner", N_("developer"), NULL},
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
74 {"Tim 'marv' Ringenbach", N_("developer"), NULL},
10369
584c792dd15c [gaim-migrate @ 11588]
Luke Schierer <lschiere@pidgin.im>
parents: 10324
diff changeset
75 {"Luke 'LSchiere' Schierer", N_("support"), "lschiere@users.sf.net"},
10116
9f358a718f38 [gaim-migrate @ 11153]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10095
diff changeset
76 {"Stu 'nosnilmot' Tomlinson", N_("developer"), NULL},
10874
65d3140f35fd [gaim-migrate @ 12564]
Gary Kramlich <grim@reaperworld.com>
parents: 10852
diff changeset
77 {"Gary 'grim' Kramlich", 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},
10677
4cfc6bebeb5f [gaim-migrate @ 12219]
Etan Reisner <pidgin@unreliablesource.net>
parents: 10668
diff changeset
85 {"Richard 'rlaager' Laager", NULL, NULL},
10372
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
86 {"Robert 'Robot101' McQueen", NULL, NULL},
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
87 {"Benjamin Miller", NULL, NULL},
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
88 {"Kevin 'SimGuy' Stange", NULL, NULL},
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
89 {NULL, NULL, NULL}
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
90 };
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
91
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
92 static struct developer retired_developers[] = {
10615
2e720df50861 [gaim-migrate @ 12076]
Sean Egan <seanegan@gmail.com>
parents: 10522
diff changeset
93 {"Rob Flynn", N_("maintainer"), "gaim@robflynn.com"},
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
94 {"Adam Fritzler", N_("libfaim maintainer"), NULL},
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
95 {"Eric Warmenhoven", N_("lead developer"), "warmenhoven@yahoo.com"},
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
96 {"Jim Duchek", N_("maintainer"), NULL},
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
97 {"Jim Seymour", N_("Jabber developer"), NULL},
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
98 {"Mark Spencer", N_("original author"), "markster@marko.net"},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
99 {"Syd Logan", N_("hacker and designated driver [lazy bum]"), NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
100 {NULL, NULL, NULL}
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
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
103 static struct translator current_translators[] = {
10852
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
104 {N_("Bulgarian"), "bg", "Vladimira Girginova", "missing@here.is"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
105 {N_("Bulgarian"), "bg", "Vladimir (Kaladan) Petkov", "vpetkov@i-space.org"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
106 {N_("Catalan"), "ca", "Josep Puigdemont", "tradgnome@softcatala.org"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
107 {N_("Czech"), "cs", "Miloslav Trmac", "mitr@volny.cz"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
108 {N_("Danish"), "da", "Morten Brix Pedersen", "morten@wtf.dk"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
109 {N_("German"), "de", "Björn Voigt", "bjoern@cs.tu-berlin.de"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
110 {N_("Australian English"), "en_AU", "Peter Lawler", "trans@six-by-nine.com.au"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
111 {N_("British English"), "en_GB", "Luke Ross", "lukeross@sys3175.co.uk"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
112 {N_("Canadian English"), "en_CA", "Adam Weinberger", "adamw@gnome.org"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
113 {N_("Spanish"), "es", "Javier Fernández-Sanguino Peña", "jfs@debian.org"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
114 {N_("Finnish"), "fi", "Arto Alakulju", "arto@alakulju.net"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
115 {N_("French"), "fr", "Éric Boumaour", "zongo_fr@users.sourceforge.net"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
116 {N_("Hebrew"), "he", "Pavel Bibergal", "cyberkm203@hotmail.com"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
117 {N_("Hindi"), "hi", "Ravishankar Shrivastava", "raviratlami@yahoo.com"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
118 {N_("Hungarian"), "hu", "Zoltan Sutto", "sutto.zoltan@rutinsoft.hu"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
119 {N_("Italian"), "it", "Claudio Satriano", "satriano@na.infn.it"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
120 {N_("Japanese"), "ja", "Takashi Aihana", "aihana@gnome.gr.jp"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
121 {N_("Lithuanian"), "lt", "Gediminas Čičinskas", "gediminas@parok.lt"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
122 {N_("Georgian"), "ka", "Temuri Doghonadze", "admin@security.gov.ge"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
123 {N_("Korean"), "ko", "Kyung-uk Son", "vvs740@chol.com"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
124 {N_("Dutch, Flemish"), "nl", "Vincent van Adrighem", "V.vanAdrighem@dirck.mine.nu"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
125 {N_("Macedonian"), "mk", "Tomislav Markovski", "herrera@users.sf.net"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
126 {N_("Norwegian"), "no", "Petter Johan Olsen", "petter.olsen@cc.uit.no"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
127 {N_("Polish"), "pl", "Emil Nowak", "emil5@go2.pl"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
128 {N_("Polish"), "pl", "Krzysztof Foltman", "krzysztof@foltman.com"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
129 {N_("Portuguese"), "pt", "Duarte Henriques", "duarte_henriques@myrealbox.com"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
130 {N_("Portuguese-Brazil"), "pt_BR", "Maurício de Lemos Rodrigues Collares Neto", "mauricioc@gmail.com"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
131 {N_("Romanian"), "ro", "Mişu Moldovan", "dumol@go.ro"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
132 {N_("Russian"), "ru", "Dmitry Beloglazov", "dmaa@users.sf.net"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
133 {N_("Serbian"), "sr", "Danilo Šegan", "dsegan@gmx.net"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
134 {N_("Serbian"), "sr", "Aleksandar Urosevic", "urke@users.sourceforge.net"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
135 {N_("Slovenian"), "sl", "Matjaz Horvat", "matjaz@owca.info"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
136 {N_("Swedish"), "sv", "Tore Lundqvist", "tlt@mima.x.se"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
137 {N_("Vietnamese"), "vi", N_("T.M.Thanh and the Gnome-Vi Team"), "gnomevi-list@lists.sf.net"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
138 {N_("Simplified Chinese"), "zh_CN", "Funda Wang", "fundawang@linux.net.cn"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
139 {N_("Traditional Chinese"), "zh_TW", "Ambrose C. Li", "acli@ada.dhs.org"},
62b5117114d2 [gaim-migrate @ 12526]
Luke Schierer <lschiere@pidgin.im>
parents: 10851
diff changeset
140 {N_("Traditional Chinese"), "zh_TW", "Paladin R. Liu", "paladin@ms1.hinet.net"},
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
141 {NULL, NULL, NULL, NULL}
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
142 };
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
143
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
144
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
145 static struct translator past_translators[] = {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
146 {N_("Amharic"), "am", "Daniel Yacob", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
147 {N_("Bulgarian"), "bg", "Hristo Todorov", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
148 {N_("Catalan"), "ca", "JM Pérez Cáncer", NULL},
10131
a6c3b931214f [gaim-migrate @ 11194]
Mark Doliner <mark@kingant.net>
parents: 10116
diff changeset
149 {N_("Catalan"), "ca", "Robert Millan", NULL},
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
150 {N_("Czech"), "cs", "Honza Král", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
151 {N_("German"), "de", "Daniel Seifert, Karsten Weiss", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
152 {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
153 {N_("Finnish"), "fi", "Tero Kuusela", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
154 {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
155 {N_("Italian"), "it", "Salvatore di Maggio", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
156 {N_("Japanese"), "ja", "Ryosuke Kutsuna, Taku Yasui, Junichi Uekawa", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
157 {N_("Korean"), "ko", "Sang-hyun S, A Ho-seok Lee", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
158 {N_("Polish"), "pl", "Przemysław Sułek", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
159 {N_("Russian"), "ru", "Sergey Volozhanin", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
160 {N_("Russian"), "ru", "Alexandre Prokoudine", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
161 {N_("Slovak"), "sk", "Daniel Režný", NULL},
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
162 {N_("Swedish"), "sv", "Christian Rose", NULL},
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
163 {N_("Simplified Chinese"), "zh_CN", "Hashao, Rocky S. Lee", NULL},
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
164 {N_("Traditional Chinese"), "zh_TW", "Hashao, Rocky S. Lee", NULL},
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
165 {NULL, NULL, NULL, NULL}
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
166 };
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
167
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
168 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
169 gaim_gtkdialogs_destroy_all()
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
170 {
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
171 while (dialogwindows) {
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
172 gtk_widget_destroy(dialogwindows->data);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
173 dialogwindows = g_list_remove(dialogwindows, dialogwindows->data);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
174 }
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 static void destroy_about()
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 if (about != NULL)
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
180 gtk_widget_destroy(about);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
181 about = NULL;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
182 }
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
183
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
184 void gaim_gtkdialogs_about(GtkWidget *w, void *data)
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
185 {
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
186 GtkWidget *hbox;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
187 GtkWidget *vbox;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
188 GtkWidget *logo;
10175
53410b84336f [gaim-migrate @ 11290]
Mark Doliner <mark@kingant.net>
parents: 10167
diff changeset
189 GtkWidget *frame;
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
190 GtkWidget *text;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
191 GtkWidget *bbox;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
192 GtkWidget *button;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
193 GtkTextIter iter;
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
194 GString *str;
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
195 int i;
10266
2a9ec10e0c4c [gaim-migrate @ 11412]
Mark Doliner <mark@kingant.net>
parents: 10246
diff changeset
196 AtkObject *obj;
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
197
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
198 if (about != NULL) {
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
199 gtk_window_present(GTK_WINDOW(about));
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
200 return;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
201 }
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 GAIM_DIALOG(about);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
204 gtk_window_set_default_size(GTK_WINDOW(about), 450, -1);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
205 gtk_window_set_title(GTK_WINDOW(about), _("About Gaim"));
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
206 gtk_window_set_role(GTK_WINDOW(about), "about");
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
207 gtk_window_set_resizable(GTK_WINDOW(about), TRUE);
9778
3d40125495e3 [gaim-migrate @ 10646]
Mark Doliner <mark@kingant.net>
parents: 9758
diff changeset
208 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
209
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
210 hbox = gtk_hbox_new(FALSE, 12);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
211 gtk_container_set_border_width(GTK_CONTAINER(hbox), 12);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
212 gtk_container_add(GTK_CONTAINER(about), hbox);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
213
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
214 vbox = gtk_vbox_new(FALSE, 12);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
215 gtk_container_add(GTK_CONTAINER(hbox), vbox);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
216
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
217 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
218 obj = gtk_widget_get_accessible(logo);
2a9ec10e0c4c [gaim-migrate @ 11412]
Mark Doliner <mark@kingant.net>
parents: 10246
diff changeset
219 atk_object_set_description(obj, "Gaim " VERSION);
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
220 gtk_box_pack_start(GTK_BOX(vbox), logo, FALSE, FALSE, 0);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
221
10175
53410b84336f [gaim-migrate @ 11290]
Mark Doliner <mark@kingant.net>
parents: 10167
diff changeset
222 frame = gaim_gtk_create_imhtml(FALSE, &text, NULL);
10522
e8b160971254 [gaim-migrate @ 11838]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10508
diff changeset
223 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
224 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
225
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
226 str = g_string_sized_new(4096);
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
227
10153
0b43f6fef9b5 [gaim-migrate @ 11231]
Mark Doliner <mark@kingant.net>
parents: 10131
diff changeset
228 g_string_append(str,
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
229 _("Gaim is a modular messaging client capable of using "
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
230 "AIM, MSN, Yahoo!, Jabber, ICQ, IRC, SILC, "
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
231 "Novell GroupWise, Napster, Zephyr, and Gadu-Gadu "
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
232 "all at once. It is written using "
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
233 "GTK+ and is licensed under the GNU GPL.<BR><BR>"));
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
234
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
235 g_string_append(str, "<FONT SIZE=\"4\">URL:</FONT> <A HREF=\""
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
236 GAIM_WEBSITE "\">" GAIM_WEBSITE "</A><BR/><BR/>");
10493
387d06e21ae3 [gaim-migrate @ 11783]
Nathan Walp <nwalp@pidgin.im>
parents: 10411
diff changeset
237 #ifdef _WIN32
387d06e21ae3 [gaim-migrate @ 11783]
Nathan Walp <nwalp@pidgin.im>
parents: 10411
diff changeset
238 g_string_append_printf(str, _("<FONT SIZE=\"4\">IRC:</FONT> "
387d06e21ae3 [gaim-migrate @ 11783]
Nathan Walp <nwalp@pidgin.im>
parents: 10411
diff changeset
239 "#wingaim on irc.freenode.net<BR><BR>"));
387d06e21ae3 [gaim-migrate @ 11783]
Nathan Walp <nwalp@pidgin.im>
parents: 10411
diff changeset
240 #else
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
241 g_string_append_printf(str, _("<FONT SIZE=\"4\">IRC:</FONT> "
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
242 "#gaim on irc.freenode.net<BR><BR>"));
10493
387d06e21ae3 [gaim-migrate @ 11783]
Nathan Walp <nwalp@pidgin.im>
parents: 10411
diff changeset
243 #endif
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
244
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
245 /* Active Developers */
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
246 g_string_append_printf(str, "<FONT SIZE=\"4\">%s:</FONT><BR/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
247 _("Active Developers"));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
248 for (i = 0; developers[i].name != NULL; i++) {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
249 if (developers[i].email != NULL) {
10116
9f358a718f38 [gaim-migrate @ 11153]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10095
diff changeset
250 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
251 developers[i].name, _(developers[i].role),
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
252 developers[i].email, developers[i].email);
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
253 } else {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
254 g_string_append_printf(str, " %s (%s)<br/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
255 developers[i].name, _(developers[i].role));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
256 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
257 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
258 g_string_append(str, "<BR/>");
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
259
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
260 /* Crazy Patch Writers */
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
261 g_string_append_printf(str, "<FONT SIZE=\"4\">%s:</FONT><BR/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
262 _("Crazy Patch Writers"));
10372
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
263 for (i = 0; patch_writers[i].name != NULL; i++) {
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
264 if (patch_writers[i].email != NULL) {
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
265 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
266 patch_writers[i].name,
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
267 patch_writers[i].email, patch_writers[i].email);
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
268 } else {
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
269 g_string_append_printf(str, " %s<br/>",
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
270 patch_writers[i].name);
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
271 }
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
272 }
618a330c0260 [gaim-migrate @ 11595]
Luke Schierer <lschiere@pidgin.im>
parents: 10371
diff changeset
273 g_string_append(str, "<BR/>");
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
274
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
275 /* Retired Developers */
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
276 g_string_append_printf(str, "<FONT SIZE=\"4\">%s:</FONT><BR/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
277 _("Retired Developers"));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
278 for (i = 0; retired_developers[i].name != NULL; i++) {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
279 if (retired_developers[i].email != NULL) {
10116
9f358a718f38 [gaim-migrate @ 11153]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10095
diff changeset
280 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
281 retired_developers[i].name, _(retired_developers[i].role),
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
282 retired_developers[i].email, retired_developers[i].email);
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
283 } else {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
284 g_string_append_printf(str, " %s (%s)<br/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
285 retired_developers[i].name, _(retired_developers[i].role));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
286 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
287 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
288 g_string_append(str, "<BR/>");
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
289
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
290 /* Current Translators */
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
291 g_string_append_printf(str, "<FONT SIZE=\"4\">%s:</FONT><BR/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
292 _("Current Translators"));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
293 for (i = 0; current_translators[i].language != NULL; i++) {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
294 if (current_translators[i].email != NULL) {
10116
9f358a718f38 [gaim-migrate @ 11153]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10095
diff changeset
295 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
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 current_translators[i].email,
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
300 current_translators[i].email);
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
301 } else {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
302 g_string_append_printf(str, " <b>%s (%s)</b> - %s<br/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
303 _(current_translators[i].language),
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
304 current_translators[i].abbr,
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
305 _(current_translators[i].name));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
306 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
307 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
308 g_string_append(str, "<BR/>");
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
309
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
310 /* Past Translators */
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
311 g_string_append_printf(str, "<FONT SIZE=\"4\">%s:</FONT><BR/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
312 _("Past Translators"));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
313 for (i = 0; past_translators[i].language != NULL; i++) {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
314 if (past_translators[i].email != NULL) {
10116
9f358a718f38 [gaim-migrate @ 11153]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10095
diff changeset
315 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
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 past_translators[i].email,
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
320 past_translators[i].email);
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
321 } else {
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
322 g_string_append_printf(str, " <b>%s (%s)</b> - %s<br/>",
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
323 _(past_translators[i].language),
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
324 past_translators[i].abbr,
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
325 _(past_translators[i].name));
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
326 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
327 }
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
328 g_string_append(str, "<BR/>");
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
329
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
330 g_string_append_printf(str, "<FONT SIZE=\"4\">%s</FONT><br/>", _("Debugging Information"));
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
331
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
332 /* The following primarly intented for user/developer interaction and thus
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
333 ought not be translated */
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
334
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
335 #ifdef CONFIG_ARGS /* win32 build doesn't use configure */
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
336 g_string_append(str, " <b>Arguments to <i>./configure</i>:</b> " CONFIG_ARGS "<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
337 #endif
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
338
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
339 #ifdef DEBUG
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
340 g_string_append(str, " <b>Print debugging messages:</b> Yes<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
341 #else
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
342 g_string_append(str, " <b>Print debugging messages:</b> No<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
343 #endif
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
344
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
345 #ifdef ENABLE_BINRELOC
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
346 g_string_append(str, " <b>Binary relocation:</b> Enabled<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
347 #else
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
348 g_string_append(str, " <b>Binary relocation:</b> Disabled<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
349 #endif
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
350
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
351 #ifdef GAIM_PLUGINS
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
352 g_string_append(str, " <b>Plugins:</b> Enabled<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
353 #else
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
354 g_string_append(str, " <b>Plugins:</b> Disabled<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
355 #endif
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
356
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
357 #ifdef HAVE_SSL
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
358 g_string_append(str, " <b>SSL:</b> Gaim was compiled with SSL support.<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
359 #else
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
360 g_string_append(str, " <b>SSL:</b> Gaim was <b><i>NOT</i></b> compiled with any SSL support!<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
361 #endif
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
362
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
363
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
364 g_string_append(str, "<br/> <b>Library Support</b><br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
365
10835
c5f8b6e66455 [gaim-migrate @ 12507]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10832
diff changeset
366 #ifdef HAVE_EVOLUTION_ADDRESSBOOK
c5f8b6e66455 [gaim-migrate @ 12507]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10832
diff changeset
367 g_string_append_printf(str, " <b>Evolution Addressbook:</b> Enabled<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
368 #else
10835
c5f8b6e66455 [gaim-migrate @ 12507]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10832
diff changeset
369 g_string_append_printf(str, " <b>Evolution Addressbook:</b> Disabled<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
370 #endif
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
371
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
372 #ifdef USE_GTKSPELL
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
373 g_string_append(str, " <b>GtkSpell:</b> Enabled<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
374 #else
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
375 g_string_append(str, " <b>GtkSpell:</b> Disabled<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
376 #endif
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
377
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
378 #ifdef HAVE_GNUTLS
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
379 g_string_append(str, " <b>GnuTLS:</b> Enabled<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
380 #else
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
381 g_string_append(str, " <b>GnuTLS:</b> Disabled<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
382 #endif
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
383
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
384 #ifdef USE_AO
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
385 g_string_append(str, " <b>libao:</b> Enabled<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
386 #else
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
387 g_string_append(str, " <b>libao:</b> Disabled<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
388 #endif
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
389
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
390 #ifdef USE_NAS_AUDIO
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
391 g_string_append(str, " <b>Network Audio System (NAS):</b> Enabled<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
392 #else
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
393 g_string_append(str, " <b>Network Audio System (NAS):</b> Disabled<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
394 #endif
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
395
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
396 #ifdef HAVE_NSS
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
397 g_string_append(str, " <b>Network Security Services (NSS):</b> Enabled<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
398 #else
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
399 g_string_append(str, " <b>Network Security Services (NSS):</b> Disabled<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
400 #endif
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
401
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
402 #ifdef HAVE_STARTUP_NOTIFICATION
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
403 g_string_append(str, " <b>Startup Notification:</b> Enabled<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
404 #else
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
405 g_string_append(str, " <b>Startup Notification:</b> Disabled<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
406 #endif
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
407
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
408 #ifdef HAVE_TCL
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
409 g_string_append(str, " <b>Tcl:</b> Enabled<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
410 #else
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
411 g_string_append(str, " <b>Tcl:</b> Disabled<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
412 #endif
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
413
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
414 #ifdef HAVE_TK
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
415 g_string_append(str, " <b>Tk:</b> Enabled<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
416 #else
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
417 g_string_append(str, " <b>Tk:</b> Disabled<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
418 #endif
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
419
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
420 #ifdef USE_SM
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
421 g_string_append(str, " <b>X Session Management:</b> Enabled<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
422 #else
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
423 g_string_append(str, " <b>X Session Management:</b> Disabled<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
424 #endif
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
425
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
426 #ifdef USE_SCREENSAVER
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
427 g_string_append(str, " <b>XScreenSaver:</b> Enabled<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
428 #else
10813
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
429 g_string_append(str, " <b>XScreenSaver:</b> Disabled<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
430 #endif
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
431
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
432 #ifdef LIBZEPHYR_EXT
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
433 g_string_append(str, " <b>Zephyr library (libzephyr):</b> External<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
434 #else
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
435 g_string_append(str, " <b>Zephyr library (libzephyr):</b> Not External<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
436 #endif
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
437
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
438 #ifdef ZEPHYR_USES_KERBEROS
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
439 g_string_append(str, " <b>Zephyr uses Kerberos:</b> Yes<br/>");
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
440 #else
290131d5f626 [gaim-migrate @ 12466]
Luke Schierer <lschiere@pidgin.im>
parents: 10812
diff changeset
441 g_string_append(str, " <b>Zephyr uses Kerberos:</b> No<br/>");
10411
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
442 #endif
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
443
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
444 /* End of not to be translated section */
151fcda069bc [gaim-migrate @ 11660]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10372
diff changeset
445
9758
4f2b50a06224 [gaim-migrate @ 10625]
Mark Doliner <mark@kingant.net>
parents: 9753
diff changeset
446 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
447 g_string_free(str, TRUE);
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
448
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
449 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
450 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
451
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
452 /* Close Button */
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
453 bbox = gtk_hbutton_box_new();
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
454 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
455 gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 0);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
456
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
457 button = gtk_button_new_from_stock(GTK_STOCK_CLOSE);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
458 gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
459
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
460 g_signal_connect_swapped(G_OBJECT(button), "clicked",
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
461 G_CALLBACK(destroy_about), G_OBJECT(about));
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
462 g_signal_connect(G_OBJECT(about), "destroy",
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
463 G_CALLBACK(destroy_about), G_OBJECT(about));
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
464
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
465 /* this makes the sizes not work? */
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
466 GTK_WIDGET_SET_FLAGS(button, GTK_CAN_DEFAULT);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
467 gtk_widget_grab_default(button);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
468
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
469 /* Let's give'em something to talk about -- woah woah woah */
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
470 gtk_widget_show_all(about);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
471 gtk_window_present(GTK_WINDOW(about));
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
472 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
473
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
474 static void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
475 gaim_gtkdialogs_im_cb(gpointer data, GaimRequestFields *fields)
9709
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 GaimAccount *account;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
478 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 account = gaim_request_fields_get_account(fields, "account");
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
481 username = gaim_request_fields_get_string(fields, "screenname");
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
482
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
483 gaim_gtkdialogs_im_with_user(account, username);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
484 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
485
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
486 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
487 gaim_gtkdialogs_im(void)
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 GaimRequestFields *fields;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
490 GaimRequestFieldGroup *group;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
491 GaimRequestField *field;
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
492
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
493 fields = gaim_request_fields_new();
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 group = gaim_request_field_group_new(NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
496 gaim_request_fields_add_group(fields, group);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
497
10668
aafe8f30b826 [gaim-migrate @ 12208]
Sean Egan <seanegan@gmail.com>
parents: 10615
diff changeset
498 field = gaim_request_field_string_new("screenname", _("_Name"), NULL, FALSE);
aafe8f30b826 [gaim-migrate @ 12208]
Sean Egan <seanegan@gmail.com>
parents: 10615
diff changeset
499 gaim_request_field_set_type_hint(field, "screenname");
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
500 gaim_request_field_set_required(field, TRUE);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
501 gaim_request_field_group_add_field(group, field);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
502
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
503 field = gaim_request_field_account_new("account", _("_Account"), NULL);
10791
2ab4b5acc8d1 [gaim-migrate @ 12433]
Luke Schierer <lschiere@pidgin.im>
parents: 10774
diff changeset
504 gaim_request_field_set_type_hint(field, "account");
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
505 gaim_request_field_set_visible(field,
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
506 (gaim_connections_get_all() != NULL &&
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
507 gaim_connections_get_all()->next != NULL));
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
508 gaim_request_field_set_required(field, TRUE);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
509 gaim_request_field_group_add_field(group, field);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
510
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
511 gaim_request_fields(gaim_get_blist(), _("New Instant Message"),
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
512 NULL,
10668
aafe8f30b826 [gaim-migrate @ 12208]
Sean Egan <seanegan@gmail.com>
parents: 10615
diff changeset
513 _("Please enter the screen name or alias of the person "
aafe8f30b826 [gaim-migrate @ 12208]
Sean Egan <seanegan@gmail.com>
parents: 10615
diff changeset
514 "you would like to IM."),
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
515 fields,
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
516 _("OK"), G_CALLBACK(gaim_gtkdialogs_im_cb),
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
517 _("Cancel"), NULL,
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
518 NULL);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
519 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
520
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
521 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
522 gaim_gtkdialogs_im_with_user(GaimAccount *account, const char *username)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
523 {
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
524 GaimConversation *conv;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
525 GaimConvWindow *win;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
526 GaimGtkWindow *gtkwin;
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
527
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
528 g_return_if_fail(account != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
529 g_return_if_fail(username != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
530
10246
a66cf83552dc [gaim-migrate @ 11386]
Mark Doliner <mark@kingant.net>
parents: 10222
diff changeset
531 conv = gaim_find_conversation_with_account(GAIM_CONV_IM, username, account);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
532
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
533 if (conv == NULL)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
534 conv = gaim_conversation_new(GAIM_CONV_IM, account, username);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
535
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
536 win = gaim_conversation_get_window(conv);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
537 gtkwin = GAIM_GTK_WINDOW(win);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
538
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
539 gtk_window_present(GTK_WINDOW(gtkwin->window));
10827
53e7884c549a [gaim-migrate @ 12492]
Tim Ringenbach <marv@pidgin.im>
parents: 10816
diff changeset
540 gaim_conv_window_switch_conversation(win, conv);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
541 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
542
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
543 static gboolean
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
544 gaim_gtkdialogs_ee(const char *ee)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
545 {
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
546 GtkWidget *window;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
547 GtkWidget *hbox;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
548 GtkWidget *label;
10219
f37516ae6a0b [gaim-migrate @ 11347]
Mark Doliner <mark@kingant.net>
parents: 10193
diff changeset
549 GtkWidget *img;
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
550 gchar *norm = gaim_strreplace(ee, "rocksmyworld", "");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
551
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
552 label = gtk_label_new(NULL);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
553 if (!strcmp(norm, "zilding"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
554 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
555 "<span weight=\"bold\" size=\"large\" foreground=\"purple\">Amazing! Simply Amazing!</span>");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
556 else if (!strcmp(norm, "robflynn"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
557 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
558 "<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
559 else if (!strcmp(norm, "flynorange"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
560 gtk_label_set_markup(GTK_LABEL(label),
10816
c94f40ffcafb [gaim-migrate @ 12471]
Luke Schierer <lschiere@pidgin.im>
parents: 10813
diff changeset
561 "<span weight=\"bold\" size=\"large\" foreground=\"blue\">You should be me. I'm so cute!</span>");
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
562 else if (!strcmp(norm, "ewarmenhoven"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
563 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
564 "<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
565 else if (!strcmp(norm, "markster97"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
566 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
567 "<span weight=\"bold\" size=\"large\" foreground=\"brown\">Ahh, and excellent choice!</span>");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
568 else if (!strcmp(norm, "seanegn"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
569 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
570 "<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
571 else if (!strcmp(norm, "chipx86"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
572 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
573 "<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
574 else if (!strcmp(norm, "markdoliner"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
575 gtk_label_set_markup(GTK_LABEL(label),
10816
c94f40ffcafb [gaim-migrate @ 12471]
Luke Schierer <lschiere@pidgin.im>
parents: 10813
diff changeset
576 "<span weight=\"bold\" size=\"large\" foreground=\"#6364B1\">Hey! I was in that tumbleweed!</span>");
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
577 else if (!strcmp(norm, "lschiere"))
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
578 gtk_label_set_markup(GTK_LABEL(label),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
579 "<span weight=\"bold\" size=\"large\" foreground=\"gray\">I'm not anything.</span>");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
580 g_free(norm);
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 if (strlen(gtk_label_get_label(GTK_LABEL(label))) <= 0)
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
583 return FALSE;
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 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
586 gtk_dialog_set_default_response (GTK_DIALOG(window), GTK_RESPONSE_OK);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
587 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
588
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
589 gtk_container_set_border_width (GTK_CONTAINER(window), 6);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
590 gtk_window_set_resizable(GTK_WINDOW(window), FALSE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
591 gtk_dialog_set_has_separator(GTK_DIALOG(window), FALSE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
592 gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(window)->vbox), 12);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
593 gtk_container_set_border_width (GTK_CONTAINER(GTK_DIALOG(window)->vbox), 6);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
594
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
595 hbox = gtk_hbox_new(FALSE, 12);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
596 gtk_container_add(GTK_CONTAINER(GTK_DIALOG(window)->vbox), hbox);
10219
f37516ae6a0b [gaim-migrate @ 11347]
Mark Doliner <mark@kingant.net>
parents: 10193
diff changeset
597 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
598 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
599
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
600 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
601 gtk_misc_set_alignment(GTK_MISC(label), 0, 0);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
602 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
603
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
604 gtk_widget_show_all(window);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
605 return TRUE;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
606 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
607
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
608 static void
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
609 gaim_gtkdialogs_info_cb(gpointer data, GaimRequestFields *fields)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
610 {
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
611 char *username;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
612 gboolean found = FALSE;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
613 GaimAccount *account;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
614
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
615 account = gaim_request_fields_get_account(fields, "account");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
616
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
617 username = g_strdup(gaim_normalize(account,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
618 gaim_request_fields_get_string(fields, "screenname")));
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 if (username != NULL && gaim_str_has_suffix(username, "rocksmyworld"))
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
621 found = gaim_gtkdialogs_ee(username);
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 if (!found && username != NULL && *username != '\0' && account != NULL)
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
624 serv_get_info(gaim_account_get_connection(account), username);
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 g_free(username);
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
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
629 void
9714
2273790bb518 [gaim-migrate @ 10575]
Mark Doliner <mark@kingant.net>
parents: 9709
diff changeset
630 gaim_gtkdialogs_info(void)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
631 {
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
632 GaimRequestFields *fields;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
633 GaimRequestFieldGroup *group;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
634 GaimRequestField *field;
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 fields = gaim_request_fields_new();
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
637
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
638 group = gaim_request_field_group_new(NULL);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
639 gaim_request_fields_add_group(fields, group);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
640
10668
aafe8f30b826 [gaim-migrate @ 12208]
Sean Egan <seanegan@gmail.com>
parents: 10615
diff changeset
641 field = gaim_request_field_string_new("screenname", _("_Name"), NULL, FALSE);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
642 gaim_request_field_set_type_hint(field, "screenname");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
643 gaim_request_field_set_required(field, TRUE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
644 gaim_request_field_group_add_field(group, field);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
645
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
646 field = gaim_request_field_account_new("account", _("_Account"), NULL);
10791
2ab4b5acc8d1 [gaim-migrate @ 12433]
Luke Schierer <lschiere@pidgin.im>
parents: 10774
diff changeset
647 gaim_request_field_set_type_hint(field, "account");
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
648 gaim_request_field_set_visible(field,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
649 (gaim_connections_get_all() != NULL &&
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
650 gaim_connections_get_all()->next != NULL));
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
651 gaim_request_field_set_required(field, TRUE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
652 gaim_request_field_group_add_field(group, field);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
653
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
654 gaim_request_fields(gaim_get_blist(), _("Get User Info"),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
655 NULL,
10668
aafe8f30b826 [gaim-migrate @ 12208]
Sean Egan <seanegan@gmail.com>
parents: 10615
diff changeset
656 _("Please enter the screen name or alias of the person "
aafe8f30b826 [gaim-migrate @ 12208]
Sean Egan <seanegan@gmail.com>
parents: 10615
diff changeset
657 "whose info you would like to view."),
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
658 fields,
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
659 _("OK"), G_CALLBACK(gaim_gtkdialogs_info_cb),
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
660 _("Cancel"), NULL,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
661 NULL);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
662 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
663
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
664 static void
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
665 gaim_gtkdialogs_log_cb(gpointer data, GaimRequestFields *fields)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
666 {
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
667 char *username;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
668 GaimAccount *account;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
669
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
670 account = gaim_request_fields_get_account(fields, "account");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
671
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
672 username = g_strdup(gaim_normalize(account,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
673 gaim_request_fields_get_string(fields, "screenname")));
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
674
9917
e74eb0d11f86 [gaim-migrate @ 10809]
Luke Schierer <lschiere@pidgin.im>
parents: 9905
diff changeset
675 if(username != NULL && *username != '\0' && account != NULL )
e74eb0d11f86 [gaim-migrate @ 10809]
Luke Schierer <lschiere@pidgin.im>
parents: 9905
diff changeset
676 gaim_gtk_log_show(GAIM_LOG_IM, username, account);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
677
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
678 g_free(username);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
679 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
680
9991
cc4b2125d05d [gaim-migrate @ 10904]
Mark Doliner <mark@kingant.net>
parents: 9976
diff changeset
681 /*
cc4b2125d05d [gaim-migrate @ 10904]
Mark Doliner <mark@kingant.net>
parents: 9976
diff changeset
682 * 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
683 */
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
684 void
9714
2273790bb518 [gaim-migrate @ 10575]
Mark Doliner <mark@kingant.net>
parents: 9709
diff changeset
685 gaim_gtkdialogs_log(void)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
686 {
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
687 GaimRequestFields *fields;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
688 GaimRequestFieldGroup *group;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
689 GaimRequestField *field;
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
690
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
691 fields = gaim_request_fields_new();
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
692
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
693 group = gaim_request_field_group_new(NULL);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
694 gaim_request_fields_add_group(fields, group);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
695
10668
aafe8f30b826 [gaim-migrate @ 12208]
Sean Egan <seanegan@gmail.com>
parents: 10615
diff changeset
696 field = gaim_request_field_string_new("screenname", _("_Name"), NULL, FALSE);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
697 gaim_request_field_set_type_hint(field, "screenname");
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
698 gaim_request_field_set_required(field, TRUE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
699 gaim_request_field_group_add_field(group, field);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
700
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
701 field = gaim_request_field_account_new("account", _("_Account"), NULL);
10791
2ab4b5acc8d1 [gaim-migrate @ 12433]
Luke Schierer <lschiere@pidgin.im>
parents: 10774
diff changeset
702 gaim_request_field_set_type_hint(field, "account");
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
703 gaim_request_field_account_set_show_all(field, TRUE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
704 gaim_request_field_set_visible(field,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
705 (gaim_accounts_get_all() != NULL &&
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
706 gaim_accounts_get_all()->next != NULL));
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
707 gaim_request_field_set_required(field, TRUE);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
708 gaim_request_field_group_add_field(group, field);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
710 gaim_request_fields(gaim_get_blist(), _("Get User Log"),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
711 NULL,
10668
aafe8f30b826 [gaim-migrate @ 12208]
Sean Egan <seanegan@gmail.com>
parents: 10615
diff changeset
712 _("Please enter the screen name or alias of the person "
aafe8f30b826 [gaim-migrate @ 12208]
Sean Egan <seanegan@gmail.com>
parents: 10615
diff changeset
713 "whose log you would like to view."),
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
714 fields,
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
715 _("OK"), G_CALLBACK(gaim_gtkdialogs_log_cb),
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
716 _("Cancel"), NULL,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
717 NULL);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
718 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
719
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
720 static void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
721 gaim_gtkdialogs_warn_cb(GtkWidget *widget, gint resp, struct warning *w)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
722 {
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
723 if (resp == GTK_RESPONSE_OK)
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
724 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
725
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
726 dialogwindows = g_list_remove(dialogwindows, w->window);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
727 gtk_widget_destroy(w->window);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
728
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
729 g_free(w->who);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
730 g_free(w);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
731 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
732
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
733 /*
9991
cc4b2125d05d [gaim-migrate @ 10904]
Mark Doliner <mark@kingant.net>
parents: 9976
diff changeset
734 * TODO - Make this use the request API, if possible.
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
735 */
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
736 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
737 gaim_gtkdialogs_warn(GaimConnection *gc, const char *who)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
738 {
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
739 gchar *labeltext;
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
740 GtkWidget *hbox, *vbox;
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
741 GtkWidget *label;
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
742 GtkWidget *img;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
743 struct warning *w;
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
744
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
745 g_return_if_fail(gc != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
746 g_return_if_fail(who != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
747
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
748 w = g_new0(struct warning, 1);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
749 w->who = g_strdup(who);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
750 w->gc = gc;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
751
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
752 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
753 GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
754 GAIM_STOCK_WARN, GTK_RESPONSE_OK, NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
755 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
756 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
757
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
758 gtk_container_set_border_width (GTK_CONTAINER(w->window), 6);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
759 gtk_window_set_resizable(GTK_WINDOW(w->window), FALSE);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
760 gtk_dialog_set_has_separator(GTK_DIALOG(w->window), FALSE);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
761 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
762 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
763
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
764 hbox = gtk_hbox_new(FALSE, 12);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
765 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
766
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
767 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
768 gtk_misc_set_alignment(GTK_MISC(img), 0, 0);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
769 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
770
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
771 vbox = gtk_vbox_new(FALSE, 0);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
772 gtk_container_add(GTK_CONTAINER(hbox), vbox);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
773 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
774 "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
775 label = gtk_label_new(NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
776 gtk_label_set_markup(GTK_LABEL(label), labeltext);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
777 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
778 gtk_misc_set_alignment(GTK_MISC(label), 0, 0);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
779 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
780 g_free(labeltext);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
781
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
782 w->anon = gtk_check_button_new_with_mnemonic(_("Warn _anonymously?"));
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
783 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
784
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
785 hbox = gtk_hbox_new(FALSE, 6);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
786 gtk_container_add(GTK_CONTAINER(vbox), hbox);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
787 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
788 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
789 labeltext = _("<b>Anonymous warnings are less severe.</b>");
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
790 label = gtk_label_new(NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
791 gtk_label_set_markup(GTK_LABEL(label), labeltext);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
792 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
793 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
794
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
795 dialogwindows = g_list_prepend(dialogwindows, w->window);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
796 gtk_widget_show_all(w->window);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
797 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
798
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
799 static void
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
800 gaim_gtkdialogs_alias_contact_cb(GaimContact *contact, const char *new_alias)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
801 {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
802 gaim_contact_set_alias(contact, new_alias);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
803 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
804
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
805 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
806 gaim_gtkdialogs_alias_contact(GaimContact *contact)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
807 {
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
808 g_return_if_fail(contact != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
809
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
810 gaim_request_input(NULL, _("Alias Contact"), NULL,
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
811 _("Enter an alias for this contact."),
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
812 contact->alias, FALSE, FALSE, NULL,
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
813 _("Alias"), G_CALLBACK(gaim_gtkdialogs_alias_contact_cb),
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
814 _("Cancel"), NULL, contact);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
815 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
816
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
817 static void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
818 gaim_gtkdialogs_alias_buddy_cb(GaimBuddy *buddy, const char *new_alias)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
819 {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
820 gaim_blist_alias_buddy(buddy, new_alias);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
821 serv_alias_buddy(buddy);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
822 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
823
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
824 void
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
825 gaim_gtkdialogs_alias_buddy(GaimBuddy *buddy)
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
826 {
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
827 gchar *secondary;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
828
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
829 g_return_if_fail(buddy != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
830
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
831 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
832
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
833 gaim_request_input(NULL, _("Alias Buddy"), NULL,
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
834 secondary, buddy->alias, FALSE, FALSE, NULL,
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
835 _("Alias"), G_CALLBACK(gaim_gtkdialogs_alias_buddy_cb),
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
836 _("Cancel"), NULL, buddy);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
837
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
838 g_free(secondary);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
839 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
840
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
841 static void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
842 gaim_gtkdialogs_alias_chat_cb(GaimChat *chat, const char *new_alias)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
843 {
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
844 gaim_blist_alias_chat(chat, new_alias);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
845 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
846
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
847 void
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
848 gaim_gtkdialogs_alias_chat(GaimChat *chat)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
849 {
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
850 g_return_if_fail(chat != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
851
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
852 gaim_request_input(NULL, _("Alias Chat"), NULL,
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
853 _("Enter an alias for this chat."),
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
854 chat->alias, FALSE, FALSE, NULL,
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
855 _("Alias"), G_CALLBACK(gaim_gtkdialogs_alias_chat_cb),
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
856 _("Cancel"), NULL, chat);
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
857 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
858
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
859 static void
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
860 gaim_gtkdialogs_remove_contact_cb(GaimContact *contact)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
861 {
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
862 GaimBlistNode *bnode, *cnode;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
863 GaimGroup *group;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
864
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
865 cnode = (GaimBlistNode *)contact;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
866 group = (GaimGroup*)cnode->parent;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
867 for (bnode = cnode->child; bnode; bnode = bnode->next) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
868 GaimBuddy *buddy = (GaimBuddy*)bnode;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
869 if (gaim_account_is_connected(buddy->account))
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
870 serv_remove_buddy(buddy->account->gc, buddy, group);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
871 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
872 gaim_blist_remove_contact(contact);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
873 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
874
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
875 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
876 gaim_gtkdialogs_remove_contact(GaimContact *contact)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
877 {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
878 GaimBuddy *buddy = gaim_contact_get_priority_buddy(contact);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
879
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
880 g_return_if_fail(contact != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
881 g_return_if_fail(buddy != NULL);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
882
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
883 if (((GaimBlistNode*)contact)->child == (GaimBlistNode*)buddy &&
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
884 !((GaimBlistNode*)buddy)->next) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
885 gaim_gtkdialogs_remove_buddy(buddy);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
886 } else {
10324
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
887 gchar *text;
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
888 text = g_strdup_printf(
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
889 ngettext(
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
890 "You are about to remove the contact containing %s "
10816
c94f40ffcafb [gaim-migrate @ 12471]
Luke Schierer <lschiere@pidgin.im>
parents: 10813
diff changeset
891 "and %d other buddy from your buddy list. Do you "
10324
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
892 "want to continue?",
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
893 "You are about to remove the contact containing %s "
10816
c94f40ffcafb [gaim-migrate @ 12471]
Luke Schierer <lschiere@pidgin.im>
parents: 10813
diff changeset
894 "and %d other buddies from your buddy list. Do you "
10324
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
895 "want to continue?", contact->totalsize - 1),
1034e77ff0ce [gaim-migrate @ 11531]
Mark Doliner <mark@kingant.net>
parents: 10297
diff changeset
896 buddy->name, contact->totalsize - 1);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
897
10222
224c9f244a3a [gaim-migrate @ 11351]
Sean Egan <seanegan@gmail.com>
parents: 10219
diff changeset
898 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
899 _("Remove Contact"), G_CALLBACK(gaim_gtkdialogs_remove_contact_cb),
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
900 _("Cancel"), NULL);
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 g_free(text);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
903 }
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
904 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
905
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
906 void
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
907 gaim_gtkdialogs_remove_group_cb(GaimGroup *group)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
908 {
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
909 GaimBlistNode *cnode, *bnode;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
910
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
911 cnode = ((GaimBlistNode*)group)->child;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
912
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
913 while (cnode) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
914 if (GAIM_BLIST_NODE_IS_CONTACT(cnode)) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
915 bnode = cnode->child;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
916 cnode = cnode->next;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
917 while (bnode) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
918 GaimBuddy *buddy;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
919 if (GAIM_BLIST_NODE_IS_BUDDY(bnode)) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
920 GaimConversation *conv;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
921 buddy = (GaimBuddy*)bnode;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
922 bnode = bnode->next;
10246
a66cf83552dc [gaim-migrate @ 11386]
Mark Doliner <mark@kingant.net>
parents: 10222
diff changeset
923 conv = gaim_find_conversation_with_account(GAIM_CONV_IM,
a66cf83552dc [gaim-migrate @ 11386]
Mark Doliner <mark@kingant.net>
parents: 10222
diff changeset
924 buddy->name,
a66cf83552dc [gaim-migrate @ 11386]
Mark Doliner <mark@kingant.net>
parents: 10222
diff changeset
925 buddy->account);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
926 if (gaim_account_is_connected(buddy->account)) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
927 serv_remove_buddy(buddy->account->gc, buddy, group);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
928 gaim_blist_remove_buddy(buddy);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
929 if (conv)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
930 gaim_conversation_update(conv,
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
931 GAIM_CONV_UPDATE_REMOVE);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
932 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
933 } else {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
934 bnode = bnode->next;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
935 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
936 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
937 } else if (GAIM_BLIST_NODE_IS_CHAT(cnode)) {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
938 GaimChat *chat = (GaimChat *)cnode;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
939 cnode = cnode->next;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
940 if (gaim_account_is_connected(chat->account))
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
941 gaim_blist_remove_chat(chat);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
942 } else {
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
943 cnode = cnode->next;
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 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
946
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
947 gaim_blist_remove_group(group);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
948 }
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
949
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
950 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
951 gaim_gtkdialogs_remove_group(GaimGroup *group)
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 gchar *text;
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
954
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
955 g_return_if_fail(group != NULL);
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
956
10816
c94f40ffcafb [gaim-migrate @ 12471]
Luke Schierer <lschiere@pidgin.im>
parents: 10813
diff changeset
957 text = g_strdup_printf(_("You are about to remove the group %s and all its members from your buddy list. Do you want to continue?"),
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
958 group->name);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
959
10222
224c9f244a3a [gaim-migrate @ 11351]
Sean Egan <seanegan@gmail.com>
parents: 10219
diff changeset
960 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
961 _("Remove Group"), G_CALLBACK(gaim_gtkdialogs_remove_group_cb),
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
962 _("Cancel"), NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
963
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
964 g_free(text);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
965 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
966
10246
a66cf83552dc [gaim-migrate @ 11386]
Mark Doliner <mark@kingant.net>
parents: 10222
diff changeset
967 /* XXX - Some of this should be moved into the core, methinks. */
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
968 static void
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
969 gaim_gtkdialogs_remove_buddy_cb(GaimBuddy *buddy)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
970 {
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
971 GaimGroup *group;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
972 GaimConversation *conv;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
973 gchar *name;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
974 GaimAccount *account;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
975
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
976 group = gaim_find_buddys_group(buddy);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
977 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
978 account = buddy->account;
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
979
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
980 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
981 /* 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
982 serv_remove_buddy(buddy->account->gc, buddy, group);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
983 gaim_blist_remove_buddy(buddy);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
984
10246
a66cf83552dc [gaim-migrate @ 11386]
Mark Doliner <mark@kingant.net>
parents: 10222
diff changeset
985 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
986 if (conv != NULL)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
987 gaim_conversation_update(conv, GAIM_CONV_UPDATE_REMOVE);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
988
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
989 g_free(name);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
990 }
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
991
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
992 void
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
993 gaim_gtkdialogs_remove_buddy(GaimBuddy *buddy)
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
994 {
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
995 gchar *text;
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
996
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
997 g_return_if_fail(buddy != NULL);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
998
10816
c94f40ffcafb [gaim-migrate @ 12471]
Luke Schierer <lschiere@pidgin.im>
parents: 10813
diff changeset
999 text = g_strdup_printf(_("You are about to remove %s from your buddy list. Do you want to continue?"),
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
1000 buddy->name);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1001
10222
224c9f244a3a [gaim-migrate @ 11351]
Sean Egan <seanegan@gmail.com>
parents: 10219
diff changeset
1002 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
1003 _("Remove Buddy"), G_CALLBACK(gaim_gtkdialogs_remove_buddy_cb),
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1004 _("Cancel"), NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1005
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1006 g_free(text);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1007 }
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
1008
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1009 static void
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
1010 gaim_gtkdialogs_remove_chat_cb(GaimChat *chat)
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1011 {
9918
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
1012 char *name = NULL;
10167
cf45c2a6a7cf [gaim-migrate @ 11254]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10153
diff changeset
1013 GaimAccount *account;
9918
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
1014 GaimConversation *conv = NULL;
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
1015
10167
cf45c2a6a7cf [gaim-migrate @ 11254]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10153
diff changeset
1016 account = chat->account;
cf45c2a6a7cf [gaim-migrate @ 11254]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10153
diff changeset
1017
cf45c2a6a7cf [gaim-migrate @ 11254]
Stu Tomlinson <stu@nosnilmot.com>
parents: 10153
diff changeset
1018 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
1019 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
1020
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1021 gaim_blist_remove_chat(chat);
9918
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
1022
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
1023 if (name != NULL) {
10246
a66cf83552dc [gaim-migrate @ 11386]
Mark Doliner <mark@kingant.net>
parents: 10222
diff changeset
1024 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
1025 g_free(name);
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
1026 }
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
1027
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
1028 if (conv != NULL)
c203312d8224 [gaim-migrate @ 10810]
Luke Schierer <lschiere@pidgin.im>
parents: 9917
diff changeset
1029 gaim_conversation_update(conv, GAIM_CONV_UPDATE_REMOVE);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1030 }
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
1031
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1032 void
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1033 gaim_gtkdialogs_remove_chat(GaimChat *chat)
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1034 {
10877
99c1fb67b7bb [gaim-migrate @ 12569]
Daniel Atallah <daniel.atallah@gmail.com>
parents: 10874
diff changeset
1035 const gchar *name;
99c1fb67b7bb [gaim-migrate @ 12569]
Daniel Atallah <daniel.atallah@gmail.com>
parents: 10874
diff changeset
1036 gchar *text;
9753
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
1037
60705fd4f411 [gaim-migrate @ 10620]
Mark Doliner <mark@kingant.net>
parents: 9730
diff changeset
1038 g_return_if_fail(chat != NULL);
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1039
10877
99c1fb67b7bb [gaim-migrate @ 12569]
Daniel Atallah <daniel.atallah@gmail.com>
parents: 10874
diff changeset
1040 name = gaim_chat_get_name(chat);
99c1fb67b7bb [gaim-migrate @ 12569]
Daniel Atallah <daniel.atallah@gmail.com>
parents: 10874
diff changeset
1041 text = g_strdup_printf(_("You are about to remove the chat %s from your buddy list. Do you want to continue?"),
99c1fb67b7bb [gaim-migrate @ 12569]
Daniel Atallah <daniel.atallah@gmail.com>
parents: 10874
diff changeset
1042 name ? name : "");
99c1fb67b7bb [gaim-migrate @ 12569]
Daniel Atallah <daniel.atallah@gmail.com>
parents: 10874
diff changeset
1043
10222
224c9f244a3a [gaim-migrate @ 11351]
Sean Egan <seanegan@gmail.com>
parents: 10219
diff changeset
1044 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
1045 _("Remove Chat"), G_CALLBACK(gaim_gtkdialogs_remove_chat_cb),
9730
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1046 _("Cancel"), NULL);
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1047
c9ac1976ef01 [gaim-migrate @ 10591]
Mark Doliner <mark@kingant.net>
parents: 9728
diff changeset
1048 g_free(text);
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
1049 }