pidgin/gtkprefs.c

Sat, 22 Sep 2007 19:22:38 +0000

author
Gabriel Schulhof <nix@go-nix.ca>
date
Sat, 22 Sep 2007 19:22:38 +0000
changeset 20697
f842f22cd12f
parent 20685
039aef89faf6
child 21162
8359073125ba
permissions
-rw-r--r--

Accidentally merged stuff from omgp.pidgin (somehow)

6928
17e0c572bd97 [gaim-migrate @ 7475]
Christian Hammond <chipx86@chipx86.com>
parents: 6861
diff changeset
1 /**
5530
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5440
diff changeset
2 * @file gtkprefs.c GTK+ Preferences
16254
eeb2bba4dc94 Rename the Doxygen group from gtkui to pidgin.
Richard Laager <rlaager@pidgin.im>
parents: 16215
diff changeset
3 * @ingroup pidgin
20330
650a7af9c238 remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@pidgin.im>
parents: 20311
diff changeset
4 */
650a7af9c238 remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@pidgin.im>
parents: 20311
diff changeset
5
650a7af9c238 remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@pidgin.im>
parents: 20311
diff changeset
6 /* pidgin
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
7 *
15931
716b5fac1895 Re-sed the copyright notices so they don't all talk about Purple.
Richard Laager <rlaager@pidgin.im>
parents: 15884
diff changeset
8 * Pidgin is the legal property of its developers, whose names are too numerous
8046
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 8015
diff changeset
9 * to list here. Please refer to the COPYRIGHT file distributed with this
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 8015
diff changeset
10 * source distribution.
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
11 *
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
12 * This program is free software; you can redistribute it and/or modify
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
13 * it under the terms of the GNU General Public License as published by
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
14 * the Free Software Foundation; either version 2 of the License, or
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
15 * (at your option) any later version.
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
16 *
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
17 * This program is distributed in the hope that it will be useful,
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
20 * GNU General Public License for more details.
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
21 *
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
22 * You should have received a copy of the GNU General Public License
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
23 * along with this program; if not, write to the Free Software
19859
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 19849
diff changeset
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
25 *
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
26 */
9791
f5c5bda0b96b [gaim-migrate @ 10659]
Gary Kramlich <grim@pidgin.im>
parents: 9769
diff changeset
27 #include "internal.h"
15577
b8129373f65e More pidgin changes
Sean Egan <seanegan@pidgin.im>
parents: 15568
diff changeset
28 #include "pidgin.h"
5872
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5870
diff changeset
29
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5870
diff changeset
30 #include "debug.h"
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5870
diff changeset
31 #include "notify.h"
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5870
diff changeset
32 #include "prefs.h"
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5870
diff changeset
33 #include "proxy.h"
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5870
diff changeset
34 #include "prpl.h"
9508
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
35 #include "request.h"
12195
ef8f46c29e77 [gaim-migrate @ 14497]
Sean Egan <seanegan@pidgin.im>
parents: 12188
diff changeset
36 #include "savedstatuses.h"
5872
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5870
diff changeset
37 #include "sound.h"
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5870
diff changeset
38 #include "util.h"
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
39 #include "network.h"
5872
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5870
diff changeset
40
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5870
diff changeset
41 #include "gtkblist.h"
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5870
diff changeset
42 #include "gtkconv.h"
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5870
diff changeset
43 #include "gtkdebug.h"
9709
2e73f176cc80 [gaim-migrate @ 10570]
Mark Doliner <markdoliner@pidgin.im>
parents: 9707
diff changeset
44 #include "gtkdialogs.h"
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
45 #include "gtkimhtml.h"
8833
29a56613ce77 [gaim-migrate @ 9597]
Sean Egan <seanegan@pidgin.im>
parents: 8814
diff changeset
46 #include "gtkimhtmltoolbar.h"
5530
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5440
diff changeset
47 #include "gtkprefs.h"
12195
ef8f46c29e77 [gaim-migrate @ 14497]
Sean Egan <seanegan@pidgin.im>
parents: 12188
diff changeset
48 #include "gtksavedstatuses.h"
5684
10b916deb20c [gaim-migrate @ 6104]
Nathan Walp <nwalp@pidgin.im>
parents: 5681
diff changeset
49 #include "gtksound.h"
11525
1d06283bdcc9 [gaim-migrate @ 13773]
Francesco Fracassi <ffracassi@users.sourceforge.net>
parents: 11442
diff changeset
50 #include "gtkthemes.h"
5872
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5870
diff changeset
51 #include "gtkutils.h"
15883
969b74a3e27a According to etags, pidgin/ should be completely clean of references to 'gaim' as a client
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
52 #include "pidginstock.h"
5872
754c63f29b77 [gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents: 5870
diff changeset
53
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
54 #define PROXYHOST 0
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
55 #define PROXYPORT 1
6005
596ca49e2514 [gaim-migrate @ 6453]
Mark Doliner <markdoliner@pidgin.im>
parents: 6001
diff changeset
56 #define PROXYUSER 2
596ca49e2514 [gaim-migrate @ 6453]
Mark Doliner <markdoliner@pidgin.im>
parents: 6001
diff changeset
57 #define PROXYPASS 3
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
58
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
59 static int sound_row_sel = 0;
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
60 static GtkWidget *prefsnotebook;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
61
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
62 static GtkWidget *sound_entry = NULL;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
63 static GtkListStore *smiley_theme_store = NULL;
17481
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
64 static GtkTreeSelection *smiley_theme_sel = NULL;
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
65 static GtkWidget *prefs_proxy_frame = NULL;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
66
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
67 static GtkWidget *prefs = NULL;
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
68 static GtkWidget *debugbutton = NULL;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
69 static int notebook_page = 0;
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
70 static GtkTreeRowReference *previous_smiley_row = NULL;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
71
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
72 /*
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
73 * PROTOTYPES
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
74 */
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
75 static void delete_prefs(GtkWidget *, void *);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
76
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
77 static void
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
78 update_spin_value(GtkWidget *w, GtkWidget *spin)
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
79 {
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
80 const char *key = g_object_get_data(G_OBJECT(spin), "val");
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
81 int value;
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
82
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
83 value = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spin));
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
84
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
85 purple_prefs_set_int(key, value);
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
86 }
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
87
7976
fa3b5ed4ac97 [gaim-migrate @ 8653]
Daniel Atallah <datallah@pidgin.im>
parents: 7940
diff changeset
88 GtkWidget *
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
89 pidgin_prefs_labeled_spin_button(GtkWidget *box, const gchar *title,
10367
7bd4802cff7d [gaim-migrate @ 11586]
Kevin Stange <kstange@pidgin.im>
parents: 10364
diff changeset
90 const char *key, int min, int max, GtkSizeGroup *sg)
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
91 {
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
92 GtkWidget *hbox;
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
93 GtkWidget *label;
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
94 GtkWidget *spin;
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
95 GtkObject *adjust;
5550
1938d1e59cf8 [gaim-migrate @ 5951]
Christian Hammond <chipx86@chipx86.com>
parents: 5547
diff changeset
96 int val;
1938d1e59cf8 [gaim-migrate @ 5951]
Christian Hammond <chipx86@chipx86.com>
parents: 5547
diff changeset
97
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
98 val = purple_prefs_get_int(key);
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
99
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
100 hbox = gtk_hbox_new(FALSE, 5);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
101 gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, FALSE, 5);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
102 gtk_widget_show(hbox);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
103
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
104 label = gtk_label_new_with_mnemonic(title);
8713
8a7baa8f8460 [gaim-migrate @ 9467]
Gary Kramlich <grim@pidgin.im>
parents: 8705
diff changeset
105 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
106 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
107 gtk_widget_show(label);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
108
5550
1938d1e59cf8 [gaim-migrate @ 5951]
Christian Hammond <chipx86@chipx86.com>
parents: 5547
diff changeset
109 adjust = gtk_adjustment_new(val, min, max, 1, 1, 1);
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
110 spin = gtk_spin_button_new(GTK_ADJUSTMENT(adjust), 1, 0);
10367
7bd4802cff7d [gaim-migrate @ 11586]
Kevin Stange <kstange@pidgin.im>
parents: 10364
diff changeset
111 g_object_set_data(G_OBJECT(spin), "val", (char *)key);
8467
95c289667891 [gaim-migrate @ 9197]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 8458
diff changeset
112 if (max < 10000)
95c289667891 [gaim-migrate @ 9197]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 8458
diff changeset
113 gtk_widget_set_size_request(spin, 50, -1);
95c289667891 [gaim-migrate @ 9197]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 8458
diff changeset
114 else
95c289667891 [gaim-migrate @ 9197]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 8458
diff changeset
115 gtk_widget_set_size_request(spin, 60, -1);
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
116 gtk_box_pack_start(GTK_BOX(hbox), spin, FALSE, FALSE, 0);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
117 g_signal_connect(G_OBJECT(adjust), "value-changed",
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
118 G_CALLBACK(update_spin_value), GTK_WIDGET(spin));
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
119 gtk_widget_show(spin);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
120
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
121 gtk_label_set_mnemonic_widget(GTK_LABEL(label), spin);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
122
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
123 if (sg) {
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
124 gtk_size_group_add_widget(sg, label);
13684
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
125 gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
126 }
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
127
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15563
diff changeset
128 pidgin_set_accessible_label (spin, label);
10759
c6600b133594 [gaim-migrate @ 12362]
Mark Doliner <markdoliner@pidgin.im>
parents: 10701
diff changeset
129
8238
f7d22f952df5 [gaim-migrate @ 8961]
Mark Doliner <markdoliner@pidgin.im>
parents: 8231
diff changeset
130 return hbox;
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
131 }
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
132
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
133 static void
9422
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
134 entry_set(GtkEntry *entry, gpointer data) {
10367
7bd4802cff7d [gaim-migrate @ 11586]
Kevin Stange <kstange@pidgin.im>
parents: 10364
diff changeset
135 const char *key = (const char*)data;
9422
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
136
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
137 purple_prefs_set_string(key, gtk_entry_get_text(entry));
9422
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
138 }
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
139
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
140 GtkWidget *
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
141 pidgin_prefs_labeled_entry(GtkWidget *page, const gchar *title,
10367
7bd4802cff7d [gaim-migrate @ 11586]
Kevin Stange <kstange@pidgin.im>
parents: 10364
diff changeset
142 const char *key, GtkSizeGroup *sg)
9422
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
143 {
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
144 GtkWidget *hbox, *label, *entry;
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
145 const gchar *value;
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
146
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
147 value = purple_prefs_get_string(key);
9422
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
148
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
149 hbox = gtk_hbox_new(FALSE, 5);
13684
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
150 gtk_box_pack_start(GTK_BOX(page), hbox, FALSE, FALSE, 0);
9422
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
151 gtk_widget_show(hbox);
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
152
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
153 label = gtk_label_new_with_mnemonic(title);
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
154 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
155 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
156 gtk_widget_show(label);
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
157
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
158 entry = gtk_entry_new();
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
159 gtk_entry_set_text(GTK_ENTRY(entry), value);
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
160 gtk_box_pack_start(GTK_BOX(hbox), entry, FALSE, FALSE, 0);
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
161 g_signal_connect(G_OBJECT(entry), "changed",
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
162 G_CALLBACK(entry_set), (char*)key);
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
163 gtk_widget_show(entry);
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
164
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
165 gtk_label_set_mnemonic_widget(GTK_LABEL(label), entry);
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
166
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
167 if(sg) {
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
168 gtk_size_group_add_widget(sg, label);
13684
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
169 gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
9422
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
170 }
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
171
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15563
diff changeset
172 pidgin_set_accessible_label(entry, label);
9422
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
173
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
174 return hbox;
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
175 }
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
176
fda18b808f1c [gaim-migrate @ 10240]
Gary Kramlich <grim@pidgin.im>
parents: 9405
diff changeset
177 static void
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
178 dropdown_set(GObject *w, const char *key)
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
179 {
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
180 const char *str_value;
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
181 int int_value;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
182 PurplePrefType type;
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
183
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
184 type = GPOINTER_TO_INT(g_object_get_data(w, "type"));
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
185
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
186 if (type == PURPLE_PREF_INT) {
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
187 int_value = GPOINTER_TO_INT(g_object_get_data(w, "value"));
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
188
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
189 purple_prefs_set_int(key, int_value);
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
190 }
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
191 else if (type == PURPLE_PREF_STRING) {
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
192 str_value = (const char *)g_object_get_data(w, "value");
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
193
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
194 purple_prefs_set_string(key, str_value);
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
195 }
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
196 else if (type == PURPLE_PREF_BOOLEAN) {
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
197 purple_prefs_set_bool(key,
9151
deba164a360e [gaim-migrate @ 9935]
Nathan Walp <nwalp@pidgin.im>
parents: 9150
diff changeset
198 GPOINTER_TO_INT(g_object_get_data(w, "value")));
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
199 }
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
200 }
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
201
7976
fa3b5ed4ac97 [gaim-migrate @ 8653]
Daniel Atallah <datallah@pidgin.im>
parents: 7940
diff changeset
202 GtkWidget *
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
203 pidgin_prefs_dropdown_from_list(GtkWidget *box, const gchar *title,
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
204 PurplePrefType type, const char *key, GList *menuitems)
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
205 {
5546
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
206 GtkWidget *dropdown, *opt, *menu;
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
207 GtkWidget *label = NULL;
5546
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
208 GtkWidget *hbox;
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
209 gchar *text;
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
210 const char *stored_str = NULL;
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
211 int stored_int = 0;
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
212 int int_value = 0;
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
213 const char *str_value = NULL;
5546
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
214 int o = 0;
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
215
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
216 g_return_val_if_fail(menuitems != NULL, NULL);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
217
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
218 if (title != NULL) {
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
219 hbox = gtk_hbox_new(FALSE, 5);
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
220 /*gtk_container_add (GTK_CONTAINER (box), hbox);*/
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
221 gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, FALSE, 0);
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
222 gtk_widget_show(hbox);
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
223
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
224 label = gtk_label_new_with_mnemonic(title);
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
225 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
226 gtk_widget_show(label);
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
227 } else {
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
228 hbox = box;
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
229 }
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
230
8577
64f25a17f8e4 [gaim-migrate @ 9326]
Nathan Walp <nwalp@pidgin.im>
parents: 8573
diff changeset
231 #if 0 /* GTK_CHECK_VERSION(2,4,0) */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
232 if(type == PURPLE_PREF_INT)
8577
64f25a17f8e4 [gaim-migrate @ 9326]
Nathan Walp <nwalp@pidgin.im>
parents: 8573
diff changeset
233 model = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_INT);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
234 else if(type == PURPLE_PREF_STRING)
8577
64f25a17f8e4 [gaim-migrate @ 9326]
Nathan Walp <nwalp@pidgin.im>
parents: 8573
diff changeset
235 model = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_STRING);
64f25a17f8e4 [gaim-migrate @ 9326]
Nathan Walp <nwalp@pidgin.im>
parents: 8573
diff changeset
236 dropdown = gtk_combo_box_new_with_model(model);
64f25a17f8e4 [gaim-migrate @ 9326]
Nathan Walp <nwalp@pidgin.im>
parents: 8573
diff changeset
237 #else
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
238 dropdown = gtk_option_menu_new();
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
239 menu = gtk_menu_new();
8577
64f25a17f8e4 [gaim-migrate @ 9326]
Nathan Walp <nwalp@pidgin.im>
parents: 8573
diff changeset
240 #endif
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
241
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
242 if (label != NULL) {
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
243 gtk_label_set_mnemonic_widget(GTK_LABEL(label), dropdown);
19547
0c3fcdc6a025 Separate out setting up the labelled-by and label-for ATK relationships
Casey Harkins <charkins@pidgin.im>
parents: 19366
diff changeset
244 pidgin_set_accessible_relations (dropdown, label);
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
245 }
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
246
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
247 if (type == PURPLE_PREF_INT)
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
248 stored_int = purple_prefs_get_int(key);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
249 else if (type == PURPLE_PREF_STRING)
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
250 stored_str = purple_prefs_get_string(key);
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
251
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
252 while (menuitems != NULL && (text = (char *) menuitems->data) != NULL) {
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
253 menuitems = g_list_next(menuitems);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
254 g_return_val_if_fail(menuitems != NULL, NULL);
5546
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
255
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
256 opt = gtk_menu_item_new_with_label(text);
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
257
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
258 g_object_set_data(G_OBJECT(opt), "type", GINT_TO_POINTER(type));
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
259
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
260 if (type == PURPLE_PREF_INT) {
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
261 int_value = GPOINTER_TO_INT(menuitems->data);
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
262 g_object_set_data(G_OBJECT(opt), "value",
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
263 GINT_TO_POINTER(int_value));
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
264 }
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
265 else if (type == PURPLE_PREF_STRING) {
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
266 str_value = (const char *)menuitems->data;
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
267
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
268 g_object_set_data(G_OBJECT(opt), "value", (char *)str_value);
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
269 }
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
270 else if (type == PURPLE_PREF_BOOLEAN) {
9151
deba164a360e [gaim-migrate @ 9935]
Nathan Walp <nwalp@pidgin.im>
parents: 9150
diff changeset
271 g_object_set_data(G_OBJECT(opt), "value",
deba164a360e [gaim-migrate @ 9935]
Nathan Walp <nwalp@pidgin.im>
parents: 9150
diff changeset
272 menuitems->data);
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
273 }
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
274
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
275 g_signal_connect(G_OBJECT(opt), "activate",
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
276 G_CALLBACK(dropdown_set), (char *)key);
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
277
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
278 gtk_widget_show(opt);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
279 gtk_menu_shell_append(GTK_MENU_SHELL(menu), opt);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
280
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
281 if ((type == PURPLE_PREF_INT && stored_int == int_value) ||
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
282 (type == PURPLE_PREF_STRING && stored_str != NULL &&
5753
5daa987c6b87 [gaim-migrate @ 6178]
Christian Hammond <chipx86@chipx86.com>
parents: 5716
diff changeset
283 !strcmp(stored_str, str_value)) ||
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
284 (type == PURPLE_PREF_BOOLEAN &&
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
285 (purple_prefs_get_bool(key) == GPOINTER_TO_INT(menuitems->data)))) {
5546
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
286
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
287 gtk_menu_set_active(GTK_MENU(menu), o);
5546
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
288 }
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
289
5568
3c7cc231c8c4 [gaim-migrate @ 5970]
Christian Hammond <chipx86@chipx86.com>
parents: 5567
diff changeset
290 menuitems = g_list_next(menuitems);
3c7cc231c8c4 [gaim-migrate @ 5970]
Christian Hammond <chipx86@chipx86.com>
parents: 5567
diff changeset
291
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
292 o++;
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
293 }
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
294
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
295 gtk_option_menu_set_menu(GTK_OPTION_MENU(dropdown), menu);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
296 gtk_box_pack_start(GTK_BOX(hbox), dropdown, FALSE, FALSE, 0);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
297 gtk_widget_show(dropdown);
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
298
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
299 return label;
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
300 }
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
301
7976
fa3b5ed4ac97 [gaim-migrate @ 8653]
Daniel Atallah <datallah@pidgin.im>
parents: 7940
diff changeset
302 GtkWidget *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
303 pidgin_prefs_dropdown(GtkWidget *box, const gchar *title, PurplePrefType type,
5550
1938d1e59cf8 [gaim-migrate @ 5951]
Christian Hammond <chipx86@chipx86.com>
parents: 5547
diff changeset
304 const char *key, ...)
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
305 {
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
306 va_list ap;
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
307 GList *menuitems = NULL;
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
308 GtkWidget *dropdown = NULL;
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
309 char *name;
5546
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
310 int int_value;
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
311 const char *str_value;
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
312
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
313 g_return_val_if_fail(type == PURPLE_PREF_BOOLEAN || type == PURPLE_PREF_INT ||
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
314 type == PURPLE_PREF_STRING, NULL);
9151
deba164a360e [gaim-migrate @ 9935]
Nathan Walp <nwalp@pidgin.im>
parents: 9150
diff changeset
315
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
316 va_start(ap, key);
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
317 while ((name = va_arg(ap, char *)) != NULL) {
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
318
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
319 menuitems = g_list_prepend(menuitems, name);
5546
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
320
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
321 if (type == PURPLE_PREF_INT || type == PURPLE_PREF_BOOLEAN) {
5546
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
322 int_value = va_arg(ap, int);
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
323 menuitems = g_list_prepend(menuitems, GINT_TO_POINTER(int_value));
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
324 }
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
325 else {
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
326 str_value = va_arg(ap, const char *);
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
327 menuitems = g_list_prepend(menuitems, (char *)str_value);
5546
bad75481a8c6 [gaim-migrate @ 5947]
Christian Hammond <chipx86@chipx86.com>
parents: 5545
diff changeset
328 }
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
329 }
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
330 va_end(ap);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
331
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
332 g_return_val_if_fail(menuitems != NULL, NULL);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
333
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
334 menuitems = g_list_reverse(menuitems);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
335
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
336 dropdown = pidgin_prefs_dropdown_from_list(box, title, type, key,
7987
3678cf633995 [gaim-migrate @ 8664]
Nathan Walp <nwalp@pidgin.im>
parents: 7976
diff changeset
337 menuitems);
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
338
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
339 g_list_free(menuitems);
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
340
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
341 return dropdown;
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
342 }
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
343
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
344 static void
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
345 delete_prefs(GtkWidget *asdf, void *gdsa)
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
346 {
9508
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
347 /* Close any "select sound" request dialogs */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
348 purple_request_close_with_handle(prefs);
9508
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
349
10087
e5b80a38939d [gaim-migrate @ 11098]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10079
diff changeset
350 /* Unregister callbacks. */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
351 purple_prefs_disconnect_by_handle(prefs);
10087
e5b80a38939d [gaim-migrate @ 11098]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10079
diff changeset
352
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
353 prefs = NULL;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
354 sound_entry = NULL;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
355 debugbutton = NULL;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
356 notebook_page = 0;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
357 smiley_theme_store = NULL;
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
358 if (previous_smiley_row)
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
359 gtk_tree_row_reference_free(previous_smiley_row);
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
360 previous_smiley_row = NULL;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
361
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
362 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
363
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
364 static void smiley_sel(GtkTreeSelection *sel, GtkTreeModel *model) {
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
365 GtkTreeIter iter;
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
366 const char *themename;
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
367 char *description;
12600
7ecd4441fdc7 [gaim-migrate @ 14934]
Richard Laager <rlaager@pidgin.im>
parents: 12580
diff changeset
368 GValue val;
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
369 GtkTreePath *path, *oldpath;
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
370 struct smiley_theme *new_theme, *old_theme;
17414
7980dbdb9d2d Don't remove all themes when re-probing.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17413
diff changeset
371 GtkWidget *remove_button = g_object_get_data(G_OBJECT(sel), "remove_button");
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
372
17481
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
373 if (!gtk_tree_selection_get_selected(sel, &model, &iter)) {
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
374 gtk_widget_set_sensitive(remove_button, FALSE);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
375 return;
17481
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
376 }
11550
104b71f353e5 [gaim-migrate @ 13805]
Levi Bard <levi@bard.sytes.net>
parents: 11525
diff changeset
377
104b71f353e5 [gaim-migrate @ 13805]
Levi Bard <levi@bard.sytes.net>
parents: 11525
diff changeset
378 old_theme = current_smiley_theme;
12600
7ecd4441fdc7 [gaim-migrate @ 14934]
Richard Laager <rlaager@pidgin.im>
parents: 12580
diff changeset
379 val.g_type = 0;
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
380 gtk_tree_model_get_value(model, &iter, 3, &val);
11550
104b71f353e5 [gaim-migrate @ 13805]
Levi Bard <levi@bard.sytes.net>
parents: 11525
diff changeset
381 path = gtk_tree_model_get_path(model, &iter);
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
382 themename = g_value_get_string(&val);
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
383 purple_prefs_set_string(PIDGIN_PREFS_ROOT "/smileys/theme", themename);
17414
7980dbdb9d2d Don't remove all themes when re-probing.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17413
diff changeset
384
18550
a98ed091a821 Removing the default theme doesn't make sense for the average user. They
Richard Laager <rlaager@pidgin.im>
parents: 18540
diff changeset
385 gtk_widget_set_sensitive(remove_button, (strcmp(themename, "none") &&
a98ed091a821 Removing the default theme doesn't make sense for the average user. They
Richard Laager <rlaager@pidgin.im>
parents: 18540
diff changeset
386 strcmp(themename, _("Default"))));
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
387 g_value_unset (&val);
11550
104b71f353e5 [gaim-migrate @ 13805]
Levi Bard <levi@bard.sytes.net>
parents: 11525
diff changeset
388
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
389 /* current_smiley_theme is set in callback for the above pref change */
11550
104b71f353e5 [gaim-migrate @ 13805]
Levi Bard <levi@bard.sytes.net>
parents: 11525
diff changeset
390 new_theme = current_smiley_theme;
104b71f353e5 [gaim-migrate @ 13805]
Levi Bard <levi@bard.sytes.net>
parents: 11525
diff changeset
391 description = g_strdup_printf("<span size='larger' weight='bold'>%s</span> - %s\n"
104b71f353e5 [gaim-migrate @ 13805]
Levi Bard <levi@bard.sytes.net>
parents: 11525
diff changeset
392 "<span size='smaller' foreground='white'>%s</span>",
17474
a7f61acc10f6 A somewhat-Warmenhoved patch from tfujiwara to allow for the smiley theme
Richard Laager <rlaager@pidgin.im>
parents: 17411
diff changeset
393 _(new_theme->name), _(new_theme->author), _(new_theme->desc));
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
394 gtk_list_store_set(smiley_theme_store, &iter, 1, description, -1);
11550
104b71f353e5 [gaim-migrate @ 13805]
Levi Bard <levi@bard.sytes.net>
parents: 11525
diff changeset
395 g_free(description);
104b71f353e5 [gaim-migrate @ 13805]
Levi Bard <levi@bard.sytes.net>
parents: 11525
diff changeset
396
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
397 if (new_theme != old_theme && previous_smiley_row) {
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
398 oldpath = gtk_tree_row_reference_get_path(previous_smiley_row);
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
399 if (gtk_tree_model_get_iter(model, &iter, oldpath)) {
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
400 description = g_strdup_printf("<span size='larger' weight='bold'>%s</span> - %s\n"
11550
104b71f353e5 [gaim-migrate @ 13805]
Levi Bard <levi@bard.sytes.net>
parents: 11525
diff changeset
401 "<span size='smaller' foreground='dim grey'>%s</span>",
17474
a7f61acc10f6 A somewhat-Warmenhoved patch from tfujiwara to allow for the smiley theme
Richard Laager <rlaager@pidgin.im>
parents: 17411
diff changeset
402 _(old_theme->name), _(old_theme->author), _(old_theme->desc));
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
403 gtk_list_store_set(smiley_theme_store, &iter, 1,
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
404 description, -1);
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
405 g_free(description);
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
406 }
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
407 gtk_tree_path_free(oldpath);
11550
104b71f353e5 [gaim-migrate @ 13805]
Levi Bard <levi@bard.sytes.net>
parents: 11525
diff changeset
408 }
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
409 if (previous_smiley_row)
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
410 gtk_tree_row_reference_free(previous_smiley_row);
11550
104b71f353e5 [gaim-migrate @ 13805]
Levi Bard <levi@bard.sytes.net>
parents: 11525
diff changeset
411 previous_smiley_row = gtk_tree_row_reference_new(model, path);
104b71f353e5 [gaim-migrate @ 13805]
Levi Bard <levi@bard.sytes.net>
parents: 11525
diff changeset
412 gtk_tree_path_free(path);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
413 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
414
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
415 static GtkTreeRowReference *theme_refresh_theme_list()
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
416 {
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
417 GdkPixbuf *pixbuf;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
418 GSList *themes;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
419 GtkTreeIter iter;
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
420 GtkTreeRowReference *row_ref = NULL;
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
421
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
422 if (previous_smiley_row)
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
423 gtk_tree_row_reference_free(previous_smiley_row);
11550
104b71f353e5 [gaim-migrate @ 13805]
Levi Bard <levi@bard.sytes.net>
parents: 11525
diff changeset
424 previous_smiley_row = NULL;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
425
16263
27e0ef0f38e6 Word on the street is that we don't want things named pidginfoo_bar(), but
Richard Laager <rlaager@pidgin.im>
parents: 16259
diff changeset
426 pidgin_themes_smiley_theme_probe();
11525
1d06283bdcc9 [gaim-migrate @ 13773]
Francesco Fracassi <ffracassi@users.sourceforge.net>
parents: 11442
diff changeset
427
1d06283bdcc9 [gaim-migrate @ 13773]
Francesco Fracassi <ffracassi@users.sourceforge.net>
parents: 11442
diff changeset
428 if (!(themes = smiley_themes))
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
429 return NULL;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
430
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
431 gtk_list_store_clear(smiley_theme_store);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
432
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
433 while (themes) {
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
434 struct smiley_theme *theme = themes->data;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
435 char *description = g_strdup_printf("<span size='larger' weight='bold'>%s</span> - %s\n"
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
436 "<span size='smaller' foreground='dim grey'>%s</span>",
17474
a7f61acc10f6 A somewhat-Warmenhoved patch from tfujiwara to allow for the smiley theme
Richard Laager <rlaager@pidgin.im>
parents: 17411
diff changeset
437 _(theme->name), _(theme->author), _(theme->desc));
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
438 gtk_list_store_append (smiley_theme_store, &iter);
8494
55cc657d9d8d [gaim-migrate @ 9229]
Mark Doliner <markdoliner@pidgin.im>
parents: 8467
diff changeset
439
55cc657d9d8d [gaim-migrate @ 9229]
Mark Doliner <markdoliner@pidgin.im>
parents: 8467
diff changeset
440 /*
55cc657d9d8d [gaim-migrate @ 9229]
Mark Doliner <markdoliner@pidgin.im>
parents: 8467
diff changeset
441 * LEAK - Gentoo memprof thinks pixbuf is leaking here... but it
55cc657d9d8d [gaim-migrate @ 9229]
Mark Doliner <markdoliner@pidgin.im>
parents: 8467
diff changeset
442 * looks like it should be ok to me. Anyone know what's up? --Mark
55cc657d9d8d [gaim-migrate @ 9229]
Mark Doliner <markdoliner@pidgin.im>
parents: 8467
diff changeset
443 */
8963
034540b215ef [gaim-migrate @ 9737]
Kevin Stange <kstange@pidgin.im>
parents: 8949
diff changeset
444 pixbuf = (theme->icon ? gdk_pixbuf_new_from_file(theme->icon, NULL) : NULL);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
445
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
446 gtk_list_store_set(smiley_theme_store, &iter,
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
447 0, pixbuf,
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
448 1, description,
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
449 2, theme->path,
8928
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
450 3, theme->name,
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
451 -1);
7094
8f9588491993 [gaim-migrate @ 7659]
Christian Hammond <chipx86@chipx86.com>
parents: 7092
diff changeset
452
8f9588491993 [gaim-migrate @ 7659]
Christian Hammond <chipx86@chipx86.com>
parents: 7092
diff changeset
453 if (pixbuf != NULL)
8f9588491993 [gaim-migrate @ 7659]
Christian Hammond <chipx86@chipx86.com>
parents: 7092
diff changeset
454 g_object_unref(G_OBJECT(pixbuf));
8f9588491993 [gaim-migrate @ 7659]
Christian Hammond <chipx86@chipx86.com>
parents: 7092
diff changeset
455
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
456 g_free(description);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
457 themes = themes->next;
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
458
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
459 /* If this is the currently selected theme,
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
460 * we will need to select it. Grab the row reference. */
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
461 if (theme == current_smiley_theme) {
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
462 GtkTreePath *path = gtk_tree_model_get_path(
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
463 GTK_TREE_MODEL(smiley_theme_store), &iter);
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
464 row_ref = gtk_tree_row_reference_new(
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
465 GTK_TREE_MODEL(smiley_theme_store), path);
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
466 gtk_tree_path_free(path);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
467 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
468 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
469
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
470 return row_ref;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
471 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
472
10871
c0282a4f2250 [gaim-migrate @ 12558]
Mark Doliner <markdoliner@pidgin.im>
parents: 10859
diff changeset
473 static void theme_install_theme(char *path, char *extn) {
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
474 #ifndef _WIN32
12134
8652eeb5ff59 [gaim-migrate @ 14434]
Richard Laager <rlaager@pidgin.im>
parents: 12123
diff changeset
475 gchar *command;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
476 #endif
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
477 gchar *destdir;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
478 gchar *tail;
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
479 GtkTreeRowReference *theme_rowref;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
480
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
481 /* Just to be safe */
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
482 g_strchomp(path);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
483
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
484 /* I dont know what you are, get out of here */
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
485 if (extn != NULL)
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
486 tail = extn;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
487 else if ((tail = strrchr(path, '.')) == NULL)
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
488 return;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
489
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
490 destdir = g_strconcat(purple_user_dir(), G_DIR_SEPARATOR_S "smileys", NULL);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
491
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
492 /* We'll check this just to make sure. This also lets us do something different on
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
493 * other platforms, if need be */
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
494 if (!g_ascii_strcasecmp(tail, ".gz") || !g_ascii_strcasecmp(tail, ".tgz")) {
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
495 #ifndef _WIN32
12134
8652eeb5ff59 [gaim-migrate @ 14434]
Richard Laager <rlaager@pidgin.im>
parents: 12123
diff changeset
496 gchar *path_escaped = g_shell_quote(path);
8652eeb5ff59 [gaim-migrate @ 14434]
Richard Laager <rlaager@pidgin.im>
parents: 12123
diff changeset
497 gchar *destdir_escaped = g_shell_quote(destdir);
8652eeb5ff59 [gaim-migrate @ 14434]
Richard Laager <rlaager@pidgin.im>
parents: 12123
diff changeset
498 command = g_strdup_printf("tar > /dev/null xzf %s -C %s", path_escaped, destdir_escaped);
8652eeb5ff59 [gaim-migrate @ 14434]
Richard Laager <rlaager@pidgin.im>
parents: 12123
diff changeset
499 g_free(path_escaped);
8652eeb5ff59 [gaim-migrate @ 14434]
Richard Laager <rlaager@pidgin.im>
parents: 12123
diff changeset
500 g_free(destdir_escaped);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
501 #else
15574
18d9d1c05994 Win32 de-gaimification of pidgin
Daniel Atallah <datallah@pidgin.im>
parents: 15568
diff changeset
502 if(!winpidgin_gz_untar(path, destdir)) {
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
503 g_free(destdir);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
504 return;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
505 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
506 #endif
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
507 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
508 else {
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
509 g_free(destdir);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
510 return;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
511 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
512
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
513 #ifndef _WIN32
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
514 /* Fire! */
12134
8652eeb5ff59 [gaim-migrate @ 14434]
Richard Laager <rlaager@pidgin.im>
parents: 12123
diff changeset
515 if (system(command))
8652eeb5ff59 [gaim-migrate @ 14434]
Richard Laager <rlaager@pidgin.im>
parents: 12123
diff changeset
516 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
517 purple_notify_error(NULL, NULL, _("Smiley theme failed to unpack."), NULL);
12134
8652eeb5ff59 [gaim-migrate @ 14434]
Richard Laager <rlaager@pidgin.im>
parents: 12123
diff changeset
518 }
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
519
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
520 g_free(command);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
521 #endif
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
522 g_free(destdir);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
523
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
524 theme_rowref = theme_refresh_theme_list();
17481
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
525 if (theme_rowref != NULL) {
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
526 GtkTreePath *tp = gtk_tree_row_reference_get_path(theme_rowref);
17414
7980dbdb9d2d Don't remove all themes when re-probing.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17413
diff changeset
527
18538
562a1953d013 Minor coding style changes.
Richard Laager <rlaager@pidgin.im>
parents: 18536
diff changeset
528 if (tp)
17481
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
529 gtk_tree_selection_select_path(smiley_theme_sel, tp);
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
530 gtk_tree_row_reference_free(theme_rowref);
17414
7980dbdb9d2d Don't remove all themes when re-probing.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17413
diff changeset
531 }
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
532 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
533
7094
8f9588491993 [gaim-migrate @ 7659]
Christian Hammond <chipx86@chipx86.com>
parents: 7092
diff changeset
534 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
535 theme_got_url(PurpleUtilFetchUrlData *url_data, gpointer user_data,
14416
c95ffd983a39 [gaim-migrate @ 17060]
Mark Doliner <markdoliner@pidgin.im>
parents: 14286
diff changeset
536 const gchar *themedata, size_t len, const gchar *error_message)
7094
8f9588491993 [gaim-migrate @ 7659]
Christian Hammond <chipx86@chipx86.com>
parents: 7092
diff changeset
537 {
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
538 FILE *f;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
539 gchar *path;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
540
14416
c95ffd983a39 [gaim-migrate @ 17060]
Mark Doliner <markdoliner@pidgin.im>
parents: 14286
diff changeset
541 if ((error_message != NULL) || (len == 0))
13205
4ce13a2abfb6 [gaim-migrate @ 15567]
Richard Laager <rlaager@pidgin.im>
parents: 13130
diff changeset
542 return;
4ce13a2abfb6 [gaim-migrate @ 15567]
Richard Laager <rlaager@pidgin.im>
parents: 13130
diff changeset
543
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
544 f = purple_mkstemp(&path, TRUE);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
545 fwrite(themedata, len, 1, f);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
546 fclose(f);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
547
14416
c95ffd983a39 [gaim-migrate @ 17060]
Mark Doliner <markdoliner@pidgin.im>
parents: 14286
diff changeset
548 theme_install_theme(path, user_data);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
549
10589
4e10236e06d4 [gaim-migrate @ 11994]
Daniel Atallah <datallah@pidgin.im>
parents: 10492
diff changeset
550 g_unlink(path);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
551 g_free(path);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
552 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
553
14416
c95ffd983a39 [gaim-migrate @ 17060]
Mark Doliner <markdoliner@pidgin.im>
parents: 14286
diff changeset
554 static void
c95ffd983a39 [gaim-migrate @ 17060]
Mark Doliner <markdoliner@pidgin.im>
parents: 14286
diff changeset
555 theme_dnd_recv(GtkWidget *widget, GdkDragContext *dc, guint x, guint y,
c95ffd983a39 [gaim-migrate @ 17060]
Mark Doliner <markdoliner@pidgin.im>
parents: 14286
diff changeset
556 GtkSelectionData *sd, guint info, guint t, gpointer data)
c95ffd983a39 [gaim-migrate @ 17060]
Mark Doliner <markdoliner@pidgin.im>
parents: 14286
diff changeset
557 {
11137
cf40226ddff7 [gaim-migrate @ 13201]
Mark Doliner <markdoliner@pidgin.im>
parents: 11082
diff changeset
558 gchar *name = (gchar *)sd->data;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
559
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
560 if ((sd->length >= 0) && (sd->format == 8)) {
11137
cf40226ddff7 [gaim-migrate @ 13201]
Mark Doliner <markdoliner@pidgin.im>
parents: 11082
diff changeset
561 /* Well, it looks like the drag event was cool.
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
562 * Let's do something with it */
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
563
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
564 if (!g_ascii_strncasecmp(name, "file://", 7)) {
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
565 GError *converr = NULL;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
566 gchar *tmp;
11137
cf40226ddff7 [gaim-migrate @ 13201]
Mark Doliner <markdoliner@pidgin.im>
parents: 11082
diff changeset
567 /* It looks like we're dealing with a local file. Let's
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
568 * just untar it in the right place */
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
569 if(!(tmp = g_filename_from_uri(name, NULL, &converr))) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
570 purple_debug(PURPLE_DEBUG_ERROR, "theme dnd", "%s\n",
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
571 (converr ? converr->message :
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
572 "g_filename_from_uri error"));
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
573 return;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
574 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
575 theme_install_theme(tmp, NULL);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
576 g_free(tmp);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
577 } else if (!g_ascii_strncasecmp(name, "http://", 7)) {
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
578 /* Oo, a web drag and drop. This is where things
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
579 * will start to get interesting */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
580 purple_util_fetch_url(name, TRUE, NULL, FALSE, theme_got_url, ".tgz");
13205
4ce13a2abfb6 [gaim-migrate @ 15567]
Richard Laager <rlaager@pidgin.im>
parents: 13130
diff changeset
581 } else if (!g_ascii_strncasecmp(name, "https://", 8)) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
582 /* purple_util_fetch_url() doesn't support HTTPS, but we want users
13205
4ce13a2abfb6 [gaim-migrate @ 15567]
Richard Laager <rlaager@pidgin.im>
parents: 13130
diff changeset
583 * to be able to drag and drop links from the SF trackers, so
4ce13a2abfb6 [gaim-migrate @ 15567]
Richard Laager <rlaager@pidgin.im>
parents: 13130
diff changeset
584 * we'll try it as an HTTP URL. */
4ce13a2abfb6 [gaim-migrate @ 15567]
Richard Laager <rlaager@pidgin.im>
parents: 13130
diff changeset
585 char *tmp = g_strdup(name + 1);
4ce13a2abfb6 [gaim-migrate @ 15567]
Richard Laager <rlaager@pidgin.im>
parents: 13130
diff changeset
586 tmp[0] = 'h';
4ce13a2abfb6 [gaim-migrate @ 15567]
Richard Laager <rlaager@pidgin.im>
parents: 13130
diff changeset
587 tmp[1] = 't';
4ce13a2abfb6 [gaim-migrate @ 15567]
Richard Laager <rlaager@pidgin.im>
parents: 13130
diff changeset
588 tmp[2] = 't';
4ce13a2abfb6 [gaim-migrate @ 15567]
Richard Laager <rlaager@pidgin.im>
parents: 13130
diff changeset
589 tmp[3] = 'p';
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
590 purple_util_fetch_url(tmp, TRUE, NULL, FALSE, theme_got_url, ".tgz");
13205
4ce13a2abfb6 [gaim-migrate @ 15567]
Richard Laager <rlaager@pidgin.im>
parents: 13130
diff changeset
591 g_free(tmp);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
592 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
593
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
594 gtk_drag_finish(dc, TRUE, FALSE, t);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
595 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
596
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
597 gtk_drag_finish(dc, FALSE, FALSE, t);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
598 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
599
8928
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
600 /* Does same as normal sort, except "none" is sorted first */
15880
d275b025481c More Gaim to Pidgin changes
Sean Egan <seanegan@pidgin.im>
parents: 15578
diff changeset
601 static gint pidgin_sort_smileys (GtkTreeModel *model,
8928
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
602 GtkTreeIter *a,
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
603 GtkTreeIter *b,
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
604 gpointer userdata)
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
605 {
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
606 gint ret = 0;
9949
377cd65fab3d [gaim-migrate @ 10845]
Daniel Atallah <datallah@pidgin.im>
parents: 9944
diff changeset
607 gchar *name1 = NULL, *name2 = NULL;
8928
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
608
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
609 gtk_tree_model_get(model, a, 3, &name1, -1);
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
610 gtk_tree_model_get(model, b, 3, &name2, -1);
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
611
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
612 if (name1 == NULL || name2 == NULL) {
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
613 if (!(name1 == NULL && name2 == NULL))
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
614 ret = (name1 == NULL) ? -1: 1;
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
615 } else if (!g_ascii_strcasecmp(name1, "none")) {
10167
3f4db9c54e04 [gaim-migrate @ 11254]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10164
diff changeset
616 if (!g_utf8_collate(name1, name2))
3f4db9c54e04 [gaim-migrate @ 11254]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10164
diff changeset
617 ret = 0;
3f4db9c54e04 [gaim-migrate @ 11254]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10164
diff changeset
618 else
3f4db9c54e04 [gaim-migrate @ 11254]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10164
diff changeset
619 /* Sort name1 first */
3f4db9c54e04 [gaim-migrate @ 11254]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10164
diff changeset
620 ret = -1;
8928
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
621 } else if (!g_ascii_strcasecmp(name2, "none")) {
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
622 /* Sort name2 first */
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
623 ret = 1;
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
624 } else {
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
625 /* Neither string is "none", default to normal sort */
16215
1f791e032df2 Sort smiley themes case-insensitively because I think that's what
Mark Doliner <markdoliner@pidgin.im>
parents: 16123
diff changeset
626 ret = purple_utf8_strcasecmp(name1,name2);
8928
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
627 }
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
628
9521
9c611a48614b [gaim-migrate @ 10348]
Mark Doliner <markdoliner@pidgin.im>
parents: 9508
diff changeset
629 g_free(name1);
9c611a48614b [gaim-migrate @ 10348]
Mark Doliner <markdoliner@pidgin.im>
parents: 9508
diff changeset
630 g_free(name2);
9c611a48614b [gaim-migrate @ 10348]
Mark Doliner <markdoliner@pidgin.im>
parents: 9508
diff changeset
631
8928
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
632 return ret;
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
633 }
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
634
17481
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
635 static void
18536
5bb1c6937823 Whitespace changes.
Richard Laager <rlaager@pidgin.im>
parents: 18348
diff changeset
636 request_theme_file_name_cb(gpointer data, char *theme_file_name)
17413
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
637 {
18536
5bb1c6937823 Whitespace changes.
Richard Laager <rlaager@pidgin.im>
parents: 18348
diff changeset
638 theme_install_theme(theme_file_name, NULL) ;
17413
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
639 }
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
640
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
641 static void
18536
5bb1c6937823 Whitespace changes.
Richard Laager <rlaager@pidgin.im>
parents: 18348
diff changeset
642 add_theme_button_clicked_cb(GtkWidget *widget, gpointer null)
17413
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
643 {
20685
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
644 purple_request_file_with_hint(NULL, _("Install Theme"), NULL, FALSE,
19300
c55fa83a55ea Finished implem in gtkrequest.c
Gabriel Schulhof <nix@go-nix.ca>
parents: 19294
diff changeset
645 (GCallback)request_theme_file_name_cb, NULL, NULL, NULL, NULL, "preferences", NULL) ;
17413
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
646 }
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
647
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
648 static void
17481
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
649 remove_theme_button_clicked_cb(GtkWidget *button, GtkTreeView *tv)
17413
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
650 {
17481
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
651 char *theme_name = NULL, *theme_file = NULL;
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
652 GtkTreeModel *tm;
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
653 GtkTreeIter itr;
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
654 GtkTreeRowReference *trr = NULL;
17413
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
655
18538
562a1953d013 Minor coding style changes.
Richard Laager <rlaager@pidgin.im>
parents: 18536
diff changeset
656 if ((tm = gtk_tree_view_get_model(tv)) == NULL)
562a1953d013 Minor coding style changes.
Richard Laager <rlaager@pidgin.im>
parents: 18536
diff changeset
657 return;
562a1953d013 Minor coding style changes.
Richard Laager <rlaager@pidgin.im>
parents: 18536
diff changeset
658 if (!gtk_tree_selection_get_selected(smiley_theme_sel, NULL, &itr))
562a1953d013 Minor coding style changes.
Richard Laager <rlaager@pidgin.im>
parents: 18536
diff changeset
659 return;
17481
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
660 gtk_tree_model_get(tm, &itr, 2, &theme_file, 3, &theme_name, -1);
17413
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
661
18538
562a1953d013 Minor coding style changes.
Richard Laager <rlaager@pidgin.im>
parents: 18536
diff changeset
662 if (theme_file && theme_name && strcmp(theme_name, "none"))
562a1953d013 Minor coding style changes.
Richard Laager <rlaager@pidgin.im>
parents: 18536
diff changeset
663 pidgin_themes_remove_smiley_theme(theme_file);
17413
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
664
17481
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
665 if ((trr = theme_refresh_theme_list()) != NULL) {
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
666 GtkTreePath *tp = gtk_tree_row_reference_get_path(trr);
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
667
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
668 if (tp) {
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
669 gtk_tree_selection_select_path(smiley_theme_sel, tp);
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
670 gtk_tree_path_free(tp);
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
671 }
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
672 gtk_tree_row_reference_free(trr);
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
673 }
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
674
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
675 g_free(theme_file);
17413
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
676 g_free(theme_name);
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
677 }
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
678
10850
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
679 static GtkWidget *
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
680 theme_page()
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
681 {
17481
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
682 GtkWidget *add_button, *remove_button;
17413
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
683 GtkWidget *hbox_buttons;
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
684 GtkWidget *alignment;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
685 GtkWidget *ret;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
686 GtkWidget *sw;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
687 GtkWidget *view;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
688 GtkCellRenderer *rend;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
689 GtkTreeViewColumn *col;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
690 GtkTreeSelection *sel;
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
691 GtkTreeRowReference *rowref;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
692 GtkWidget *label;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
693 GtkTargetEntry te[3] = {{"text/plain", 0, 0},{"text/uri-list", 0, 1},{"STRING", 0, 2}};
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
694
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
695 ret = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
696 gtk_container_set_border_width (GTK_CONTAINER (ret), PIDGIN_HIG_BORDER);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
697
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
698 label = gtk_label_new(_("Select a smiley theme that you would like to use from the list below. New themes can be installed by dragging and dropping them onto the theme list."));
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
699
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
700 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
701 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
702 gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_LEFT);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
703
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
704 gtk_box_pack_start(GTK_BOX(ret), label, FALSE, TRUE, 0);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
705 gtk_widget_show(label);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
706
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
707 sw = gtk_scrolled_window_new(NULL,NULL);
7939
e44763efd9eb [gaim-migrate @ 8610]
Mark Doliner <markdoliner@pidgin.im>
parents: 7932
diff changeset
708 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
7931
315fd3921a40 [gaim-migrate @ 8602]
Mark Doliner <markdoliner@pidgin.im>
parents: 7929
diff changeset
709 gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_IN);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
710
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
711 gtk_box_pack_start(GTK_BOX(ret), sw, TRUE, TRUE, 0);
8928
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
712 smiley_theme_store = gtk_list_store_new (4, GDK_TYPE_PIXBUF, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
713
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
714 rowref = theme_refresh_theme_list();
8075
78e53e4f34ee [gaim-migrate @ 8774]
Mark Doliner <markdoliner@pidgin.im>
parents: 8063
diff changeset
715
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
716 view = gtk_tree_view_new_with_model (GTK_TREE_MODEL(smiley_theme_store));
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
717
11525
1d06283bdcc9 [gaim-migrate @ 13773]
Francesco Fracassi <ffracassi@users.sourceforge.net>
parents: 11442
diff changeset
718 gtk_drag_dest_set(view, GTK_DEST_DEFAULT_MOTION | GTK_DEST_DEFAULT_HIGHLIGHT | GTK_DEST_DEFAULT_DROP, te,
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
719 sizeof(te) / sizeof(GtkTargetEntry) , GDK_ACTION_COPY | GDK_ACTION_MOVE);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
720
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
721 g_signal_connect(G_OBJECT(view), "drag_data_received", G_CALLBACK(theme_dnd_recv), smiley_theme_store);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
722
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
723 rend = gtk_cell_renderer_pixbuf_new();
17481
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
724 smiley_theme_sel = sel = gtk_tree_view_get_selection (GTK_TREE_VIEW (view));
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
725
8928
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
726 /* Custom sort so "none" theme is at top of list */
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
727 gtk_tree_sortable_set_sort_func(GTK_TREE_SORTABLE(smiley_theme_store),
15880
d275b025481c More Gaim to Pidgin changes
Sean Egan <seanegan@pidgin.im>
parents: 15578
diff changeset
728 3, pidgin_sort_smileys, NULL, NULL);
8928
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
729
8075
78e53e4f34ee [gaim-migrate @ 8774]
Mark Doliner <markdoliner@pidgin.im>
parents: 8063
diff changeset
730 gtk_tree_sortable_set_sort_column_id(GTK_TREE_SORTABLE(smiley_theme_store),
8928
da3379f6b4ab [gaim-migrate @ 9698]
Don Seiler <rizzo@gentoo.org>
parents: 8927
diff changeset
731 3, GTK_SORT_ASCENDING);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
732
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
733 col = gtk_tree_view_column_new_with_attributes (_("Icon"),
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
734 rend,
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
735 "pixbuf", 0,
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
736 NULL);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
737 gtk_tree_view_append_column (GTK_TREE_VIEW(view), col);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
738
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
739 rend = gtk_cell_renderer_text_new();
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
740 col = gtk_tree_view_column_new_with_attributes (_("Description"),
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
741 rend,
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
742 "markup", 1,
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
743 NULL);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
744 gtk_tree_view_append_column (GTK_TREE_VIEW(view), col);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
745 g_object_unref(G_OBJECT(smiley_theme_store));
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
746 gtk_container_add(GTK_CONTAINER(sw), view);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
747
8075
78e53e4f34ee [gaim-migrate @ 8774]
Mark Doliner <markdoliner@pidgin.im>
parents: 8063
diff changeset
748 g_signal_connect(G_OBJECT(sel), "changed", G_CALLBACK(smiley_sel), NULL);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
749
17413
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
750 alignment = gtk_alignment_new(1.0, 0.5, 0.0, 1.0);
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
751 gtk_widget_show(alignment);
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
752 gtk_box_pack_start(GTK_BOX(ret), alignment, FALSE, TRUE, 0);
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
753
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
754 hbox_buttons = gtk_hbox_new(TRUE, PIDGIN_HIG_CAT_SPACE);
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
755 gtk_widget_show(hbox_buttons);
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
756 gtk_container_add(GTK_CONTAINER(alignment), hbox_buttons);
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
757
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
758 add_button = gtk_button_new_from_stock(GTK_STOCK_ADD);
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
759 gtk_widget_show(add_button);
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
760 gtk_box_pack_start(GTK_BOX(hbox_buttons), add_button, FALSE, TRUE, 0);
17481
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
761 g_signal_connect(G_OBJECT(add_button), "clicked", (GCallback)add_theme_button_clicked_cb, view);
17413
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
762
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
763 remove_button = gtk_button_new_from_stock(GTK_STOCK_REMOVE);
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
764 gtk_widget_show(remove_button);
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
765 gtk_box_pack_start(GTK_BOX(hbox_buttons), remove_button, FALSE, TRUE, 0);
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
766 g_signal_connect(G_OBJECT(remove_button), "clicked", (GCallback)remove_theme_button_clicked_cb, view);
17481
0187dfe85231 Need help reflecting selected smiley theme after remove
Gabriel Schulhof <nix@go-nix.ca>
parents: 17480
diff changeset
767 g_object_set_data(G_OBJECT(sel), "remove_button", remove_button);
17413
e9949f691927 Buttons to add and remove smiley themes.
Gabriel Schulhof <nix@go-nix.ca>
parents: 17411
diff changeset
768
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
769 if (rowref) {
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
770 GtkTreePath *path = gtk_tree_row_reference_get_path(rowref);
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
771 gtk_tree_row_reference_free(rowref);
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
772 gtk_tree_selection_select_path(sel, path);
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
773 gtk_tree_path_free(path);
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
774 }
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
775
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
776 gtk_widget_show_all(ret);
8137
ca2132ad085e [gaim-migrate @ 8842]
Marc Mulcahy
parents: 8104
diff changeset
777
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15563
diff changeset
778 pidgin_set_accessible_label (view, label);
8137
ca2132ad085e [gaim-migrate @ 8842]
Marc Mulcahy
parents: 8104
diff changeset
779
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
780 return ret;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
781 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
782
9025
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
783 static void
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
784 formatting_toggle_cb(GtkIMHtml *imhtml, GtkIMHtmlButtons buttons, void *toolbar)
5530
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5440
diff changeset
785 {
9025
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
786 gboolean bold, italic, uline;
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
787
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
788 gtk_imhtml_get_current_format(GTK_IMHTML(imhtml),
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
789 &bold, &italic, &uline);
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
790
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
791 if (buttons & GTK_IMHTML_BOLD)
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
792 purple_prefs_set_bool(PIDGIN_PREFS_ROOT "/conversations/send_bold", bold);
9025
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
793 if (buttons & GTK_IMHTML_ITALIC)
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
794 purple_prefs_set_bool(PIDGIN_PREFS_ROOT "/conversations/send_italic", italic);
9025
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
795 if (buttons & GTK_IMHTML_UNDERLINE)
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
796 purple_prefs_set_bool(PIDGIN_PREFS_ROOT "/conversations/send_underline", uline);
9025
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
797
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
798 if (buttons & GTK_IMHTML_GROW || buttons & GTK_IMHTML_SHRINK)
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
799 purple_prefs_set_int(PIDGIN_PREFS_ROOT "/conversations/font_size",
9025
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
800 gtk_imhtml_get_current_fontsize(GTK_IMHTML(imhtml)));
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
801 if (buttons & GTK_IMHTML_FACE) {
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
802 char *face = gtk_imhtml_get_current_fontface(GTK_IMHTML(imhtml));
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
803 if (!face)
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
804 face = g_strdup("");
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
805
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
806 purple_prefs_set_string(PIDGIN_PREFS_ROOT "/conversations/font_face", face);
9025
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
807 g_free(face);
5530
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5440
diff changeset
808 }
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5440
diff changeset
809
9025
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
810 if (buttons & GTK_IMHTML_FORECOLOR) {
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
811 char *color = gtk_imhtml_get_current_forecolor(GTK_IMHTML(imhtml));
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
812 if (!color)
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
813 color = g_strdup("");
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
814
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
815 purple_prefs_set_string(PIDGIN_PREFS_ROOT "/conversations/fgcolor", color);
9025
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
816 g_free(color);
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
817 }
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
818
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
819 if (buttons & GTK_IMHTML_BACKCOLOR) {
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
820 char *color;
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
821 GObject *object;
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
822
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
823 color = gtk_imhtml_get_current_backcolor(GTK_IMHTML(imhtml));
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
824 if (!color)
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
825 color = g_strdup("");
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
826
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
827 /* Block the signal to prevent a loop. */
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
828 object = g_object_ref(G_OBJECT(imhtml));
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
829 g_signal_handlers_block_matched(object, G_SIGNAL_MATCH_DATA, 0, 0, NULL,
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
830 NULL, toolbar);
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
831 /* Clear the backcolor. */
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
832 gtk_imhtml_toggle_backcolor(GTK_IMHTML(imhtml), "");
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
833 /* Unblock the signal. */
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
834 g_signal_handlers_unblock_matched(object, G_SIGNAL_MATCH_DATA, 0, 0, NULL,
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
835 NULL, toolbar);
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
836 g_object_unref(object);
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
837
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
838 /* This will fire a toggle signal and get saved below. */
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
839 gtk_imhtml_toggle_background(GTK_IMHTML(imhtml), color);
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
840
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
841 g_free(color);
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
842 }
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
843
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
844 if (buttons & GTK_IMHTML_BACKGROUND) {
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
845 char *color = gtk_imhtml_get_current_background(GTK_IMHTML(imhtml));
9025
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
846 if (!color)
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
847 color = g_strdup("");
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
848
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
849 purple_prefs_set_string(PIDGIN_PREFS_ROOT "/conversations/bgcolor", color);
9025
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
850 g_free(color);
e49a72896270 [gaim-migrate @ 9801]
Luke Schierer <lschiere@pidgin.im>
parents: 8998
diff changeset
851 }
5530
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5440
diff changeset
852 }
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5440
diff changeset
853
11275
cdcc651d7ecd [gaim-migrate @ 13461]
Richard Laager <rlaager@pidgin.im>
parents: 11271
diff changeset
854 static void
cdcc651d7ecd [gaim-migrate @ 13461]
Richard Laager <rlaager@pidgin.im>
parents: 11271
diff changeset
855 formatting_clear_cb(GtkIMHtml *imhtml, void *data)
cdcc651d7ecd [gaim-migrate @ 13461]
Richard Laager <rlaager@pidgin.im>
parents: 11271
diff changeset
856 {
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
857 purple_prefs_set_bool(PIDGIN_PREFS_ROOT "/conversations/send_bold", FALSE);
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
858 purple_prefs_set_bool(PIDGIN_PREFS_ROOT "/conversations/send_italic", FALSE);
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
859 purple_prefs_set_bool(PIDGIN_PREFS_ROOT "/conversations/send_underline", FALSE);
11275
cdcc651d7ecd [gaim-migrate @ 13461]
Richard Laager <rlaager@pidgin.im>
parents: 11271
diff changeset
860
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
861 purple_prefs_set_int(PIDGIN_PREFS_ROOT "/conversations/font_size", 3);
11275
cdcc651d7ecd [gaim-migrate @ 13461]
Richard Laager <rlaager@pidgin.im>
parents: 11271
diff changeset
862
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
863 purple_prefs_set_string(PIDGIN_PREFS_ROOT "/conversations/font_face", "");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
864 purple_prefs_set_string(PIDGIN_PREFS_ROOT "/conversations/fgcolor", "");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
865 purple_prefs_set_string(PIDGIN_PREFS_ROOT "/conversations/bgcolor", "");
11275
cdcc651d7ecd [gaim-migrate @ 13461]
Richard Laager <rlaager@pidgin.im>
parents: 11271
diff changeset
866 }
cdcc651d7ecd [gaim-migrate @ 13461]
Richard Laager <rlaager@pidgin.im>
parents: 11271
diff changeset
867
8979
b2e7d7b9ca4d [gaim-migrate @ 9753]
Etan Reisner <deryni@pidgin.im>
parents: 8966
diff changeset
868 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
869 conversation_usetabs_cb(const char *name, PurplePrefType type,
12816
5f93e09fa9a6 [gaim-migrate @ 15164]
Mark Doliner <markdoliner@pidgin.im>
parents: 12815
diff changeset
870 gconstpointer value, gpointer data)
8979
b2e7d7b9ca4d [gaim-migrate @ 9753]
Etan Reisner <deryni@pidgin.im>
parents: 8966
diff changeset
871 {
10112
3133c5f8eb10 [gaim-migrate @ 11145]
Nathan Walp <nwalp@pidgin.im>
parents: 10108
diff changeset
872 gboolean usetabs = GPOINTER_TO_INT(value);
9155
29d593903d2b [gaim-migrate @ 9939]
Mark Doliner <markdoliner@pidgin.im>
parents: 9151
diff changeset
873
29d593903d2b [gaim-migrate @ 9939]
Mark Doliner <markdoliner@pidgin.im>
parents: 9151
diff changeset
874 if (usetabs)
29d593903d2b [gaim-migrate @ 9939]
Mark Doliner <markdoliner@pidgin.im>
parents: 9151
diff changeset
875 gtk_widget_set_sensitive(GTK_WIDGET(data), TRUE);
29d593903d2b [gaim-migrate @ 9939]
Mark Doliner <markdoliner@pidgin.im>
parents: 9151
diff changeset
876 else
8979
b2e7d7b9ca4d [gaim-migrate @ 9753]
Etan Reisner <deryni@pidgin.im>
parents: 8966
diff changeset
877 gtk_widget_set_sensitive(GTK_WIDGET(data), FALSE);
b2e7d7b9ca4d [gaim-migrate @ 9753]
Etan Reisner <deryni@pidgin.im>
parents: 8966
diff changeset
878 }
b2e7d7b9ca4d [gaim-migrate @ 9753]
Etan Reisner <deryni@pidgin.im>
parents: 8966
diff changeset
879
10850
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
880 static GtkWidget *
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
881 interface_page()
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
882 {
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
883 GtkWidget *ret;
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
884 GtkWidget *vbox;
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
885 GtkWidget *vbox2;
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
886 GtkWidget *label;
14948
7084284143ec [gaim-migrate @ 17655]
Sean Egan <seanegan@pidgin.im>
parents: 14947
diff changeset
887 GtkSizeGroup *sg;
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
888 GList *names = NULL;
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
889
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
890 ret = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
891 gtk_container_set_border_width(GTK_CONTAINER(ret), PIDGIN_HIG_BORDER);
19675
3c1669c529a1 Move purple_prefs_load() to purple_prefs_init() - there's been a TODO for this for a long time. I have no idea why this wasn't done sooner; it seems to work just fine and fixes some bugs where stuff isn't loaded before being used. Fixes #1848 (and I'm sure others). Yell at me if this breaks anything.
Daniel Atallah <datallah@pidgin.im>
parents: 19547
diff changeset
892
14948
7084284143ec [gaim-migrate @ 17655]
Sean Egan <seanegan@pidgin.im>
parents: 14947
diff changeset
893 sg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
894
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
895 vbox = pidgin_make_frame(ret, _("System Tray Icon"));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
896 label = pidgin_prefs_dropdown(vbox, _("_Show system tray icon:"), PURPLE_PREF_STRING,
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
897 PIDGIN_PREFS_ROOT "/docklet/show",
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
898 _("Always"), "always",
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
899 _("Never"), "never",
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
900 _("On unread messages"), "pending",
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
901 NULL);
14948
7084284143ec [gaim-migrate @ 17655]
Sean Egan <seanegan@pidgin.im>
parents: 14947
diff changeset
902 gtk_size_group_add_widget(sg, label);
7084284143ec [gaim-migrate @ 17655]
Sean Egan <seanegan@pidgin.im>
parents: 14947
diff changeset
903 gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
19675
3c1669c529a1 Move purple_prefs_load() to purple_prefs_init() - there's been a TODO for this for a long time. I have no idea why this wasn't done sooner; it seems to work just fine and fixes some bugs where stuff isn't loaded before being used. Fixes #1848 (and I'm sure others). Yell at me if this breaks anything.
Daniel Atallah <datallah@pidgin.im>
parents: 19547
diff changeset
904
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
905 vbox = pidgin_make_frame(ret, _("Conversation Window Hiding"));
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
906 label = pidgin_prefs_dropdown(vbox, _("_Hide new IM conversations:"),
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
907 PURPLE_PREF_STRING, PIDGIN_PREFS_ROOT "/conversations/im/hide_new",
14948
7084284143ec [gaim-migrate @ 17655]
Sean Egan <seanegan@pidgin.im>
parents: 14947
diff changeset
908 _("Never"), "never",
7084284143ec [gaim-migrate @ 17655]
Sean Egan <seanegan@pidgin.im>
parents: 14947
diff changeset
909 _("When away"), "away",
7084284143ec [gaim-migrate @ 17655]
Sean Egan <seanegan@pidgin.im>
parents: 14947
diff changeset
910 _("Always"), "always",
7084284143ec [gaim-migrate @ 17655]
Sean Egan <seanegan@pidgin.im>
parents: 14947
diff changeset
911 NULL);
7084284143ec [gaim-migrate @ 17655]
Sean Egan <seanegan@pidgin.im>
parents: 14947
diff changeset
912 gtk_size_group_add_widget(sg, label);
7084284143ec [gaim-migrate @ 17655]
Sean Egan <seanegan@pidgin.im>
parents: 14947
diff changeset
913 gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
19675
3c1669c529a1 Move purple_prefs_load() to purple_prefs_init() - there's been a TODO for this for a long time. I have no idea why this wasn't done sooner; it seems to work just fine and fixes some bugs where stuff isn't loaded before being used. Fixes #1848 (and I'm sure others). Yell at me if this breaks anything.
Daniel Atallah <datallah@pidgin.im>
parents: 19547
diff changeset
914
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
915
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
916 /* All the tab options! */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
917 vbox = pidgin_make_frame(ret, _("Tabs"));
19675
3c1669c529a1 Move purple_prefs_load() to purple_prefs_init() - there's been a TODO for this for a long time. I have no idea why this wasn't done sooner; it seems to work just fine and fixes some bugs where stuff isn't loaded before being used. Fixes #1848 (and I'm sure others). Yell at me if this breaks anything.
Daniel Atallah <datallah@pidgin.im>
parents: 19547
diff changeset
918
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
919 pidgin_prefs_checkbox(_("Show IMs and chats in _tabbed windows"),
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
920 PIDGIN_PREFS_ROOT "/conversations/tabs", vbox);
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
921
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
922 /*
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
923 * Connect a signal to the above preference. When conversations are not
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
924 * shown in a tabbed window then all tabbing options should be disabled.
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
925 */
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
926 vbox2 = gtk_vbox_new(FALSE, 9);
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
927 gtk_box_pack_start(GTK_BOX(vbox), vbox2, FALSE, FALSE, 0);
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
928 purple_prefs_connect_callback(prefs, PIDGIN_PREFS_ROOT "/conversations/tabs",
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
929 conversation_usetabs_cb, vbox2);
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
930 if (!purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/conversations/tabs"))
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
931 gtk_widget_set_sensitive(vbox2, FALSE);
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
932
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
933 pidgin_prefs_checkbox(_("Show close b_utton on tabs"),
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
934 PIDGIN_PREFS_ROOT "/conversations/close_on_tabs", vbox2);
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
935
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
936 label = pidgin_prefs_dropdown(vbox2, _("_Placement:"), PURPLE_PREF_INT,
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
937 PIDGIN_PREFS_ROOT "/conversations/tab_side",
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
938 _("Top"), GTK_POS_TOP,
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
939 _("Bottom"), GTK_POS_BOTTOM,
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
940 _("Left"), GTK_POS_LEFT,
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
941 _("Right"), GTK_POS_RIGHT,
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
942 #if GTK_CHECK_VERSION(2,6,0)
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
943 _("Left Vertical"), GTK_POS_LEFT|8,
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
944 _("Right Vertical"), GTK_POS_RIGHT|8,
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
945 #endif
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
946 NULL);
14948
7084284143ec [gaim-migrate @ 17655]
Sean Egan <seanegan@pidgin.im>
parents: 14947
diff changeset
947 gtk_size_group_add_widget(sg, label);
7084284143ec [gaim-migrate @ 17655]
Sean Egan <seanegan@pidgin.im>
parents: 14947
diff changeset
948 gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
19675
3c1669c529a1 Move purple_prefs_load() to purple_prefs_init() - there's been a TODO for this for a long time. I have no idea why this wasn't done sooner; it seems to work just fine and fixes some bugs where stuff isn't loaded before being used. Fixes #1848 (and I'm sure others). Yell at me if this breaks anything.
Daniel Atallah <datallah@pidgin.im>
parents: 19547
diff changeset
949
15563
9eea2b8c2846 pidginconv to pidgin_conv
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
950 names = pidgin_conv_placement_get_options();
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
951 label = pidgin_prefs_dropdown_from_list(vbox2, _("N_ew conversations:"),
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
952 PURPLE_PREF_STRING, PIDGIN_PREFS_ROOT "/conversations/placement", names);
14948
7084284143ec [gaim-migrate @ 17655]
Sean Egan <seanegan@pidgin.im>
parents: 14947
diff changeset
953 gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
19675
3c1669c529a1 Move purple_prefs_load() to purple_prefs_init() - there's been a TODO for this for a long time. I have no idea why this wasn't done sooner; it seems to work just fine and fixes some bugs where stuff isn't loaded before being used. Fixes #1848 (and I'm sure others). Yell at me if this breaks anything.
Daniel Atallah <datallah@pidgin.im>
parents: 19547
diff changeset
954
14948
7084284143ec [gaim-migrate @ 17655]
Sean Egan <seanegan@pidgin.im>
parents: 14947
diff changeset
955 gtk_size_group_add_widget(sg, label);
7084284143ec [gaim-migrate @ 17655]
Sean Egan <seanegan@pidgin.im>
parents: 14947
diff changeset
956
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
957 g_list_free(names);
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
958
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
959 gtk_widget_show_all(ret);
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
960 return ret;
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
961 }
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
962
17487
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
963 #if GTK_CHECK_VERSION(2,4,0)
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
964 static void
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
965 pidgin_custom_font_set(GtkFontButton *font_button, gpointer nul)
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
966 {
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
967 purple_prefs_set_string(PIDGIN_PREFS_ROOT "/conversations/custom_font",
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
968 gtk_font_button_get_font_name(font_button));
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
969 }
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
970 #endif
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
971
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
972 static GtkWidget *
10850
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
973 conv_page()
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
974 {
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
975 GtkWidget *ret;
11271
939be1fdbf7a [gaim-migrate @ 13454]
Richard Laager <rlaager@pidgin.im>
parents: 11269
diff changeset
976 GtkWidget *vbox;
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
977 GtkWidget *toolbar;
11922
4757a71af32f [gaim-migrate @ 14213]
Richard Gobeille
parents: 11888
diff changeset
978 GtkWidget *iconpref1;
4757a71af32f [gaim-migrate @ 14213]
Richard Gobeille
parents: 11888
diff changeset
979 GtkWidget *iconpref2;
17487
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
980 GtkWidget *fontpref;
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
981 GtkWidget *imhtml;
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
982 GtkWidget *frame;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
983
17487
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
984 #if GTK_CHECK_VERSION(2,4,0)
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
985 GtkWidget *hbox;
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
986 GtkWidget *label;
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
987 GtkWidget *font_button;
17490
a227092a827f Fix default custom font
Sean Egan <seanegan@pidgin.im>
parents: 17487
diff changeset
988 const char *font_name;
17487
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
989 #endif
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
990
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
991 ret = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
992 gtk_container_set_border_width(GTK_CONTAINER(ret), PIDGIN_HIG_BORDER);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
993
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
994 vbox = pidgin_make_frame(ret, _("Conversations"));
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
995
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
996 pidgin_prefs_checkbox(_("Show _formatting on incoming messages"),
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
997 PIDGIN_PREFS_ROOT "/conversations/show_incoming_formatting", vbox);
19811
634020cc4429 "We are going to destroy the conversations immediately only if the 'close immediately'
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19786
diff changeset
998 pidgin_prefs_checkbox(_("Close IMs immediately when the tab is closed"),
634020cc4429 "We are going to destroy the conversations immediately only if the 'close immediately'
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19786
diff changeset
999 PIDGIN_PREFS_ROOT "/conversations/im/close_immediately", vbox);
11922
4757a71af32f [gaim-migrate @ 14213]
Richard Gobeille
parents: 11888
diff changeset
1000
19045
c5e869038b16 A few strings I couldn't change without breaking string freeze
Sean Egan <seanegan@pidgin.im>
parents: 18933
diff changeset
1001 iconpref1 = pidgin_prefs_checkbox(_("Show _detailed information"),
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1002 PIDGIN_PREFS_ROOT "/conversations/im/show_buddy_icons", vbox);
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1003 iconpref2 = pidgin_prefs_checkbox(_("Enable buddy ic_on animation"),
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1004 PIDGIN_PREFS_ROOT "/conversations/im/animate_buddy_icons", vbox);
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1005 if (!purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/conversations/im/show_buddy_icons"))
11922
4757a71af32f [gaim-migrate @ 14213]
Richard Gobeille
parents: 11888
diff changeset
1006 gtk_widget_set_sensitive(iconpref2, FALSE);
4757a71af32f [gaim-migrate @ 14213]
Richard Gobeille
parents: 11888
diff changeset
1007 g_signal_connect(G_OBJECT(iconpref1), "clicked",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1008 G_CALLBACK(pidgin_toggle_sensitive), iconpref2);
11922
4757a71af32f [gaim-migrate @ 14213]
Richard Gobeille
parents: 11888
diff changeset
1009
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1010 pidgin_prefs_checkbox(_("_Notify buddies that you are typing to them"),
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1011 "/purple/conversations/im/send_typing", vbox);
12067
11fb53722956 [gaim-migrate @ 14362]
Richard Laager <rlaager@pidgin.im>
parents: 12061
diff changeset
1012 #ifdef USE_GTKSPELL
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1013 pidgin_prefs_checkbox(_("Highlight _misspelled words"),
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1014 PIDGIN_PREFS_ROOT "/conversations/spellcheck", vbox);
12067
11fb53722956 [gaim-migrate @ 14362]
Richard Laager <rlaager@pidgin.im>
parents: 12061
diff changeset
1015 #endif
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1016
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1017 pidgin_prefs_checkbox(_("Use smooth-scrolling"), PIDGIN_PREFS_ROOT "/conversations/use_smooth_scrolling", vbox);
12553
52b3403a1690 [gaim-migrate @ 14871]
Nathan Walp <nwalp@pidgin.im>
parents: 12472
diff changeset
1018
14867
03271f43f081 [gaim-migrate @ 17570]
Daniel Atallah <datallah@pidgin.im>
parents: 14709
diff changeset
1019 #ifdef _WIN32
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1020 pidgin_prefs_checkbox(_("F_lash window when IMs are received"), PIDGIN_PREFS_ROOT "/win32/blink_im", vbox);
18668
c5ff15c4fc09 Give Windows users the option of having new conversation windows created minimized. Hopefully this will stop the incessant crying about this. Fixes #664.
Daniel Atallah <datallah@pidgin.im>
parents: 18564
diff changeset
1021
c5ff15c4fc09 Give Windows users the option of having new conversation windows created minimized. Hopefully this will stop the incessant crying about this. Fixes #664.
Daniel Atallah <datallah@pidgin.im>
parents: 18564
diff changeset
1022 pidgin_prefs_checkbox(_("Minimi_ze new conversation windows"), PIDGIN_PREFS_ROOT "/win32/minimize_new_convs", vbox);
14867
03271f43f081 [gaim-migrate @ 17570]
Daniel Atallah <datallah@pidgin.im>
parents: 14709
diff changeset
1023 #endif
03271f43f081 [gaim-migrate @ 17570]
Daniel Atallah <datallah@pidgin.im>
parents: 14709
diff changeset
1024
17487
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1025 #if GTK_CHECK_VERSION(2,4,0)
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1026 vbox = pidgin_make_frame(ret, _("Font"));
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1027 if (purple_running_gnome())
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1028 fontpref = pidgin_prefs_checkbox(_("Use document font from _theme"), PIDGIN_PREFS_ROOT "/conversations/use_theme_font", vbox);
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1029 else
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1030 fontpref = pidgin_prefs_checkbox(_("Use font from _theme"), PIDGIN_PREFS_ROOT "/conversations/use_theme_font", vbox);
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1031 hbox = gtk_hbox_new(FALSE, 3);
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1032 label = gtk_label_new_with_mnemonic(_("Conversation _font:"));
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1033 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
17490
a227092a827f Fix default custom font
Sean Egan <seanegan@pidgin.im>
parents: 17487
diff changeset
1034 font_name = purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/custom_font");
18175
6f73779d9689 Show the previously selected custom font, what this is meant to do.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18105
diff changeset
1035 font_button = gtk_font_button_new_with_font(font_name ? font_name : NULL);
17487
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1036 gtk_font_button_set_show_style(GTK_FONT_BUTTON(font_button), TRUE);
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1037 gtk_box_pack_start(GTK_BOX(hbox), font_button, FALSE, FALSE, 0);
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1038 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1039 if (purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/conversations/use_theme_font"))
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1040 gtk_widget_set_sensitive(hbox, FALSE);
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1041 g_signal_connect(G_OBJECT(fontpref), "clicked", G_CALLBACK(pidgin_toggle_sensitive), hbox);
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1042 g_signal_connect(G_OBJECT(font_button), "font-set", G_CALLBACK(pidgin_custom_font_set), NULL);
19786
33ab83cd846b Don't show *all*\!
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19675
diff changeset
1043 gtk_widget_show_all(hbox);
17487
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1044 #endif
2d9c6631e922 Reluctantly, I've added a preference for overriding the GTK+ default theme in GtkIMHtml widgets. There is support for this feature in the GNOME HIG and in other GTK+ (including GNOME) applications. This fixes #494. This is a GTK+ 2.4-only feature. I don't update the fonts in existing gtkimhtml's yet, only in new ones. Someone else may want to take care of that
Sean Egan <seanegan@pidgin.im>
parents: 17474
diff changeset
1045
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1046 vbox = pidgin_make_frame(ret, _("Default Formatting"));
19366
e232b54d6fa7 Allow the imhtml to expand and fill the void.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19365
diff changeset
1047 gtk_box_set_child_packing(GTK_BOX(vbox->parent), vbox, TRUE, TRUE, 0, GTK_PACK_START);
14950
74669b06c49a [gaim-migrate @ 17660]
Richard Laager <rlaager@pidgin.im>
parents: 14949
diff changeset
1048
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1049 frame = pidgin_create_imhtml(TRUE, &imhtml, &toolbar, NULL);
19786
33ab83cd846b Don't show *all*\!
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19675
diff changeset
1050 gtk_widget_show(frame);
16259
73b7c796c8d3 I don't like the pidginfoo_bar widget names that resulted from the sed.
Richard Laager <rlaager@pidgin.im>
parents: 16254
diff changeset
1051 gtk_widget_set_name(imhtml, "pidgin_prefs_font_imhtml");
19365
a712e2406c7e Set a minimize size of 300 pixels for the imhtml showing example
Mark Doliner <markdoliner@pidgin.im>
parents: 19086
diff changeset
1052 gtk_widget_set_size_request(frame, 300, -1);
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1053 gtk_imhtml_set_whole_buffer_formatting_only(GTK_IMHTML(imhtml), TRUE);
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1054 gtk_imhtml_set_format_functions(GTK_IMHTML(imhtml),
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1055 GTK_IMHTML_BOLD |
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1056 GTK_IMHTML_ITALIC |
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1057 GTK_IMHTML_UNDERLINE |
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1058 GTK_IMHTML_GROW |
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1059 GTK_IMHTML_SHRINK |
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1060 GTK_IMHTML_FACE |
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1061 GTK_IMHTML_FORECOLOR |
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1062 GTK_IMHTML_BACKCOLOR |
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1063 GTK_IMHTML_BACKGROUND);
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1064
18540
92a8da387908 The formatting imhtml in the prefs isn't rendering the smiley and it's not
Richard Laager <rlaager@pidgin.im>
parents: 18538
diff changeset
1065 gtk_imhtml_append_text(GTK_IMHTML(imhtml), _("This is how your outgoing message text will appear when you use protocols that support formatting."), 0);
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1066
18176
f4c6c0756f4a Make the entry-box look nicer in the preference.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18175
diff changeset
1067 gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 0);
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1068
17388
8be39f0de528 Allow formatted text in the pounce dialog. Also, use the same code to
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 17287
diff changeset
1069 gtk_imhtml_setup_entry(GTK_IMHTML(imhtml), PURPLE_CONNECTION_HTML | PURPLE_CONNECTION_FORMATTING_WBFO);
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1070
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1071 g_signal_connect_after(G_OBJECT(imhtml), "format_function_toggle",
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
1072 G_CALLBACK(formatting_toggle_cb), toolbar);
11275
cdcc651d7ecd [gaim-migrate @ 13461]
Richard Laager <rlaager@pidgin.im>
parents: 11271
diff changeset
1073 g_signal_connect_after(G_OBJECT(imhtml), "format_function_clear",
cdcc651d7ecd [gaim-migrate @ 13461]
Richard Laager <rlaager@pidgin.im>
parents: 11271
diff changeset
1074 G_CALLBACK(formatting_clear_cb), NULL);
9155
29d593903d2b [gaim-migrate @ 9939]
Mark Doliner <markdoliner@pidgin.im>
parents: 9151
diff changeset
1075
29d593903d2b [gaim-migrate @ 9939]
Mark Doliner <markdoliner@pidgin.im>
parents: 9151
diff changeset
1076
19786
33ab83cd846b Don't show *all*\!
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 19675
diff changeset
1077 gtk_widget_show(ret);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1078
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1079 return ret;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1080 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1081
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1082 static void network_ip_changed(GtkEntry *entry, gpointer data)
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1083 {
15116
037b787407ba [gaim-migrate @ 17838]
Mark Doliner <markdoliner@pidgin.im>
parents: 14972
diff changeset
1084 /*
037b787407ba [gaim-migrate @ 17838]
Mark Doliner <markdoliner@pidgin.im>
parents: 14972
diff changeset
1085 * TODO: It would be nice if we could validate this and show a
037b787407ba [gaim-migrate @ 17838]
Mark Doliner <markdoliner@pidgin.im>
parents: 14972
diff changeset
1086 * red background in the box when the IP address is invalid
037b787407ba [gaim-migrate @ 17838]
Mark Doliner <markdoliner@pidgin.im>
parents: 14972
diff changeset
1087 * and a green background when the IP address is valid.
037b787407ba [gaim-migrate @ 17838]
Mark Doliner <markdoliner@pidgin.im>
parents: 14972
diff changeset
1088 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1089 purple_network_set_public_ip(gtk_entry_get_text(entry));
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1090 }
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1091
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1092 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1093 proxy_changed_cb(const char *name, PurplePrefType type,
12816
5f93e09fa9a6 [gaim-migrate @ 15164]
Mark Doliner <markdoliner@pidgin.im>
parents: 12815
diff changeset
1094 gconstpointer value, gpointer data)
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1095 {
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1096 GtkWidget *frame = data;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1097 const char *proxy = value;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1098
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1099 if (strcmp(proxy, "none") && strcmp(proxy, "envvar"))
20073
dbea205441ea Fix proxy settings to be loaded correctly when libpurple is initialized. This was broken because it relied on the prefs being loaded after proxy initialization so that the pref callbacks would be triggered and I changed the prefs loading to happen right at the beginning to fix other issues. Fixes #3092.
Daniel Atallah <datallah@pidgin.im>
parents: 19859
diff changeset
1100 gtk_widget_show_all(frame);
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1101 else
11740
2b605228ec11 [gaim-migrate @ 14031]
Sean Egan <seanegan@pidgin.im>
parents: 11709
diff changeset
1102 gtk_widget_hide(frame);
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1103 }
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1104
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1105 static void proxy_print_option(GtkEntry *entry, int entrynum)
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1106 {
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1107 if (entrynum == PROXYHOST)
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1108 purple_prefs_set_string("/purple/proxy/host", gtk_entry_get_text(entry));
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1109 else if (entrynum == PROXYPORT)
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1110 purple_prefs_set_int("/purple/proxy/port", atoi(gtk_entry_get_text(entry)));
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1111 else if (entrynum == PROXYUSER)
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1112 purple_prefs_set_string("/purple/proxy/username", gtk_entry_get_text(entry));
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1113 else if (entrynum == PROXYPASS)
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1114 purple_prefs_set_string("/purple/proxy/password", gtk_entry_get_text(entry));
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1115 }
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1116
10850
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
1117 static GtkWidget *
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
1118 network_page()
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
1119 {
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1120 GtkWidget *ret;
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1121 GtkWidget *vbox, *hbox, *entry;
13664
fdc3b588f248 [gaim-migrate @ 16065]
Richard Laager <rlaager@pidgin.im>
parents: 13328
diff changeset
1122 GtkWidget *table, *label, *auto_ip_checkbox, *ports_checkbox, *spin_button;
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1123 GtkSizeGroup *sg;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1124 PurpleProxyInfo *proxy_info = NULL;
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1125
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1126 ret = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1127 gtk_container_set_border_width (GTK_CONTAINER (ret), PIDGIN_HIG_BORDER);
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1128
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1129 vbox = pidgin_make_frame (ret, _("IP Address"));
13684
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1130 sg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1131 pidgin_prefs_labeled_entry(vbox,_("ST_UN server:"),
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1132 "/purple/network/stun_server", sg);
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1133
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1134 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_BOX_SPACE);
13684
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1135 gtk_container_add(GTK_CONTAINER(vbox), hbox);
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1136
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1137 label = gtk_label_new(NULL);
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1138 gtk_container_add(GTK_CONTAINER(hbox), label);
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1139 gtk_size_group_add_widget(sg, label);
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1140
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1141 label = gtk_label_new(NULL);
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1142 gtk_label_set_markup(GTK_LABEL(label),
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1143 _("<span style=\"italic\">Example: stunserver.org</span>"));
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1144 gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1145 gtk_container_add(GTK_CONTAINER(hbox), label);
11442
604d5370ff80 [gaim-migrate @ 13681]
Richard Laager <rlaager@pidgin.im>
parents: 11424
diff changeset
1146
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1147 auto_ip_checkbox = pidgin_prefs_checkbox(_("_Autodetect IP address"),
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1148 "/purple/network/auto_ip", vbox);
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1149
13684
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1150 table = gtk_table_new(2, 2, FALSE);
11442
604d5370ff80 [gaim-migrate @ 13681]
Richard Laager <rlaager@pidgin.im>
parents: 11424
diff changeset
1151 gtk_container_set_border_width(GTK_CONTAINER(table), 0);
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1152 gtk_table_set_col_spacings(GTK_TABLE(table), 5);
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1153 gtk_table_set_row_spacings(GTK_TABLE(table), 10);
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1154 gtk_container_add(GTK_CONTAINER(vbox), table);
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1155
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1156 label = gtk_label_new_with_mnemonic(_("Public _IP:"));
13684
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1157 gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1158 gtk_table_attach(GTK_TABLE(table), label, 0, 1, 0, 1, GTK_FILL, 0, 0, 0);
13684
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1159 gtk_size_group_add_widget(sg, label);
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1160
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1161 entry = gtk_entry_new();
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1162 gtk_label_set_mnemonic_widget(GTK_LABEL(label), entry);
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1163 gtk_table_attach(GTK_TABLE(table), entry, 1, 2, 0, 1, GTK_FILL, 0, 0, 0);
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1164 g_signal_connect(G_OBJECT(entry), "changed",
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1165 G_CALLBACK(network_ip_changed), NULL);
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1166
13130
e9adbdc1546a [gaim-migrate @ 15491]
Mark Doliner <markdoliner@pidgin.im>
parents: 13107
diff changeset
1167 /*
e9adbdc1546a [gaim-migrate @ 15491]
Mark Doliner <markdoliner@pidgin.im>
parents: 13107
diff changeset
1168 * TODO: This could be better by showing the autodeteced
e9adbdc1546a [gaim-migrate @ 15491]
Mark Doliner <markdoliner@pidgin.im>
parents: 13107
diff changeset
1169 * IP separately from the user-specified IP.
e9adbdc1546a [gaim-migrate @ 15491]
Mark Doliner <markdoliner@pidgin.im>
parents: 13107
diff changeset
1170 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1171 if (purple_network_get_my_ip(-1) != NULL)
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1172 gtk_entry_set_text(GTK_ENTRY(entry),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1173 purple_network_get_my_ip(-1));
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1174
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15563
diff changeset
1175 pidgin_set_accessible_label (entry, label);
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1176
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1177
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1178 if (purple_prefs_get_bool("/purple/network/auto_ip")) {
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1179 gtk_widget_set_sensitive(GTK_WIDGET(table), FALSE);
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1180 }
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1181
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1182 g_signal_connect(G_OBJECT(auto_ip_checkbox), "clicked",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1183 G_CALLBACK(pidgin_toggle_sensitive), table);
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1184
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1185 vbox = pidgin_make_frame (ret, _("Ports"));
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1186 sg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1187
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1188 ports_checkbox = pidgin_prefs_checkbox(_("_Manually specify range of ports to listen on"),
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1189 "/purple/network/ports_range_use", vbox);
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1190
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1191 spin_button = pidgin_prefs_labeled_spin_button(vbox, _("_Start port:"),
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1192 "/purple/network/ports_range_start", 0, 65535, sg);
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1193 if (!purple_prefs_get_bool("/purple/network/ports_range_use"))
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1194 gtk_widget_set_sensitive(GTK_WIDGET(spin_button), FALSE);
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1195 g_signal_connect(G_OBJECT(ports_checkbox), "clicked",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1196 G_CALLBACK(pidgin_toggle_sensitive), spin_button);
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1197
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1198 spin_button = pidgin_prefs_labeled_spin_button(vbox, _("_End port:"),
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1199 "/purple/network/ports_range_end", 0, 65535, sg);
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1200 if (!purple_prefs_get_bool("/purple/network/ports_range_use"))
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1201 gtk_widget_set_sensitive(GTK_WIDGET(spin_button), FALSE);
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1202 g_signal_connect(G_OBJECT(ports_checkbox), "clicked",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1203 G_CALLBACK(pidgin_toggle_sensitive), spin_button);
8231
347c8992c445 [gaim-migrate @ 8954]
Tim Ringenbach <marv@pidgin.im>
parents: 8188
diff changeset
1204
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1205 if (!purple_running_gnome()) {
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1206 vbox = pidgin_make_frame(ret, _("Proxy Server"));
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1207 prefs_proxy_frame = gtk_vbox_new(FALSE, 0);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1208 pidgin_prefs_dropdown(vbox, _("Proxy _type:"), PURPLE_PREF_STRING,
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1209 "/purple/proxy/type",
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1210 _("No proxy"), "none",
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1211 "SOCKS 4", "socks4",
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1212 "SOCKS 5", "socks5",
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1213 "HTTP", "http",
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1214 _("Use Environmental Settings"), "envvar",
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1215 NULL);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1216 gtk_box_pack_start(GTK_BOX(vbox), prefs_proxy_frame, 0, 0, 0);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1217 proxy_info = purple_global_proxy_get_info();
5681
514fbc5374dc [gaim-migrate @ 6100]
Christian Hammond <chipx86@chipx86.com>
parents: 5673
diff changeset
1218
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1219 purple_prefs_connect_callback(prefs, "/purple/proxy/type",
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1220 proxy_changed_cb, prefs_proxy_frame);
13684
c9b0fe6e6125 [gaim-migrate @ 16085]
Mark Doliner <markdoliner@pidgin.im>
parents: 13664
diff changeset
1221
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1222 table = gtk_table_new(4, 2, FALSE);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1223 gtk_container_set_border_width(GTK_CONTAINER(table), 0);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1224 gtk_table_set_col_spacings(GTK_TABLE(table), 5);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1225 gtk_table_set_row_spacings(GTK_TABLE(table), 10);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1226 gtk_container_add(GTK_CONTAINER(prefs_proxy_frame), table);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1227
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1228
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1229 label = gtk_label_new_with_mnemonic(_("_Host:"));
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1230 gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1231 gtk_table_attach(GTK_TABLE(table), label, 0, 1, 0, 1, GTK_FILL, 0, 0, 0);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1232
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1233 entry = gtk_entry_new();
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1234 gtk_label_set_mnemonic_widget(GTK_LABEL(label), entry);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1235 gtk_table_attach(GTK_TABLE(table), entry, 1, 2, 0, 1, GTK_FILL, 0, 0, 0);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1236 g_signal_connect(G_OBJECT(entry), "changed",
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1237 G_CALLBACK(proxy_print_option), (void *)PROXYHOST);
5681
514fbc5374dc [gaim-migrate @ 6100]
Christian Hammond <chipx86@chipx86.com>
parents: 5673
diff changeset
1238
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1239 if (proxy_info != NULL && purple_proxy_info_get_host(proxy_info))
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1240 gtk_entry_set_text(GTK_ENTRY(entry),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1241 purple_proxy_info_get_host(proxy_info));
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1242
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1243 hbox = gtk_hbox_new(TRUE, 5);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1244 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15563
diff changeset
1245 pidgin_set_accessible_label (entry, label);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1246
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1247 label = gtk_label_new_with_mnemonic(_("_Port:"));
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1248 gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1249 gtk_table_attach(GTK_TABLE(table), label, 2, 3, 0, 1, GTK_FILL, 0, 0, 0);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1250
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1251 entry = gtk_entry_new();
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1252 gtk_label_set_mnemonic_widget(GTK_LABEL(label), entry);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1253 gtk_table_attach(GTK_TABLE(table), entry, 3, 4, 0, 1, GTK_FILL, 0, 0, 0);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1254 g_signal_connect(G_OBJECT(entry), "changed",
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1255 G_CALLBACK(proxy_print_option), (void *)PROXYPORT);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1256
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1257 if (proxy_info != NULL && purple_proxy_info_get_port(proxy_info) != 0) {
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1258 char buf[128];
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1259 g_snprintf(buf, sizeof(buf), "%d",
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1260 purple_proxy_info_get_port(proxy_info));
5681
514fbc5374dc [gaim-migrate @ 6100]
Christian Hammond <chipx86@chipx86.com>
parents: 5673
diff changeset
1261
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1262 gtk_entry_set_text(GTK_ENTRY(entry), buf);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1263 }
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15563
diff changeset
1264 pidgin_set_accessible_label (entry, label);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1265
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1266 label = gtk_label_new_with_mnemonic(_("_User:"));
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1267 gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1268 gtk_table_attach(GTK_TABLE(table), label, 0, 1, 1, 2, GTK_FILL, 0, 0, 0);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1269
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1270 entry = gtk_entry_new();
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1271 gtk_label_set_mnemonic_widget(GTK_LABEL(label), entry);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1272 gtk_table_attach(GTK_TABLE(table), entry, 1, 2, 1, 2, GTK_FILL, 0, 0, 0);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1273 g_signal_connect(G_OBJECT(entry), "changed",
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1274 G_CALLBACK(proxy_print_option), (void *)PROXYUSER);
5681
514fbc5374dc [gaim-migrate @ 6100]
Christian Hammond <chipx86@chipx86.com>
parents: 5673
diff changeset
1275
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1276 if (proxy_info != NULL && purple_proxy_info_get_username(proxy_info) != NULL)
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1277 gtk_entry_set_text(GTK_ENTRY(entry),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1278 purple_proxy_info_get_username(proxy_info));
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1279
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1280 hbox = gtk_hbox_new(TRUE, 5);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1281 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15563
diff changeset
1282 pidgin_set_accessible_label (entry, label);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1283
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1284 label = gtk_label_new_with_mnemonic(_("Pa_ssword:"));
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1285 gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1286 gtk_table_attach(GTK_TABLE(table), label, 2, 3, 1, 2, GTK_FILL, 0, 0, 0);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1287
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1288 entry = gtk_entry_new();
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1289 gtk_label_set_mnemonic_widget(GTK_LABEL(label), entry);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1290 gtk_table_attach(GTK_TABLE(table), entry, 3, 4, 1, 2, GTK_FILL , 0, 0, 0);
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1291 gtk_entry_set_visibility(GTK_ENTRY(entry), FALSE);
15390
d429e03fc755 [gaim-migrate @ 18119]
Mark Doliner <markdoliner@pidgin.im>
parents: 15387
diff changeset
1292 if (gtk_entry_get_invisible_char(GTK_ENTRY(entry)) == '*')
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1293 gtk_entry_set_invisible_char(GTK_ENTRY(entry), PIDGIN_INVISIBLE_CHAR);
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1294 g_signal_connect(G_OBJECT(entry), "changed",
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1295 G_CALLBACK(proxy_print_option), (void *)PROXYPASS);
5681
514fbc5374dc [gaim-migrate @ 6100]
Christian Hammond <chipx86@chipx86.com>
parents: 5673
diff changeset
1296
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1297 if (proxy_info != NULL && purple_proxy_info_get_password(proxy_info) != NULL)
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1298 gtk_entry_set_text(GTK_ENTRY(entry),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1299 purple_proxy_info_get_password(proxy_info));
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15563
diff changeset
1300 pidgin_set_accessible_label (entry, label);
11878
4c2661df91bb [gaim-migrate @ 14169]
Sean Egan <seanegan@pidgin.im>
parents: 11816
diff changeset
1301 }
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1302
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1303 gtk_widget_show_all(ret);
18285
1b2a6ef12066 Only hide the proxy options table if not running gnome otherwise we hide
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18228
diff changeset
1304 /* Only hide table if not running gnome otherwise we hide the IP address table! */
1b2a6ef12066 Only hide the proxy options table if not running gnome otherwise we hide
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18228
diff changeset
1305 if (!purple_running_gnome() && (proxy_info == NULL ||
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1306 purple_proxy_info_get_type(proxy_info) == PURPLE_PROXY_NONE ||
18285
1b2a6ef12066 Only hide the proxy options table if not running gnome otherwise we hide
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18228
diff changeset
1307 purple_proxy_info_get_type(proxy_info) == PURPLE_PROXY_USE_ENVVAR))
11740
2b605228ec11 [gaim-migrate @ 14031]
Sean Egan <seanegan@pidgin.im>
parents: 11709
diff changeset
1308 gtk_widget_hide(table);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1309 return ret;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1310 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1311
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1312 #ifndef _WIN32
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1313 static gboolean manual_browser_set(GtkWidget *entry, GdkEventFocus *event, gpointer data) {
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1314 const char *program = gtk_entry_get_text(GTK_ENTRY(entry));
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1315
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1316 purple_prefs_set_path(PIDGIN_PREFS_ROOT "/browsers/command", program);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1317
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1318 /* carry on normally */
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1319 return FALSE;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1320 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1321
5633
1e82c97da6af [gaim-migrate @ 6040]
Nathan Walp <nwalp@pidgin.im>
parents: 5631
diff changeset
1322 static GList *get_available_browsers()
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1323 {
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1324 struct browser {
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1325 char *name;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1326 char *command;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1327 };
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1328
14676
70f04fbec17b [gaim-migrate @ 17342]
Hendrik-Jan Heins <hjheins@gmail.com>
parents: 14636
diff changeset
1329 /* Sorted reverse alphabetically */
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1330 static struct browser possible_browsers[] = {
14676
70f04fbec17b [gaim-migrate @ 17342]
Hendrik-Jan Heins <hjheins@gmail.com>
parents: 14636
diff changeset
1331 {N_("Seamonkey"), "seamonkey"},
70f04fbec17b [gaim-migrate @ 17342]
Hendrik-Jan Heins <hjheins@gmail.com>
parents: 14636
diff changeset
1332 {N_("Opera"), "opera"},
70f04fbec17b [gaim-migrate @ 17342]
Hendrik-Jan Heins <hjheins@gmail.com>
parents: 14636
diff changeset
1333 {N_("Netscape"), "netscape"},
70f04fbec17b [gaim-migrate @ 17342]
Hendrik-Jan Heins <hjheins@gmail.com>
parents: 14636
diff changeset
1334 {N_("Mozilla"), "mozilla"},
70f04fbec17b [gaim-migrate @ 17342]
Hendrik-Jan Heins <hjheins@gmail.com>
parents: 14636
diff changeset
1335 {N_("Konqueror"), "kfmclient"},
70f04fbec17b [gaim-migrate @ 17342]
Hendrik-Jan Heins <hjheins@gmail.com>
parents: 14636
diff changeset
1336 {N_("GNOME Default"), "gnome-open"},
9405
3413b3694435 [gaim-migrate @ 10219]
Mark Doliner <markdoliner@pidgin.im>
parents: 9307
diff changeset
1337 {N_("Galeon"), "galeon"},
14676
70f04fbec17b [gaim-migrate @ 17342]
Hendrik-Jan Heins <hjheins@gmail.com>
parents: 14636
diff changeset
1338 {N_("Firefox"), "firefox"},
70f04fbec17b [gaim-migrate @ 17342]
Hendrik-Jan Heins <hjheins@gmail.com>
parents: 14636
diff changeset
1339 {N_("Firebird"), "mozilla-firebird"},
70f04fbec17b [gaim-migrate @ 17342]
Hendrik-Jan Heins <hjheins@gmail.com>
parents: 14636
diff changeset
1340 {N_("Epiphany"), "epiphany"}
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1341 };
14677
a59432222efa [gaim-migrate @ 17343]
Will Thompson <resiak@pidgin.im>
parents: 14676
diff changeset
1342 static const int num_possible_browsers = G_N_ELEMENTS(possible_browsers);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1343
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1344 GList *browsers = NULL;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1345 int i = 0;
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1346 char *browser_setting = (char *)purple_prefs_get_string(PIDGIN_PREFS_ROOT "/browsers/browser");
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1347
13107
704041197f4d [gaim-migrate @ 15468]
Richard Laager <rlaager@pidgin.im>
parents: 13046
diff changeset
1348 browsers = g_list_prepend(browsers, (gpointer)"custom");
704041197f4d [gaim-migrate @ 15468]
Richard Laager <rlaager@pidgin.im>
parents: 13046
diff changeset
1349 browsers = g_list_prepend(browsers, (gpointer)_("Manual"));
5568
3c7cc231c8c4 [gaim-migrate @ 5970]
Christian Hammond <chipx86@chipx86.com>
parents: 5567
diff changeset
1350
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1351 for (i = 0; i < num_possible_browsers; i++) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1352 if (purple_program_is_valid(possible_browsers[i].command)) {
5633
1e82c97da6af [gaim-migrate @ 6040]
Nathan Walp <nwalp@pidgin.im>
parents: 5631
diff changeset
1353 browsers = g_list_prepend(browsers,
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
1354 possible_browsers[i].command);
13107
704041197f4d [gaim-migrate @ 15468]
Richard Laager <rlaager@pidgin.im>
parents: 13046
diff changeset
1355 browsers = g_list_prepend(browsers, (gpointer)_(possible_browsers[i].name));
5825
fed4daea7eb9 [gaim-migrate @ 6255]
Sean Egan <seanegan@pidgin.im>
parents: 5821
diff changeset
1356 if(browser_setting && !strcmp(possible_browsers[i].command, browser_setting))
5819
a96604ecebc4 [gaim-migrate @ 6249]
Ka-Hing Cheung <khc@pidgin.im>
parents: 5771
diff changeset
1357 browser_setting = NULL;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1358 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1359 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1360
5819
a96604ecebc4 [gaim-migrate @ 6249]
Ka-Hing Cheung <khc@pidgin.im>
parents: 5771
diff changeset
1361 if(browser_setting)
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1362 purple_prefs_set_string(PIDGIN_PREFS_ROOT "/browsers/browser", "custom");
5819
a96604ecebc4 [gaim-migrate @ 6249]
Ka-Hing Cheung <khc@pidgin.im>
parents: 5771
diff changeset
1363
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1364 return browsers;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1365 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1366
5568
3c7cc231c8c4 [gaim-migrate @ 5970]
Christian Hammond <chipx86@chipx86.com>
parents: 5567
diff changeset
1367 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1368 browser_changed1_cb(const char *name, PurplePrefType type,
12816
5f93e09fa9a6 [gaim-migrate @ 15164]
Mark Doliner <markdoliner@pidgin.im>
parents: 12815
diff changeset
1369 gconstpointer value, gpointer data)
8274
a9a41c888a4e [gaim-migrate @ 8998]
Mark Doliner <markdoliner@pidgin.im>
parents: 8272
diff changeset
1370 {
a9a41c888a4e [gaim-migrate @ 8998]
Mark Doliner <markdoliner@pidgin.im>
parents: 8272
diff changeset
1371 GtkWidget *hbox = data;
a9a41c888a4e [gaim-migrate @ 8998]
Mark Doliner <markdoliner@pidgin.im>
parents: 8272
diff changeset
1372 const char *browser = value;
a9a41c888a4e [gaim-migrate @ 8998]
Mark Doliner <markdoliner@pidgin.im>
parents: 8272
diff changeset
1373
a9a41c888a4e [gaim-migrate @ 8998]
Mark Doliner <markdoliner@pidgin.im>
parents: 8272
diff changeset
1374 gtk_widget_set_sensitive(hbox, strcmp(browser, "custom"));
a9a41c888a4e [gaim-migrate @ 8998]
Mark Doliner <markdoliner@pidgin.im>
parents: 8272
diff changeset
1375 }
a9a41c888a4e [gaim-migrate @ 8998]
Mark Doliner <markdoliner@pidgin.im>
parents: 8272
diff changeset
1376
a9a41c888a4e [gaim-migrate @ 8998]
Mark Doliner <markdoliner@pidgin.im>
parents: 8272
diff changeset
1377 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1378 browser_changed2_cb(const char *name, PurplePrefType type,
12816
5f93e09fa9a6 [gaim-migrate @ 15164]
Mark Doliner <markdoliner@pidgin.im>
parents: 12815
diff changeset
1379 gconstpointer value, gpointer data)
5568
3c7cc231c8c4 [gaim-migrate @ 5970]
Christian Hammond <chipx86@chipx86.com>
parents: 5567
diff changeset
1380 {
3c7cc231c8c4 [gaim-migrate @ 5970]
Christian Hammond <chipx86@chipx86.com>
parents: 5567
diff changeset
1381 GtkWidget *hbox = data;
3c7cc231c8c4 [gaim-migrate @ 5970]
Christian Hammond <chipx86@chipx86.com>
parents: 5567
diff changeset
1382 const char *browser = value;
3c7cc231c8c4 [gaim-migrate @ 5970]
Christian Hammond <chipx86@chipx86.com>
parents: 5567
diff changeset
1383
3c7cc231c8c4 [gaim-migrate @ 5970]
Christian Hammond <chipx86@chipx86.com>
parents: 5567
diff changeset
1384 gtk_widget_set_sensitive(hbox, !strcmp(browser, "custom"));
3c7cc231c8c4 [gaim-migrate @ 5970]
Christian Hammond <chipx86@chipx86.com>
parents: 5567
diff changeset
1385 }
3c7cc231c8c4 [gaim-migrate @ 5970]
Christian Hammond <chipx86@chipx86.com>
parents: 5567
diff changeset
1386
10850
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
1387 static GtkWidget *
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
1388 browser_page()
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
1389 {
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1390 GtkWidget *ret;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1391 GtkWidget *vbox;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1392 GtkWidget *hbox;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1393 GtkWidget *label;
6007
8a852b9295e0 [gaim-migrate @ 6455]
Mark Doliner <markdoliner@pidgin.im>
parents: 6006
diff changeset
1394 GtkWidget *entry;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1395 GtkSizeGroup *sg;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1396 GList *browsers = NULL;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1397
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1398 ret = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1399 gtk_container_set_border_width (GTK_CONTAINER (ret), PIDGIN_HIG_BORDER);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1400
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1401 sg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1402 vbox = pidgin_make_frame (ret, _("Browser Selection"));
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1403
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1404 browsers = get_available_browsers();
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1405 if (browsers != NULL) {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1406 label = pidgin_prefs_dropdown_from_list(vbox,_("_Browser:"), PURPLE_PREF_STRING,
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1407 PIDGIN_PREFS_ROOT "/browsers/browser",
5550
1938d1e59cf8 [gaim-migrate @ 5951]
Christian Hammond <chipx86@chipx86.com>
parents: 5547
diff changeset
1408 browsers);
11638
1821b40269a3 [gaim-migrate @ 13914]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 11619
diff changeset
1409 g_list_free(browsers);
10973
baecb01a0cf4 [gaim-migrate @ 12798]
Michael R. Head <burner@suppressingfire.org>
parents: 10972
diff changeset
1410 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1411 gtk_size_group_add_widget(sg, label);
8274
a9a41c888a4e [gaim-migrate @ 8998]
Mark Doliner <markdoliner@pidgin.im>
parents: 8272
diff changeset
1412
a9a41c888a4e [gaim-migrate @ 8998]
Mark Doliner <markdoliner@pidgin.im>
parents: 8272
diff changeset
1413 hbox = gtk_hbox_new(FALSE, 0);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1414 label = pidgin_prefs_dropdown(hbox, _("_Open link in:"), PURPLE_PREF_INT,
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1415 PIDGIN_PREFS_ROOT "/browsers/place",
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15563
diff changeset
1416 _("Browser default"), PIDGIN_BROWSER_DEFAULT,
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15563
diff changeset
1417 _("Existing window"), PIDGIN_BROWSER_CURRENT,
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15563
diff changeset
1418 _("New window"), PIDGIN_BROWSER_NEW_WINDOW,
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15563
diff changeset
1419 _("New tab"), PIDGIN_BROWSER_NEW_TAB,
8274
a9a41c888a4e [gaim-migrate @ 8998]
Mark Doliner <markdoliner@pidgin.im>
parents: 8272
diff changeset
1420 NULL);
10973
baecb01a0cf4 [gaim-migrate @ 12798]
Michael R. Head <burner@suppressingfire.org>
parents: 10972
diff changeset
1421 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
8274
a9a41c888a4e [gaim-migrate @ 8998]
Mark Doliner <markdoliner@pidgin.im>
parents: 8272
diff changeset
1422 gtk_size_group_add_widget(sg, label);
a9a41c888a4e [gaim-migrate @ 8998]
Mark Doliner <markdoliner@pidgin.im>
parents: 8272
diff changeset
1423 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
a9a41c888a4e [gaim-migrate @ 8998]
Mark Doliner <markdoliner@pidgin.im>
parents: 8272
diff changeset
1424
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1425 if (!strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/browsers/browser"), "custom"))
8274
a9a41c888a4e [gaim-migrate @ 8998]
Mark Doliner <markdoliner@pidgin.im>
parents: 8272
diff changeset
1426 gtk_widget_set_sensitive(hbox, FALSE);
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1427 purple_prefs_connect_callback(prefs, PIDGIN_PREFS_ROOT "/browsers/browser",
10087
e5b80a38939d [gaim-migrate @ 11098]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10079
diff changeset
1428 browser_changed1_cb, hbox);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1429 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1430
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1431 hbox = gtk_hbox_new(FALSE, 5);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1432 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
6031
7bcdcf180d48 [gaim-migrate @ 6481]
Mark Doliner <markdoliner@pidgin.im>
parents: 6016
diff changeset
1433 label = gtk_label_new_with_mnemonic(_("_Manual:\n(%s for URL)"));
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1434 gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1435 gtk_misc_set_alignment(GTK_MISC(label), 0, 0);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1436 gtk_size_group_add_widget(sg, label);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1437
6007
8a852b9295e0 [gaim-migrate @ 6455]
Mark Doliner <markdoliner@pidgin.im>
parents: 6006
diff changeset
1438 entry = gtk_entry_new();
8a852b9295e0 [gaim-migrate @ 6455]
Mark Doliner <markdoliner@pidgin.im>
parents: 6006
diff changeset
1439 gtk_label_set_mnemonic_widget(GTK_LABEL(label), entry);
5560
7cd6678f838b [gaim-migrate @ 5961]
Christian Hammond <chipx86@chipx86.com>
parents: 5554
diff changeset
1440
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1441 if (strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/browsers/browser"), "custom"))
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1442 gtk_widget_set_sensitive(hbox, FALSE);
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1443 purple_prefs_connect_callback(prefs, PIDGIN_PREFS_ROOT "/browsers/browser",
10087
e5b80a38939d [gaim-migrate @ 11098]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10079
diff changeset
1444 browser_changed2_cb, hbox);
5560
7cd6678f838b [gaim-migrate @ 5961]
Christian Hammond <chipx86@chipx86.com>
parents: 5554
diff changeset
1445
6007
8a852b9295e0 [gaim-migrate @ 6455]
Mark Doliner <markdoliner@pidgin.im>
parents: 6006
diff changeset
1446 gtk_box_pack_start (GTK_BOX (hbox), entry, FALSE, FALSE, 0);
8a852b9295e0 [gaim-migrate @ 6455]
Mark Doliner <markdoliner@pidgin.im>
parents: 6006
diff changeset
1447
8a852b9295e0 [gaim-migrate @ 6455]
Mark Doliner <markdoliner@pidgin.im>
parents: 6006
diff changeset
1448 gtk_entry_set_text(GTK_ENTRY(entry),
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1449 purple_prefs_get_path(PIDGIN_PREFS_ROOT "/browsers/command"));
6007
8a852b9295e0 [gaim-migrate @ 6455]
Mark Doliner <markdoliner@pidgin.im>
parents: 6006
diff changeset
1450 g_signal_connect(G_OBJECT(entry), "focus-out-event",
5560
7cd6678f838b [gaim-migrate @ 5961]
Christian Hammond <chipx86@chipx86.com>
parents: 5554
diff changeset
1451 G_CALLBACK(manual_browser_set), NULL);
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15563
diff changeset
1452 pidgin_set_accessible_label (entry, label);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1453
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1454 gtk_widget_show_all(ret);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1455 return ret;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1456 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1457 #endif /*_WIN32*/
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1458
10850
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
1459 static GtkWidget *
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
1460 logging_page()
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
1461 {
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1462 GtkWidget *ret;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1463 GtkWidget *vbox;
7431
f3eaace13491 [gaim-migrate @ 8036]
Sean Egan <seanegan@pidgin.im>
parents: 7326
diff changeset
1464 GList *names;
8573
3f37bd7005c8 [gaim-migrate @ 9321]
Ka-Hing Cheung <khc@pidgin.im>
parents: 8494
diff changeset
1465
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1466 ret = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1467 gtk_container_set_border_width (GTK_CONTAINER (ret), PIDGIN_HIG_BORDER);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1468
14950
74669b06c49a [gaim-migrate @ 17660]
Richard Laager <rlaager@pidgin.im>
parents: 14949
diff changeset
1469
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1470 vbox = pidgin_make_frame (ret, _("Logging"));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1471 names = purple_log_logger_get_options();
7431
f3eaace13491 [gaim-migrate @ 8036]
Sean Egan <seanegan@pidgin.im>
parents: 7326
diff changeset
1472
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1473 pidgin_prefs_dropdown_from_list(vbox, _("Log _format:"), PURPLE_PREF_STRING,
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1474 "/purple/logging/format", names);
7987
3678cf633995 [gaim-migrate @ 8664]
Nathan Walp <nwalp@pidgin.im>
parents: 7976
diff changeset
1475
11638
1821b40269a3 [gaim-migrate @ 13914]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 11619
diff changeset
1476 g_list_free(names);
1821b40269a3 [gaim-migrate @ 13914]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 11619
diff changeset
1477
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1478 pidgin_prefs_checkbox(_("Log all _instant messages"),
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1479 "/purple/logging/log_ims", vbox);
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1480 pidgin_prefs_checkbox(_("Log all c_hats"),
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1481 "/purple/logging/log_chats", vbox);
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1482 pidgin_prefs_checkbox(_("Log all _status changes to system log"),
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1483 "/purple/logging/log_system", vbox);
8573
3f37bd7005c8 [gaim-migrate @ 9321]
Ka-Hing Cheung <khc@pidgin.im>
parents: 8494
diff changeset
1484
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1485 gtk_widget_show_all(ret);
11698
afbf0d8bdacf [gaim-migrate @ 13989]
Mark Doliner <markdoliner@pidgin.im>
parents: 11697
diff changeset
1486
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1487 return ret;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1488 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1489
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1490 #ifndef _WIN32
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1491 static gint sound_cmd_yeah(GtkEntry *entry, gpointer d)
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1492 {
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1493 purple_prefs_set_path(PIDGIN_PREFS_ROOT "/sound/command",
6007
8a852b9295e0 [gaim-migrate @ 6455]
Mark Doliner <markdoliner@pidgin.im>
parents: 6006
diff changeset
1494 gtk_entry_get_text(GTK_ENTRY(entry)));
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1495 return TRUE;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1496 }
6005
596ca49e2514 [gaim-migrate @ 6453]
Mark Doliner <markdoliner@pidgin.im>
parents: 6001
diff changeset
1497
596ca49e2514 [gaim-migrate @ 6453]
Mark Doliner <markdoliner@pidgin.im>
parents: 6001
diff changeset
1498 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1499 sound_changed1_cb(const char *name, PurplePrefType type,
12816
5f93e09fa9a6 [gaim-migrate @ 15164]
Mark Doliner <markdoliner@pidgin.im>
parents: 12815
diff changeset
1500 gconstpointer value, gpointer data)
6005
596ca49e2514 [gaim-migrate @ 6453]
Mark Doliner <markdoliner@pidgin.im>
parents: 6001
diff changeset
1501 {
596ca49e2514 [gaim-migrate @ 6453]
Mark Doliner <markdoliner@pidgin.im>
parents: 6001
diff changeset
1502 GtkWidget *hbox = data;
596ca49e2514 [gaim-migrate @ 6453]
Mark Doliner <markdoliner@pidgin.im>
parents: 6001
diff changeset
1503 const char *method = value;
596ca49e2514 [gaim-migrate @ 6453]
Mark Doliner <markdoliner@pidgin.im>
parents: 6001
diff changeset
1504
596ca49e2514 [gaim-migrate @ 6453]
Mark Doliner <markdoliner@pidgin.im>
parents: 6001
diff changeset
1505 gtk_widget_set_sensitive(hbox, !strcmp(method, "custom"));
596ca49e2514 [gaim-migrate @ 6453]
Mark Doliner <markdoliner@pidgin.im>
parents: 6001
diff changeset
1506 }
10074
4fab99572bf1 [gaim-migrate @ 11054]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10061
diff changeset
1507
4fab99572bf1 [gaim-migrate @ 11054]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10061
diff changeset
1508 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1509 sound_changed2_cb(const char *name, PurplePrefType type,
12816
5f93e09fa9a6 [gaim-migrate @ 15164]
Mark Doliner <markdoliner@pidgin.im>
parents: 12815
diff changeset
1510 gconstpointer value, gpointer data)
10074
4fab99572bf1 [gaim-migrate @ 11054]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10061
diff changeset
1511 {
4fab99572bf1 [gaim-migrate @ 11054]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10061
diff changeset
1512 GtkWidget *vbox = data;
4fab99572bf1 [gaim-migrate @ 11054]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10061
diff changeset
1513 const char *method = value;
4fab99572bf1 [gaim-migrate @ 11054]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10061
diff changeset
1514
4fab99572bf1 [gaim-migrate @ 11054]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10061
diff changeset
1515 gtk_widget_set_sensitive(vbox, strcmp(method, "none"));
4fab99572bf1 [gaim-migrate @ 11054]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10061
diff changeset
1516 }
19849
e8a23f4721f0 Don't assume that the Gstreamer stuff isn't used on win32. There really isn't anything to see here.
Daniel Atallah <datallah@pidgin.im>
parents: 19786
diff changeset
1517 #endif /* !_WIN32 */
12815
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1518
13720
051ef816673a [gaim-migrate @ 16127]
Sean Egan <seanegan@pidgin.im>
parents: 13684
diff changeset
1519 #ifdef USE_GSTREAMER
12815
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1520 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1521 sound_changed3_cb(const char *name, PurplePrefType type,
12816
5f93e09fa9a6 [gaim-migrate @ 15164]
Mark Doliner <markdoliner@pidgin.im>
parents: 12815
diff changeset
1522 gconstpointer value, gpointer data)
12815
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1523 {
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1524 GtkWidget *hbox = data;
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1525 const char *method = value;
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1526
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1527 gtk_widget_set_sensitive(hbox,
14972
053c6beb8958 [gaim-migrate @ 17682]
Ari Pollak <ari@debian.org>
parents: 14950
diff changeset
1528 !strcmp(method, "automatic") ||
053c6beb8958 [gaim-migrate @ 17682]
Ari Pollak <ari@debian.org>
parents: 14950
diff changeset
1529 !strcmp(method, "esd"));
12815
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1530 }
13720
051ef816673a [gaim-migrate @ 16127]
Sean Egan <seanegan@pidgin.im>
parents: 13684
diff changeset
1531 #endif /* USE_GSTREAMER */
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1532
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1533
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1534 static void
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1535 event_toggled(GtkCellRendererToggle *cell, gchar *pth, gpointer data)
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1536 {
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1537 GtkTreeModel *model = (GtkTreeModel *)data;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1538 GtkTreeIter iter;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1539 GtkTreePath *path = gtk_tree_path_new_from_string(pth);
10930
b6406d3b0778 [gaim-migrate @ 12709]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10871
diff changeset
1540 char *pref;
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1541
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1542 gtk_tree_model_get_iter (model, &iter, path);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1543 gtk_tree_model_get (model, &iter,
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1544 2, &pref,
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1545 -1);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1546
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1547 purple_prefs_set_bool(pref, !gtk_cell_renderer_toggle_get_active(cell));
10930
b6406d3b0778 [gaim-migrate @ 12709]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10871
diff changeset
1548 g_free(pref);
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1549
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1550 gtk_list_store_set(GTK_LIST_STORE (model), &iter,
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1551 0, !gtk_cell_renderer_toggle_get_active(cell),
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1552 -1);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1553
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1554 gtk_tree_path_free(path);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1555 }
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1556
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1557 static void
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1558 test_sound(GtkWidget *button, gpointer i_am_NULL)
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1559 {
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1560 char *pref;
11642
76b60f0bf467 [gaim-migrate @ 13919]
Casey Harkins <charkins@pidgin.im>
parents: 11638
diff changeset
1561 gboolean temp_value;
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1562
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1563 pref = g_strdup_printf(PIDGIN_PREFS_ROOT "/sound/enabled/%s",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1564 pidgin_sound_get_event_option(sound_row_sel));
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1565
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1566 temp_value = purple_prefs_get_bool(pref);
11642
76b60f0bf467 [gaim-migrate @ 13919]
Casey Harkins <charkins@pidgin.im>
parents: 11638
diff changeset
1567
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1568 if (!temp_value) purple_prefs_set_bool(pref, TRUE);
11642
76b60f0bf467 [gaim-migrate @ 13919]
Casey Harkins <charkins@pidgin.im>
parents: 11638
diff changeset
1569
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1570 purple_sound_play_event(sound_row_sel, NULL);
11642
76b60f0bf467 [gaim-migrate @ 13919]
Casey Harkins <charkins@pidgin.im>
parents: 11638
diff changeset
1571
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1572 if (!temp_value) purple_prefs_set_bool(pref, FALSE);
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1573
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1574 g_free(pref);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1575 }
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1576
9508
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1577 /*
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1578 * Resets a sound file back to default.
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1579 */
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1580 static void
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1581 reset_sound(GtkWidget *button, gpointer i_am_also_NULL)
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1582 {
9508
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1583 gchar *pref;
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1584
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1585 pref = g_strdup_printf(PIDGIN_PREFS_ROOT "/sound/file/%s",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1586 pidgin_sound_get_event_option(sound_row_sel));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1587 purple_prefs_set_path(pref, "");
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1588 g_free(pref);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1589
17203
0ddb7ad27baa "Hello Luke!
Björn Voigt <bjoern@cs.tu-berlin.de>
parents: 16626
diff changeset
1590 gtk_entry_set_text(GTK_ENTRY(sound_entry), _("(default)"));
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1591 }
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1592
9508
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1593 static void
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1594 sound_chosen_cb(void *user_data, const char *filename)
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1595 {
9508
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1596 gchar *pref;
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1597 int sound;
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1598
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1599 sound = GPOINTER_TO_INT(user_data);
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1600
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1601 /* Set it -- and forget it */
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1602 pref = g_strdup_printf(PIDGIN_PREFS_ROOT "/sound/file/%s",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1603 pidgin_sound_get_event_option(sound));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1604 purple_prefs_set_path(pref, filename);
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1605 g_free(pref);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1606
9508
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1607 /*
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1608 * If the sound we just changed is still the currently selected
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1609 * sound, then update the box showing the file name.
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1610 */
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1611 if (sound == sound_row_sel)
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1612 gtk_entry_set_text(GTK_ENTRY(sound_entry), filename);
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1613 }
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1614
9508
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1615 static void select_sound(GtkWidget *button, gpointer being_NULL_is_fun)
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1616 {
9508
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1617 gchar *pref;
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1618 const char *filename;
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1619
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1620 pref = g_strdup_printf(PIDGIN_PREFS_ROOT "/sound/file/%s",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1621 pidgin_sound_get_event_option(sound_row_sel));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1622 filename = purple_prefs_get_path(pref);
9508
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1623 g_free(pref);
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1624
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1625 if (*filename == '\0')
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1626 filename = NULL;
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1627
20685
039aef89faf6 Updated hinting to be less invasive
Gabriel Schulhof <nix@go-nix.ca>
parents: 20684
diff changeset
1628 purple_request_file_with_hint(prefs, _("Sound Selection"), filename, FALSE,
19675
3c1669c529a1 Move purple_prefs_load() to purple_prefs_init() - there's been a TODO for this for a long time. I have no idea why this wasn't done sooner; it seems to work just fine and fixes some bugs where stuff isn't loaded before being used. Fixes #1848 (and I'm sure others). Yell at me if this breaks anything.
Daniel Atallah <datallah@pidgin.im>
parents: 19547
diff changeset
1629 G_CALLBACK(sound_chosen_cb), NULL,
19300
c55fa83a55ea Finished implem in gtkrequest.c
Gabriel Schulhof <nix@go-nix.ca>
parents: 19294
diff changeset
1630 NULL, NULL, NULL, "preferences",
16490
68c22924d66b Added account, who, and conversation parameters to the request API calls, and updated all code to match. I can't compile the Perl module, so I'd appreciate it if someone who knows it would verify that this doesn't break Perl.
Evan Schoenberg <evands@pidgin.im>
parents: 16478
diff changeset
1631 GINT_TO_POINTER(sound_row_sel));
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1632 }
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1633
13720
051ef816673a [gaim-migrate @ 16127]
Sean Egan <seanegan@pidgin.im>
parents: 13684
diff changeset
1634 #ifdef USE_GSTREAMER
12815
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1635 static gchar* prefs_sound_volume_format(GtkScale *scale, gdouble val)
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1636 {
13046
99a2833aeae3 [gaim-migrate @ 15405]
Casey Harkins <charkins@pidgin.im>
parents: 12900
diff changeset
1637 if(val < 15) {
14097
0c340861ab79 [gaim-migrate @ 16638]
Mark Doliner <markdoliner@pidgin.im>
parents: 13986
diff changeset
1638 return g_strdup_printf(_("Quietest"));
13046
99a2833aeae3 [gaim-migrate @ 15405]
Casey Harkins <charkins@pidgin.im>
parents: 12900
diff changeset
1639 } else if(val < 30) {
99a2833aeae3 [gaim-migrate @ 15405]
Casey Harkins <charkins@pidgin.im>
parents: 12900
diff changeset
1640 return g_strdup_printf(_("Quieter"));
99a2833aeae3 [gaim-migrate @ 15405]
Casey Harkins <charkins@pidgin.im>
parents: 12900
diff changeset
1641 } else if(val < 45) {
99a2833aeae3 [gaim-migrate @ 15405]
Casey Harkins <charkins@pidgin.im>
parents: 12900
diff changeset
1642 return g_strdup_printf(_("Quiet"));
99a2833aeae3 [gaim-migrate @ 15405]
Casey Harkins <charkins@pidgin.im>
parents: 12900
diff changeset
1643 } else if(val < 55) {
99a2833aeae3 [gaim-migrate @ 15405]
Casey Harkins <charkins@pidgin.im>
parents: 12900
diff changeset
1644 return g_strdup_printf(_("Normal"));
99a2833aeae3 [gaim-migrate @ 15405]
Casey Harkins <charkins@pidgin.im>
parents: 12900
diff changeset
1645 } else if(val < 70) {
99a2833aeae3 [gaim-migrate @ 15405]
Casey Harkins <charkins@pidgin.im>
parents: 12900
diff changeset
1646 return g_strdup_printf(_("Loud"));
99a2833aeae3 [gaim-migrate @ 15405]
Casey Harkins <charkins@pidgin.im>
parents: 12900
diff changeset
1647 } else if(val < 85) {
99a2833aeae3 [gaim-migrate @ 15405]
Casey Harkins <charkins@pidgin.im>
parents: 12900
diff changeset
1648 return g_strdup_printf(_("Louder"));
12815
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1649 } else {
13046
99a2833aeae3 [gaim-migrate @ 15405]
Casey Harkins <charkins@pidgin.im>
parents: 12900
diff changeset
1650 return g_strdup_printf(_("Loudest"));
12815
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1651 }
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1652 }
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1653
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1654 static void prefs_sound_volume_changed(GtkRange *range)
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1655 {
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1656 int val = (int)gtk_range_get_value(GTK_RANGE(range));
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1657 purple_prefs_set_int(PIDGIN_PREFS_ROOT "/sound/volume", val);
12815
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1658 }
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1659 #endif
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1660
9508
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1661 static void prefs_sound_sel(GtkTreeSelection *sel, GtkTreeModel *model) {
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1662 GtkTreeIter iter;
12600
7ecd4441fdc7 [gaim-migrate @ 14934]
Richard Laager <rlaager@pidgin.im>
parents: 12580
diff changeset
1663 GValue val;
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1664 const char *file;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1665 char *pref;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1666
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1667 if (! gtk_tree_selection_get_selected (sel, &model, &iter))
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1668 return;
12600
7ecd4441fdc7 [gaim-migrate @ 14934]
Richard Laager <rlaager@pidgin.im>
parents: 12580
diff changeset
1669
7ecd4441fdc7 [gaim-migrate @ 14934]
Richard Laager <rlaager@pidgin.im>
parents: 12580
diff changeset
1670 val.g_type = 0;
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1671 gtk_tree_model_get_value (model, &iter, 3, &val);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1672 sound_row_sel = g_value_get_uint(&val);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1673
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1674 pref = g_strdup_printf(PIDGIN_PREFS_ROOT "/sound/file/%s",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1675 pidgin_sound_get_event_option(sound_row_sel));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1676 file = purple_prefs_get_path(pref);
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1677 g_free(pref);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1678 if (sound_entry)
17203
0ddb7ad27baa "Hello Luke!
Björn Voigt <bjoern@cs.tu-berlin.de>
parents: 16626
diff changeset
1679 gtk_entry_set_text(GTK_ENTRY(sound_entry), (file && *file != '\0') ? file : _("(default)"));
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1680 g_value_unset (&val);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1681 }
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1682
10850
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
1683 static GtkWidget *
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
1684 sound_page()
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
1685 {
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1686 GtkWidget *ret;
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1687 GtkWidget *vbox, *sw, *button;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1688 GtkSizeGroup *sg;
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1689 GtkTreeIter iter;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1690 GtkWidget *event_view;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1691 GtkListStore *event_store;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1692 GtkCellRenderer *rend;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1693 GtkTreeViewColumn *col;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1694 GtkTreeSelection *sel;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1695 GtkTreePath *path;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1696 GtkWidget *hbox;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1697 int j;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1698 const char *file;
11082
4ea41a935359 [gaim-migrate @ 13099]
Mark Doliner <markdoliner@pidgin.im>
parents: 11052
diff changeset
1699 char *pref;
19849
e8a23f4721f0 Don't assume that the Gstreamer stuff isn't used on win32. There really isn't anything to see here.
Daniel Atallah <datallah@pidgin.im>
parents: 19786
diff changeset
1700 #if !defined _WIN32 || defined USE_GSTREAMER
e8a23f4721f0 Don't assume that the Gstreamer stuff isn't used on win32. There really isn't anything to see here.
Daniel Atallah <datallah@pidgin.im>
parents: 19786
diff changeset
1701 GtkWidget *label;
e8a23f4721f0 Don't assume that the Gstreamer stuff isn't used on win32. There really isn't anything to see here.
Daniel Atallah <datallah@pidgin.im>
parents: 19786
diff changeset
1702 #endif
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1703 #ifndef _WIN32
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1704 GtkWidget *dd;
6007
8a852b9295e0 [gaim-migrate @ 6455]
Mark Doliner <markdoliner@pidgin.im>
parents: 6006
diff changeset
1705 GtkWidget *entry;
5684
10b916deb20c [gaim-migrate @ 6104]
Nathan Walp <nwalp@pidgin.im>
parents: 5681
diff changeset
1706 const char *cmd;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1707 #endif
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1708
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1709 ret = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1710 gtk_container_set_border_width (GTK_CONTAINER (ret), PIDGIN_HIG_BORDER);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1711
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1712 sg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1713
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1714 #ifndef _WIN32
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1715 vbox = pidgin_make_frame (ret, _("Sound Method"));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1716 dd = pidgin_prefs_dropdown(vbox, _("_Method:"), PURPLE_PREF_STRING,
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1717 PIDGIN_PREFS_ROOT "/sound/method",
7987
3678cf633995 [gaim-migrate @ 8664]
Nathan Walp <nwalp@pidgin.im>
parents: 7976
diff changeset
1718 _("Console beep"), "beep",
13720
051ef816673a [gaim-migrate @ 16127]
Sean Egan <seanegan@pidgin.im>
parents: 13684
diff changeset
1719 #ifdef USE_GSTREAMER
7987
3678cf633995 [gaim-migrate @ 8664]
Nathan Walp <nwalp@pidgin.im>
parents: 7976
diff changeset
1720 _("Automatic"), "automatic",
3678cf633995 [gaim-migrate @ 8664]
Nathan Walp <nwalp@pidgin.im>
parents: 7976
diff changeset
1721 "ESD", "esd",
17146
7d256e417ef6 ALSA Gstreamer sink. Mostly to see if this still crashes Luke.
Sean Egan <seanegan@pidgin.im>
parents: 16626
diff changeset
1722 "ALSA", "alsa",
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1723 #endif
7987
3678cf633995 [gaim-migrate @ 8664]
Nathan Walp <nwalp@pidgin.im>
parents: 7976
diff changeset
1724 _("Command"), "custom",
10074
4fab99572bf1 [gaim-migrate @ 11054]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10061
diff changeset
1725 _("No sounds"), "none",
7987
3678cf633995 [gaim-migrate @ 8664]
Nathan Walp <nwalp@pidgin.im>
parents: 7976
diff changeset
1726 NULL);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1727 gtk_size_group_add_widget(sg, dd);
10973
baecb01a0cf4 [gaim-migrate @ 12798]
Michael R. Head <burner@suppressingfire.org>
parents: 10972
diff changeset
1728 gtk_misc_set_alignment(GTK_MISC(dd), 0, 0.5);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1729
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1730 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_BOX_SPACE);
11442
604d5370ff80 [gaim-migrate @ 13681]
Richard Laager <rlaager@pidgin.im>
parents: 11424
diff changeset
1731 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1732
6031
7bcdcf180d48 [gaim-migrate @ 6481]
Mark Doliner <markdoliner@pidgin.im>
parents: 6016
diff changeset
1733 label = gtk_label_new_with_mnemonic(_("Sound c_ommand:\n(%s for filename)"));
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1734 gtk_size_group_add_widget(sg, label);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1735 gtk_misc_set_alignment(GTK_MISC(label), 0, 0);
11442
604d5370ff80 [gaim-migrate @ 13681]
Richard Laager <rlaager@pidgin.im>
parents: 11424
diff changeset
1736 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1737
6007
8a852b9295e0 [gaim-migrate @ 6455]
Mark Doliner <markdoliner@pidgin.im>
parents: 6006
diff changeset
1738 entry = gtk_entry_new();
8a852b9295e0 [gaim-migrate @ 6455]
Mark Doliner <markdoliner@pidgin.im>
parents: 6006
diff changeset
1739 gtk_label_set_mnemonic_widget(GTK_LABEL(label), entry);
8a852b9295e0 [gaim-migrate @ 6455]
Mark Doliner <markdoliner@pidgin.im>
parents: 6006
diff changeset
1740
8a852b9295e0 [gaim-migrate @ 6455]
Mark Doliner <markdoliner@pidgin.im>
parents: 6006
diff changeset
1741 gtk_editable_set_editable(GTK_EDITABLE(entry), TRUE);
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1742 cmd = purple_prefs_get_path(PIDGIN_PREFS_ROOT "/sound/command");
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1743 if(cmd)
6007
8a852b9295e0 [gaim-migrate @ 6455]
Mark Doliner <markdoliner@pidgin.im>
parents: 6006
diff changeset
1744 gtk_entry_set_text(GTK_ENTRY(entry), cmd);
11442
604d5370ff80 [gaim-migrate @ 13681]
Richard Laager <rlaager@pidgin.im>
parents: 11424
diff changeset
1745
604d5370ff80 [gaim-migrate @ 13681]
Richard Laager <rlaager@pidgin.im>
parents: 11424
diff changeset
1746 gtk_box_pack_start(GTK_BOX(hbox), entry, TRUE, TRUE, 0);
6007
8a852b9295e0 [gaim-migrate @ 6455]
Mark Doliner <markdoliner@pidgin.im>
parents: 6006
diff changeset
1747 g_signal_connect(G_OBJECT(entry), "changed",
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1748 G_CALLBACK(sound_cmd_yeah), NULL);
6005
596ca49e2514 [gaim-migrate @ 6453]
Mark Doliner <markdoliner@pidgin.im>
parents: 6001
diff changeset
1749
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1750 purple_prefs_connect_callback(prefs, PIDGIN_PREFS_ROOT "/sound/method",
12815
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1751 sound_changed1_cb, hbox);
6005
596ca49e2514 [gaim-migrate @ 6453]
Mark Doliner <markdoliner@pidgin.im>
parents: 6001
diff changeset
1752 gtk_widget_set_sensitive(hbox,
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1753 !strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/sound/method"),
6005
596ca49e2514 [gaim-migrate @ 6453]
Mark Doliner <markdoliner@pidgin.im>
parents: 6001
diff changeset
1754 "custom"));
596ca49e2514 [gaim-migrate @ 6453]
Mark Doliner <markdoliner@pidgin.im>
parents: 6001
diff changeset
1755
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15563
diff changeset
1756 pidgin_set_accessible_label (entry, label);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1757 #endif /* _WIN32 */
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1758
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1759 vbox = pidgin_make_frame (ret, _("Sound Options"));
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1760 pidgin_prefs_checkbox(_("Sounds when conversation has _focus"),
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1761 PIDGIN_PREFS_ROOT "/sound/conv_focus", vbox);
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1762 pidgin_prefs_dropdown(vbox, _("Enable sounds:"),
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1763 PURPLE_PREF_INT, "/purple/sound/while_status",
14936
b4e907b75205 [gaim-migrate @ 17643]
R.Ramkumar
parents: 14903
diff changeset
1764 _("Only when available"), 1,
b4e907b75205 [gaim-migrate @ 17643]
R.Ramkumar
parents: 14903
diff changeset
1765 _("Only when not available"), 2,
b4e907b75205 [gaim-migrate @ 17643]
R.Ramkumar
parents: 14903
diff changeset
1766 _("Always"), 3,
b4e907b75205 [gaim-migrate @ 17643]
R.Ramkumar
parents: 14903
diff changeset
1767 NULL);
10074
4fab99572bf1 [gaim-migrate @ 11054]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10061
diff changeset
1768
13720
051ef816673a [gaim-migrate @ 16127]
Sean Egan <seanegan@pidgin.im>
parents: 13684
diff changeset
1769 #ifdef USE_GSTREAMER
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1770 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_BOX_SPACE);
12815
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1771 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1772
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1773 label = gtk_label_new_with_mnemonic(_("Volume:"));
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1774 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1775 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1776
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1777 sw = gtk_hscale_new_with_range(0.0, 100.0, 5.0);
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1778 gtk_range_set_increments(GTK_RANGE(sw), 5.0, 25.0);
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1779 gtk_range_set_value(GTK_RANGE(sw), purple_prefs_get_int(PIDGIN_PREFS_ROOT "/sound/volume"));
12815
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1780 g_signal_connect (G_OBJECT (sw), "format-value",
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1781 G_CALLBACK (prefs_sound_volume_format),
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1782 NULL);
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1783 g_signal_connect (G_OBJECT (sw), "value-changed",
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1784 G_CALLBACK (prefs_sound_volume_changed),
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1785 NULL);
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1786 gtk_box_pack_start(GTK_BOX(hbox), sw, TRUE, TRUE, 0);
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1787
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1788 purple_prefs_connect_callback(prefs, PIDGIN_PREFS_ROOT "/sound/method",
12815
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1789 sound_changed3_cb, hbox);
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1790 sound_changed3_cb(PIDGIN_PREFS_ROOT "/sound/method", PURPLE_PREF_STRING,
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1791 purple_prefs_get_string(PIDGIN_PREFS_ROOT "/sound/method"), hbox);
12815
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1792 #endif
5f73e8c06a9c [gaim-migrate @ 15163]
Casey Harkins <charkins@pidgin.im>
parents: 12812
diff changeset
1793
10075
d2d752ab0335 [gaim-migrate @ 11055]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10074
diff changeset
1794 #ifndef _WIN32
10074
4fab99572bf1 [gaim-migrate @ 11054]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10061
diff changeset
1795 gtk_widget_set_sensitive(vbox,
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1796 strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/sound/method"), "none"));
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1797 purple_prefs_connect_callback(prefs, PIDGIN_PREFS_ROOT "/sound/method",
10087
e5b80a38939d [gaim-migrate @ 11098]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10079
diff changeset
1798 sound_changed2_cb, vbox);
10075
d2d752ab0335 [gaim-migrate @ 11055]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10074
diff changeset
1799 #endif
10074
4fab99572bf1 [gaim-migrate @ 11054]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10061
diff changeset
1800
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1801 vbox = pidgin_make_frame(ret, _("Sound Events"));
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1802
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1803 /* The following is an ugly hack to make the frame expand so the
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1804 * sound events list is big enough to be usable */
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1805 gtk_box_set_child_packing(GTK_BOX(vbox->parent), vbox, TRUE, TRUE, 0,
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1806 GTK_PACK_START);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1807 gtk_box_set_child_packing(GTK_BOX(vbox->parent->parent), vbox->parent, TRUE,
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1808 TRUE, 0, GTK_PACK_START);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1809 gtk_box_set_child_packing(GTK_BOX(vbox->parent->parent->parent),
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1810 vbox->parent->parent, TRUE, TRUE, 0, GTK_PACK_START);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1811
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1812 sw = gtk_scrolled_window_new(NULL,NULL);
17411
fef51d6ffb6f fixes #1316
Sean Egan <seanegan@pidgin.im>
parents: 17287
diff changeset
1813 gtk_widget_set_size_request(sw, -1, 100);
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1814 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1815 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_IN);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1816
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1817 gtk_box_pack_start(GTK_BOX(vbox), sw, TRUE, TRUE, 0);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1818 event_store = gtk_list_store_new (4, G_TYPE_BOOLEAN, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_UINT);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1819
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1820 for (j=0; j < PURPLE_NUM_SOUNDS; j++) {
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1821 char *pref = g_strdup_printf(PIDGIN_PREFS_ROOT "/sound/enabled/%s",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1822 pidgin_sound_get_event_option(j));
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1823 const char *label = pidgin_sound_get_event_label(j);
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1824
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1825 if (label == NULL) {
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1826 g_free(pref);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1827 continue;
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1828 }
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1829
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1830 gtk_list_store_append (event_store, &iter);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1831 gtk_list_store_set(event_store, &iter,
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1832 0, purple_prefs_get_bool(pref),
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1833 1, _(label),
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1834 2, pref,
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1835 3, j,
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1836 -1);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1837 g_free(pref);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1838 }
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1839
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1840 event_view = gtk_tree_view_new_with_model (GTK_TREE_MODEL(event_store));
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1841
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1842 rend = gtk_cell_renderer_toggle_new();
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1843 sel = gtk_tree_view_get_selection (GTK_TREE_VIEW (event_view));
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1844 g_signal_connect (G_OBJECT (sel), "changed",
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1845 G_CALLBACK (prefs_sound_sel),
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1846 NULL);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1847 g_signal_connect (G_OBJECT(rend), "toggled",
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1848 G_CALLBACK(event_toggled), event_store);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1849 path = gtk_tree_path_new_first();
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1850 gtk_tree_selection_select_path(sel, path);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1851 gtk_tree_path_free(path);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1852
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1853 col = gtk_tree_view_column_new_with_attributes (_("Play"),
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1854 rend,
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1855 "active", 0,
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1856 NULL);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1857 gtk_tree_view_append_column (GTK_TREE_VIEW(event_view), col);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1858
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1859 rend = gtk_cell_renderer_text_new();
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1860 col = gtk_tree_view_column_new_with_attributes (_("Event"),
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1861 rend,
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1862 "text", 1,
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1863 NULL);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1864 gtk_tree_view_append_column (GTK_TREE_VIEW(event_view), col);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1865 g_object_unref(G_OBJECT(event_store));
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1866 gtk_container_add(GTK_CONTAINER(sw), event_view);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1867
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1868 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_BOX_SPACE);
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1869 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1870 sound_entry = gtk_entry_new();
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
1871 pref = g_strdup_printf(PIDGIN_PREFS_ROOT "/sound/file/%s",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1872 pidgin_sound_get_event_option(0));
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1873 file = purple_prefs_get_path(pref);
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1874 g_free(pref);
17203
0ddb7ad27baa "Hello Luke!
Björn Voigt <bjoern@cs.tu-berlin.de>
parents: 16626
diff changeset
1875 gtk_entry_set_text(GTK_ENTRY(sound_entry), (file && *file != '\0') ? file : _("(default)"));
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1876 gtk_editable_set_editable(GTK_EDITABLE(sound_entry), FALSE);
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1877 gtk_box_pack_start(GTK_BOX(hbox), sound_entry, FALSE, FALSE, PIDGIN_HIG_BOX_SPACE);
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1878
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1879 button = gtk_button_new_with_label(_("Test"));
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1880 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(test_sound), NULL);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1881 gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1882
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1883 button = gtk_button_new_with_label(_("Reset"));
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1884 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(reset_sound), NULL);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1885 gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1);
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1886
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1887 button = gtk_button_new_with_label(_("Choose..."));
9508
c757be6aad9b [gaim-migrate @ 10335]
Mark Doliner <markdoliner@pidgin.im>
parents: 9422
diff changeset
1888 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(select_sound), NULL);
9150
9c3bbd7d704c [gaim-migrate @ 9934]
Luke Schierer <lschiere@pidgin.im>
parents: 9130
diff changeset
1889 gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1);
14950
74669b06c49a [gaim-migrate @ 17660]
Richard Laager <rlaager@pidgin.im>
parents: 14949
diff changeset
1890
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1891 gtk_widget_show_all(ret);
9118
6391db1b5068 [gaim-migrate @ 9895]
Nathan Walp <nwalp@pidgin.im>
parents: 9112
diff changeset
1892
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1893 return ret;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1894 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1895
12195
ef8f46c29e77 [gaim-migrate @ 14497]
Sean Egan <seanegan@pidgin.im>
parents: 12188
diff changeset
1896
10182
960939362f7f [gaim-migrate @ 11297]
Mark Doliner <markdoliner@pidgin.im>
parents: 10181
diff changeset
1897 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1898 set_idle_away(PurpleSavedStatus *status)
10182
960939362f7f [gaim-migrate @ 11297]
Mark Doliner <markdoliner@pidgin.im>
parents: 10181
diff changeset
1899 {
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1900 purple_prefs_set_int("/purple/savedstatus/idleaway", purple_savedstatus_get_creation_time(status));
10182
960939362f7f [gaim-migrate @ 11297]
Mark Doliner <markdoliner@pidgin.im>
parents: 10181
diff changeset
1901 }
960939362f7f [gaim-migrate @ 11297]
Mark Doliner <markdoliner@pidgin.im>
parents: 10181
diff changeset
1902
12857
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
1903 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1904 set_startupstatus(PurpleSavedStatus *status)
12857
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
1905 {
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1906 purple_prefs_set_int("/purple/savedstatus/startup", purple_savedstatus_get_creation_time(status));
12857
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
1907 }
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
1908
10850
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
1909 static GtkWidget *
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
1910 away_page()
6889f793b918 [gaim-migrate @ 12522]
Mark Doliner <markdoliner@pidgin.im>
parents: 10759
diff changeset
1911 {
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1912 GtkWidget *ret;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1913 GtkWidget *vbox;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1914 GtkWidget *hbox;
12575
50fbef373c44 [gaim-migrate @ 14897]
Mark Doliner <markdoliner@pidgin.im>
parents: 12573
diff changeset
1915 GtkWidget *dd;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1916 GtkWidget *label;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1917 GtkWidget *button;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1918 GtkWidget *select;
12195
ef8f46c29e77 [gaim-migrate @ 14497]
Sean Egan <seanegan@pidgin.im>
parents: 12188
diff changeset
1919 GtkWidget *menu;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1920 GtkSizeGroup *sg;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1921
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1922 ret = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
1923 gtk_container_set_border_width (GTK_CONTAINER (ret), PIDGIN_HIG_BORDER);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1924
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1925 sg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1926
12573
1fc347b54974 [gaim-migrate @ 14895]
Mark Doliner <markdoliner@pidgin.im>
parents: 12553
diff changeset
1927 /* Idle stuff */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1928 vbox = pidgin_make_frame(ret, _("Idle"));
12573
1fc347b54974 [gaim-migrate @ 14895]
Mark Doliner <markdoliner@pidgin.im>
parents: 12553
diff changeset
1929
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1930 dd = pidgin_prefs_dropdown(vbox, _("_Report idle time:"),
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1931 PURPLE_PREF_STRING, "/purple/away/idle_reporting",
12812
d67a3e21ee10 [gaim-migrate @ 15160]
Richard Laager <rlaager@pidgin.im>
parents: 12763
diff changeset
1932 _("Never"), "none",
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1933 _("From last sent message"), "purple",
13328
65543dcbaa89 [gaim-migrate @ 15697]
Mark Doliner <markdoliner@pidgin.im>
parents: 13324
diff changeset
1934 #if defined(USE_SCREENSAVER) || defined(HAVE_IOKIT)
12812
d67a3e21ee10 [gaim-migrate @ 15160]
Richard Laager <rlaager@pidgin.im>
parents: 12763
diff changeset
1935 _("Based on keyboard or mouse use"), "system",
12573
1fc347b54974 [gaim-migrate @ 14895]
Mark Doliner <markdoliner@pidgin.im>
parents: 12553
diff changeset
1936 #endif
1fc347b54974 [gaim-migrate @ 14895]
Mark Doliner <markdoliner@pidgin.im>
parents: 12553
diff changeset
1937 NULL);
12575
50fbef373c44 [gaim-migrate @ 14897]
Mark Doliner <markdoliner@pidgin.im>
parents: 12573
diff changeset
1938 gtk_size_group_add_widget(sg, dd);
50fbef373c44 [gaim-migrate @ 14897]
Mark Doliner <markdoliner@pidgin.im>
parents: 12573
diff changeset
1939 gtk_misc_set_alignment(GTK_MISC(dd), 0, 0.5);
12573
1fc347b54974 [gaim-migrate @ 14895]
Mark Doliner <markdoliner@pidgin.im>
parents: 12553
diff changeset
1940
1fc347b54974 [gaim-migrate @ 14895]
Mark Doliner <markdoliner@pidgin.im>
parents: 12553
diff changeset
1941 /* Away stuff */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1942 vbox = pidgin_make_frame(ret, _("Away"));
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1943
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1944 dd = pidgin_prefs_dropdown(vbox, _("_Auto-reply:"),
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1945 PURPLE_PREF_STRING, "/purple/away/auto_reply",
9596
5f5575b051e6 [gaim-migrate @ 10439]
Mark Doliner <markdoliner@pidgin.im>
parents: 9521
diff changeset
1946 _("Never"), "never",
9736
5e26835f2cbd [gaim-migrate @ 10597]
Sean Egan <seanegan@pidgin.im>
parents: 9730
diff changeset
1947 _("When away"), "away",
10859
d0da8cb9d2e9 [gaim-migrate @ 12542]
Palmer Cox <enix@users.sourceforge.net>
parents: 10850
diff changeset
1948 _("When both away and idle"), "awayidle",
9596
5f5575b051e6 [gaim-migrate @ 10439]
Mark Doliner <markdoliner@pidgin.im>
parents: 9521
diff changeset
1949 NULL);
12575
50fbef373c44 [gaim-migrate @ 14897]
Mark Doliner <markdoliner@pidgin.im>
parents: 12573
diff changeset
1950 gtk_size_group_add_widget(sg, dd);
50fbef373c44 [gaim-migrate @ 14897]
Mark Doliner <markdoliner@pidgin.im>
parents: 12573
diff changeset
1951 gtk_misc_set_alignment(GTK_MISC(dd), 0, 0.5);
6142
6c6733b2e804 [gaim-migrate @ 6616]
Lee Roach <phroggster@gmail.com>
parents: 6141
diff changeset
1952
12573
1fc347b54974 [gaim-migrate @ 14895]
Mark Doliner <markdoliner@pidgin.im>
parents: 12553
diff changeset
1953 /* Auto-away stuff */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1954 vbox = pidgin_make_frame(ret, _("Auto-away"));
11287
87bec7c61fed [gaim-migrate @ 13484]
Daniel Atallah <datallah@pidgin.im>
parents: 11275
diff changeset
1955
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1956 button = pidgin_prefs_checkbox(_("Change status when _idle"),
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1957 "/purple/away/away_when_idle", vbox);
8238
f7d22f952df5 [gaim-migrate @ 8961]
Mark Doliner <markdoliner@pidgin.im>
parents: 8231
diff changeset
1958
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1959 select = pidgin_prefs_labeled_spin_button(vbox,
19045
c5e869038b16 A few strings I couldn't change without breaking string freeze
Sean Egan <seanegan@pidgin.im>
parents: 18933
diff changeset
1960 _("_Minutes before becoming idle:"), "/purple/away/mins_before_away",
7987
3678cf633995 [gaim-migrate @ 8664]
Nathan Walp <nwalp@pidgin.im>
parents: 7976
diff changeset
1961 1, 24 * 60, sg);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1962 g_signal_connect(G_OBJECT(button), "clicked",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1963 G_CALLBACK(pidgin_toggle_sensitive), select);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1964
8238
f7d22f952df5 [gaim-migrate @ 8961]
Mark Doliner <markdoliner@pidgin.im>
parents: 8231
diff changeset
1965 hbox = gtk_hbox_new(FALSE, 0);
f7d22f952df5 [gaim-migrate @ 8961]
Mark Doliner <markdoliner@pidgin.im>
parents: 8231
diff changeset
1966 gtk_container_add(GTK_CONTAINER(vbox), hbox);
f7d22f952df5 [gaim-migrate @ 8961]
Mark Doliner <markdoliner@pidgin.im>
parents: 8231
diff changeset
1967
11811
62e122478756 [gaim-migrate @ 14102]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 11796
diff changeset
1968 label = gtk_label_new_with_mnemonic(_("Change _status to:"));
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1969 gtk_size_group_add_widget(sg, label);
10973
baecb01a0cf4 [gaim-migrate @ 12798]
Michael R. Head <burner@suppressingfire.org>
parents: 10972
diff changeset
1970 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
8238
f7d22f952df5 [gaim-migrate @ 8961]
Mark Doliner <markdoliner@pidgin.im>
parents: 8231
diff changeset
1971 g_signal_connect(G_OBJECT(button), "clicked",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1972 G_CALLBACK(pidgin_toggle_sensitive), label);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
1973 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
12656
77de7b9c23bf [gaim-migrate @ 14999]
Mark Doliner <markdoliner@pidgin.im>
parents: 12616
diff changeset
1974
77de7b9c23bf [gaim-migrate @ 14999]
Mark Doliner <markdoliner@pidgin.im>
parents: 12616
diff changeset
1975 /* TODO: Show something useful if we don't have any saved statuses. */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
1976 menu = pidgin_status_menu(purple_savedstatus_get_idleaway(), G_CALLBACK(set_idle_away));
12195
ef8f46c29e77 [gaim-migrate @ 14497]
Sean Egan <seanegan@pidgin.im>
parents: 12188
diff changeset
1977 gtk_box_pack_start(GTK_BOX(hbox), menu, FALSE, FALSE, 0);
ef8f46c29e77 [gaim-migrate @ 14497]
Sean Egan <seanegan@pidgin.im>
parents: 12188
diff changeset
1978 g_signal_connect(G_OBJECT(button), "clicked",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1979 G_CALLBACK(pidgin_toggle_sensitive), menu);
12575
50fbef373c44 [gaim-migrate @ 14897]
Mark Doliner <markdoliner@pidgin.im>
parents: 12573
diff changeset
1980 gtk_label_set_mnemonic_widget(GTK_LABEL(label), menu);
8238
f7d22f952df5 [gaim-migrate @ 8961]
Mark Doliner <markdoliner@pidgin.im>
parents: 8231
diff changeset
1981
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1982 if (!purple_prefs_get_bool("/purple/away/away_when_idle")) {
12195
ef8f46c29e77 [gaim-migrate @ 14497]
Sean Egan <seanegan@pidgin.im>
parents: 12188
diff changeset
1983 gtk_widget_set_sensitive(GTK_WIDGET(menu), FALSE);
5550
1938d1e59cf8 [gaim-migrate @ 5951]
Christian Hammond <chipx86@chipx86.com>
parents: 5547
diff changeset
1984 gtk_widget_set_sensitive(GTK_WIDGET(select), FALSE);
8238
f7d22f952df5 [gaim-migrate @ 8961]
Mark Doliner <markdoliner@pidgin.im>
parents: 8231
diff changeset
1985 gtk_widget_set_sensitive(GTK_WIDGET(label), FALSE);
5550
1938d1e59cf8 [gaim-migrate @ 5951]
Christian Hammond <chipx86@chipx86.com>
parents: 5547
diff changeset
1986 }
1938d1e59cf8 [gaim-migrate @ 5951]
Christian Hammond <chipx86@chipx86.com>
parents: 5547
diff changeset
1987
12857
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
1988 /* Signon status stuff */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1989 vbox = pidgin_make_frame(ret, _("Status at Startup"));
12857
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
1990
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
1991 button = pidgin_prefs_checkbox(_("Use status from last _exit at startup"),
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
1992 "/purple/savedstatus/startup_current_status", vbox);
12857
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
1993
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
1994 hbox = gtk_hbox_new(FALSE, 0);
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
1995 gtk_container_add(GTK_CONTAINER(vbox), hbox);
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
1996
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
1997 label = gtk_label_new_with_mnemonic(_("Status to a_pply at startup:"));
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
1998 gtk_size_group_add_widget(sg, label);
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
1999 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
2000 g_signal_connect(G_OBJECT(button), "clicked",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
2001 G_CALLBACK(pidgin_toggle_sensitive), label);
12857
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
2002 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
2003
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
2004 /* TODO: Show something useful if we don't have any saved statuses. */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
2005 menu = pidgin_status_menu(purple_savedstatus_get_startup(), G_CALLBACK(set_startupstatus));
12857
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
2006 gtk_box_pack_start(GTK_BOX(hbox), menu, FALSE, FALSE, 0);
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
2007 g_signal_connect(G_OBJECT(button), "clicked",
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
2008 G_CALLBACK(pidgin_toggle_sensitive), menu);
12857
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
2009 gtk_label_set_mnemonic_widget(GTK_LABEL(label), menu);
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
2010
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
2011 if (purple_prefs_get_bool("/purple/savedstatus/startup_current_status")) {
12857
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
2012 gtk_widget_set_sensitive(GTK_WIDGET(menu), FALSE);
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
2013 gtk_widget_set_sensitive(GTK_WIDGET(label), FALSE);
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
2014 }
2e99b4a360fc [gaim-migrate @ 15208]
Daniel Atallah <datallah@pidgin.im>
parents: 12845
diff changeset
2015
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2016 gtk_widget_show_all(ret);
5550
1938d1e59cf8 [gaim-migrate @ 5951]
Christian Hammond <chipx86@chipx86.com>
parents: 5547
diff changeset
2017
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2018 return ret;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2019 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2020
19675
3c1669c529a1 Move purple_prefs_load() to purple_prefs_init() - there's been a TODO for this for a long time. I have no idea why this wasn't done sooner; it seems to work just fine and fixes some bugs where stuff isn't loaded before being used. Fixes #1848 (and I'm sure others). Yell at me if this breaks anything.
Daniel Atallah <datallah@pidgin.im>
parents: 19547
diff changeset
2021 static int
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
2022 prefs_notebook_add_page(const char *text,
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
2023 GtkWidget *page,
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
2024 int ind) {
10759
c6600b133594 [gaim-migrate @ 12362]
Mark Doliner <markdoliner@pidgin.im>
parents: 10701
diff changeset
2025
11380
35d35c535781 [gaim-migrate @ 13607]
Mark Doliner <markdoliner@pidgin.im>
parents: 11287
diff changeset
2026 #if GTK_CHECK_VERSION(2,4,0)
10759
c6600b133594 [gaim-migrate @ 12362]
Mark Doliner <markdoliner@pidgin.im>
parents: 10701
diff changeset
2027 return gtk_notebook_append_page(GTK_NOTEBOOK(prefsnotebook), page, gtk_label_new(text));
11380
35d35c535781 [gaim-migrate @ 13607]
Mark Doliner <markdoliner@pidgin.im>
parents: 11287
diff changeset
2028 #else
35d35c535781 [gaim-migrate @ 13607]
Mark Doliner <markdoliner@pidgin.im>
parents: 11287
diff changeset
2029 gtk_notebook_append_page(GTK_NOTEBOOK(prefsnotebook), page, gtk_label_new(text));
35d35c535781 [gaim-migrate @ 13607]
Mark Doliner <markdoliner@pidgin.im>
parents: 11287
diff changeset
2030 return gtk_notebook_page_num(GTK_NOTEBOOK(prefsnotebook), page);
35d35c535781 [gaim-migrate @ 13607]
Mark Doliner <markdoliner@pidgin.im>
parents: 11287
diff changeset
2031 #endif
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2032 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2033
10871
c0282a4f2250 [gaim-migrate @ 12558]
Mark Doliner <markdoliner@pidgin.im>
parents: 10859
diff changeset
2034 static void prefs_notebook_init() {
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
2035 prefs_notebook_add_page(_("Interface"), interface_page(), notebook_page++);
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
2036 prefs_notebook_add_page(_("Conversations"), conv_page(), notebook_page++);
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
2037 prefs_notebook_add_page(_("Smiley Themes"), theme_page(), notebook_page++);
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
2038 prefs_notebook_add_page(_("Sounds"), sound_page(), notebook_page++);
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
2039 prefs_notebook_add_page(_("Network"), network_page(), notebook_page++);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2040 #ifndef _WIN32
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2041 /* We use the registered default browser in windows */
14709
9b6f1cc24c6a [gaim-migrate @ 17393]
Evan Schoenberg <evands@pidgin.im>
parents: 14677
diff changeset
2042 /* if the user is running gnome 2.x or Mac OS X, hide the browsers tab */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
2043 if ((purple_running_gnome() == FALSE) && (purple_running_osx() == FALSE)) {
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
2044 prefs_notebook_add_page(_("Browser"), browser_page(), notebook_page++);
10060
4256ee599d8c [gaim-migrate @ 11030]
Tim Ringenbach <marv@pidgin.im>
parents: 9993
diff changeset
2045 }
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2046 #endif
14947
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
2047 prefs_notebook_add_page(_("Logging"), logging_page(), notebook_page++);
3d4554cea133 [gaim-migrate @ 17654]
Sean Egan <seanegan@pidgin.im>
parents: 14942
diff changeset
2048 prefs_notebook_add_page(_("Status / Idle"), away_page(), notebook_page++);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2049 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2050
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
2051 void pidgin_prefs_show(void)
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2052 {
10078
97237f516d12 [gaim-migrate @ 11060]
Sean Egan <seanegan@pidgin.im>
parents: 10075
diff changeset
2053 GtkWidget *vbox;
8292
9b25d6300cda [gaim-migrate @ 9016]
Christian Hammond <chipx86@chipx86.com>
parents: 8283
diff changeset
2054 GtkWidget *bbox;
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2055 GtkWidget *notebook;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2056 GtkWidget *button;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2057
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2058 if (prefs) {
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2059 gtk_window_present(GTK_WINDOW(prefs));
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2060 return;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2061 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2062
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2063 /* copy the preferences to tmp values...
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2064 * I liked "take affect immediately" Oh well :-( */
6016
31360de33beb [gaim-migrate @ 6466]
Mark Doliner <markdoliner@pidgin.im>
parents: 6007
diff changeset
2065 /* (that should have been "effect," right?) */
31360de33beb [gaim-migrate @ 6466]
Mark Doliner <markdoliner@pidgin.im>
parents: 6007
diff changeset
2066
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2067 /* Back to instant-apply! I win! BU-HAHAHA! */
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2068
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2069 /* Create the window */
17213
25a0ae0d0ff7 Added to gtkutils.c:
Gabriel Schulhof <nix@go-nix.ca>
parents: 16626
diff changeset
2070 prefs = pidgin_create_window(_("Preferences"), PIDGIN_HIG_BORDER, "preferences", FALSE);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2071 g_signal_connect(G_OBJECT(prefs), "destroy",
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2072 G_CALLBACK(delete_prefs), NULL);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2073
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
2074 vbox = gtk_vbox_new(FALSE, PIDGIN_HIG_BORDER);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2075 gtk_container_add(GTK_CONTAINER(prefs), vbox);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2076 gtk_widget_show(vbox);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2077
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2078 /* The notebook */
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2079 prefsnotebook = notebook = gtk_notebook_new ();
10078
97237f516d12 [gaim-migrate @ 11060]
Sean Egan <seanegan@pidgin.im>
parents: 10075
diff changeset
2080 gtk_box_pack_start (GTK_BOX (vbox), notebook, FALSE, FALSE, 0);
11740
2b605228ec11 [gaim-migrate @ 14031]
Sean Egan <seanegan@pidgin.im>
parents: 11709
diff changeset
2081 gtk_widget_show(prefsnotebook);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2082
8713
8a7baa8f8460 [gaim-migrate @ 9467]
Gary Kramlich <grim@pidgin.im>
parents: 8705
diff changeset
2083 /* The buttons to press! */
8292
9b25d6300cda [gaim-migrate @ 9016]
Christian Hammond <chipx86@chipx86.com>
parents: 8283
diff changeset
2084 bbox = gtk_hbutton_box_new();
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15880
diff changeset
2085 gtk_box_set_spacing(GTK_BOX(bbox), PIDGIN_HIG_BOX_SPACE);
8292
9b25d6300cda [gaim-migrate @ 9016]
Christian Hammond <chipx86@chipx86.com>
parents: 8283
diff changeset
2086 gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_END);
9b25d6300cda [gaim-migrate @ 9016]
Christian Hammond <chipx86@chipx86.com>
parents: 8283
diff changeset
2087 gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 0);
9b25d6300cda [gaim-migrate @ 9016]
Christian Hammond <chipx86@chipx86.com>
parents: 8283
diff changeset
2088 gtk_widget_show (bbox);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2089
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2090 button = gtk_button_new_from_stock (GTK_STOCK_CLOSE);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2091 g_signal_connect_swapped(G_OBJECT(button), "clicked",
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2092 G_CALLBACK(gtk_widget_destroy), prefs);
8292
9b25d6300cda [gaim-migrate @ 9016]
Christian Hammond <chipx86@chipx86.com>
parents: 8283
diff changeset
2093 gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2094 gtk_widget_show(button);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2095
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2096 prefs_notebook_init();
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2097
5568
3c7cc231c8c4 [gaim-migrate @ 5970]
Christian Hammond <chipx86@chipx86.com>
parents: 5567
diff changeset
2098 /* Show everything. */
11740
2b605228ec11 [gaim-migrate @ 14031]
Sean Egan <seanegan@pidgin.im>
parents: 11709
diff changeset
2099 gtk_widget_show(prefs);
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2100 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2101
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
2102 static void
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
2103 set_bool_pref(GtkWidget *w, const char *key)
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
2104 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
2105 purple_prefs_set_bool(key,
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
2106 gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w)));
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
2107 }
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
2108
7976
fa3b5ed4ac97 [gaim-migrate @ 8653]
Daniel Atallah <datallah@pidgin.im>
parents: 7940
diff changeset
2109 GtkWidget *
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
2110 pidgin_prefs_checkbox(const char *text, const char *key, GtkWidget *page)
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2111 {
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2112 GtkWidget *button;
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
2113
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2114 button = gtk_check_button_new_with_mnemonic(text);
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
2115 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button),
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
2116 purple_prefs_get_bool(key));
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
2117
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2118 gtk_box_pack_start(GTK_BOX(page), button, FALSE, FALSE, 0);
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
2119
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
2120 g_signal_connect(G_OBJECT(button), "clicked",
5551
f92bd449fd90 [gaim-migrate @ 5952]
Christian Hammond <chipx86@chipx86.com>
parents: 5550
diff changeset
2121 G_CALLBACK(set_bool_pref), (char *)key);
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
2122
5440
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2123 gtk_widget_show(button);
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2124
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2125 return button;
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2126 }
3127b1a3210f [gaim-migrate @ 5822]
Nathan Walp <nwalp@pidgin.im>
parents:
diff changeset
2127
5770
e18c7f1947f0 [gaim-migrate @ 6195]
Christian Hammond <chipx86@chipx86.com>
parents: 5753
diff changeset
2128 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
2129 smiley_theme_pref_cb(const char *name, PurplePrefType type,
12816
5f93e09fa9a6 [gaim-migrate @ 15164]
Mark Doliner <markdoliner@pidgin.im>
parents: 12815
diff changeset
2130 gconstpointer value, gpointer data)
5770
e18c7f1947f0 [gaim-migrate @ 6195]
Christian Hammond <chipx86@chipx86.com>
parents: 5753
diff changeset
2131 {
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
2132 const char *themename = value;
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
2133 GSList *themes;
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
2134
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
2135 for (themes = smiley_themes; themes; themes = themes->next) {
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
2136 struct smiley_theme *smile = themes->data;
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
2137 if (smile->name && strcmp(themename, smile->name) == 0) {
16263
27e0ef0f38e6 Word on the street is that we don't want things named pidginfoo_bar(), but
Richard Laager <rlaager@pidgin.im>
parents: 16259
diff changeset
2138 pidgin_themes_load_smiley_theme(smile->path, TRUE);
11557
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
2139 break;
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
2140 }
7a20e7fb7915 [gaim-migrate @ 13819]
Daniel Atallah <datallah@pidgin.im>
parents: 11550
diff changeset
2141 }
5770
e18c7f1947f0 [gaim-migrate @ 6195]
Christian Hammond <chipx86@chipx86.com>
parents: 5753
diff changeset
2142 }
e18c7f1947f0 [gaim-migrate @ 6195]
Christian Hammond <chipx86@chipx86.com>
parents: 5753
diff changeset
2143
5530
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5440
diff changeset
2144 void
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
2145 pidgin_prefs_init(void)
5530
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5440
diff changeset
2146 {
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2147 purple_prefs_add_none(PIDGIN_PREFS_ROOT "");
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
2148 purple_prefs_add_none("/plugins/gtk");
5550
1938d1e59cf8 [gaim-migrate @ 5951]
Christian Hammond <chipx86@chipx86.com>
parents: 5547
diff changeset
2149
8283
407f6ed6715d [gaim-migrate @ 9007]
Daniel Atallah <datallah@pidgin.im>
parents: 8274
diff changeset
2150 #ifndef _WIN32
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
2151 /* Browsers */
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2152 purple_prefs_add_none(PIDGIN_PREFS_ROOT "/browsers");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2153 purple_prefs_add_int(PIDGIN_PREFS_ROOT "/browsers/place", PIDGIN_BROWSER_DEFAULT);
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2154 purple_prefs_add_path(PIDGIN_PREFS_ROOT "/browsers/command", "");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2155 purple_prefs_add_string(PIDGIN_PREFS_ROOT "/browsers/browser", "mozilla");
8283
407f6ed6715d [gaim-migrate @ 9007]
Daniel Atallah <datallah@pidgin.im>
parents: 8274
diff changeset
2156 #endif
5545
a8b1a1262402 [gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents: 5539
diff changeset
2157
5949
bb7cbf02dda9 [gaim-migrate @ 6393]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
2158 /* Plugins */
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2159 purple_prefs_add_none(PIDGIN_PREFS_ROOT "/plugins");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2160 purple_prefs_add_path_list(PIDGIN_PREFS_ROOT "/plugins/loaded", NULL);
5949
bb7cbf02dda9 [gaim-migrate @ 6393]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
2161
10605
ad11c1f21415 [gaim-migrate @ 12037]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10589
diff changeset
2162 /* File locations */
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2163 purple_prefs_add_none(PIDGIN_PREFS_ROOT "/filelocations");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2164 purple_prefs_add_path(PIDGIN_PREFS_ROOT "/filelocations/last_save_folder", "");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2165 purple_prefs_add_path(PIDGIN_PREFS_ROOT "/filelocations/last_open_folder", "");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2166 purple_prefs_add_path(PIDGIN_PREFS_ROOT "/filelocations/last_icon_folder", "");
10605
ad11c1f21415 [gaim-migrate @ 12037]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 10589
diff changeset
2167
5539
a13dd0ba205a [gaim-migrate @ 5939]
Christian Hammond <chipx86@chipx86.com>
parents: 5535
diff changeset
2168 /* Smiley Themes */
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2169 purple_prefs_add_none(PIDGIN_PREFS_ROOT "/smileys");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2170 purple_prefs_add_string(PIDGIN_PREFS_ROOT "/smileys/theme", "Default");
5770
e18c7f1947f0 [gaim-migrate @ 6195]
Christian Hammond <chipx86@chipx86.com>
parents: 5753
diff changeset
2171
e18c7f1947f0 [gaim-migrate @ 6195]
Christian Hammond <chipx86@chipx86.com>
parents: 5753
diff changeset
2172 /* Smiley Callbacks */
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2173 purple_prefs_connect_callback(prefs, PIDGIN_PREFS_ROOT "/smileys/theme",
5770
e18c7f1947f0 [gaim-migrate @ 6195]
Christian Hammond <chipx86@chipx86.com>
parents: 5753
diff changeset
2174 smiley_theme_pref_cb, NULL);
19675
3c1669c529a1 Move purple_prefs_load() to purple_prefs_init() - there's been a TODO for this for a long time. I have no idea why this wasn't done sooner; it seems to work just fine and fixes some bugs where stuff isn't loaded before being used. Fixes #1848 (and I'm sure others). Yell at me if this breaks anything.
Daniel Atallah <datallah@pidgin.im>
parents: 19547
diff changeset
2175
3c1669c529a1 Move purple_prefs_load() to purple_prefs_init() - there's been a TODO for this for a long time. I have no idea why this wasn't done sooner; it seems to work just fine and fixes some bugs where stuff isn't loaded before being used. Fixes #1848 (and I'm sure others). Yell at me if this breaks anything.
Daniel Atallah <datallah@pidgin.im>
parents: 19547
diff changeset
2176 pidgin_prefs_update_old();
5530
ba1ad464b56f [gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents: 5440
diff changeset
2177 }
8905
cedfa637389f [gaim-migrate @ 9674]
Mark Doliner <markdoliner@pidgin.im>
parents: 8900
diff changeset
2178
16626
8b0e5bf44f6b Rename parents first, then rename/remove the dead children. Also, set the idle-setting to 'purple' if it was 'gaim' before migration.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
2179 void pidgin_prefs_update_old()
8b0e5bf44f6b Rename parents first, then rename/remove the dead children. Also, set the idle-setting to 'purple' if it was 'gaim' before migration.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
2180 {
8b0e5bf44f6b Rename parents first, then rename/remove the dead children. Also, set the idle-setting to 'purple' if it was 'gaim' before migration.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
2181 const char *str;
8b0e5bf44f6b Rename parents first, then rename/remove the dead children. Also, set the idle-setting to 'purple' if it was 'gaim' before migration.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
2182
8b0e5bf44f6b Rename parents first, then rename/remove the dead children. Also, set the idle-setting to 'purple' if it was 'gaim' before migration.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
2183 purple_prefs_rename("/gaim/gtk", PIDGIN_PREFS_ROOT);
8b0e5bf44f6b Rename parents first, then rename/remove the dead children. Also, set the idle-setting to 'purple' if it was 'gaim' before migration.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
2184
8905
cedfa637389f [gaim-migrate @ 9674]
Mark Doliner <markdoliner@pidgin.im>
parents: 8900
diff changeset
2185 /* Rename some old prefs */
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
2186 purple_prefs_rename(PIDGIN_PREFS_ROOT "/logging/log_ims", "/purple/logging/log_ims");
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
2187 purple_prefs_rename(PIDGIN_PREFS_ROOT "/logging/log_chats", "/purple/logging/log_chats");
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
2188 purple_prefs_rename("/purple/conversations/placement",
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2189 PIDGIN_PREFS_ROOT "/conversations/placement");
8905
cedfa637389f [gaim-migrate @ 9674]
Mark Doliner <markdoliner@pidgin.im>
parents: 8900
diff changeset
2190
18228
69da1c9d8226 disapproval of revision 'd9332822e8031d2ae88e25b36c74c7a9044a5633'
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 18227
diff changeset
2191 purple_prefs_rename(PIDGIN_PREFS_ROOT "/debug/timestamps", "/purple/debug/timestamps");
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2192 purple_prefs_rename(PIDGIN_PREFS_ROOT "/conversations/im/raise_on_events", "/plugins/gtk/X11/notify/method_raise");
10307
f3ba80364053 [gaim-migrate @ 11497]
Mark Doliner <markdoliner@pidgin.im>
parents: 10297
diff changeset
2193
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2194 purple_prefs_rename_boolean_toggle(PIDGIN_PREFS_ROOT "/conversations/ignore_colors",
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2195 PIDGIN_PREFS_ROOT "/conversations/show_incoming_formatting");
11267
78f1eb5b3d6e [gaim-migrate @ 13449]
Richard Laager <rlaager@pidgin.im>
parents: 11256
diff changeset
2196
12573
1fc347b54974 [gaim-migrate @ 14895]
Mark Doliner <markdoliner@pidgin.im>
parents: 12553
diff changeset
2197 /* this string pref moved into the core, try to be friendly */
16478
19107605c565 Works for me! Renames prefs: /core to /purple, /gaim/gtk to /pidgin, /gaim/gnt to /finch
Sean Egan <seanegan@pidgin.im>
parents: 16263
diff changeset
2198 purple_prefs_rename(PIDGIN_PREFS_ROOT "/idle/reporting_method", "/purple/away/idle_reporting");
16626
8b0e5bf44f6b Rename parents first, then rename/remove the dead children. Also, set the idle-setting to 'purple' if it was 'gaim' before migration.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
2199 if ((str = purple_prefs_get_string("/purple/away/idle_reporting")) &&
8b0e5bf44f6b Rename parents first, then rename/remove the dead children. Also, set the idle-setting to 'purple' if it was 'gaim' before migration.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
2200 strcmp(str, "gaim") == 0)
8b0e5bf44f6b Rename parents first, then rename/remove the dead children. Also, set the idle-setting to 'purple' if it was 'gaim' before migration.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 16490
diff changeset
2201 purple_prefs_set_string("/purple/away/idle_reporting", "purple");
12154
fe5ae153f8cd [gaim-migrate @ 14455]
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 12152
diff changeset
2202
8905
cedfa637389f [gaim-migrate @ 9674]
Mark Doliner <markdoliner@pidgin.im>
parents: 8900
diff changeset
2203 /* Remove some no-longer-used prefs */
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2204 purple_prefs_remove(PIDGIN_PREFS_ROOT "/blist/auto_expand_contacts");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2205 purple_prefs_remove(PIDGIN_PREFS_ROOT "/blist/button_style");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2206 purple_prefs_remove(PIDGIN_PREFS_ROOT "/blist/grey_idle_buddies");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2207 purple_prefs_remove(PIDGIN_PREFS_ROOT "/blist/raise_on_events");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2208 purple_prefs_remove(PIDGIN_PREFS_ROOT "/blist/show_group_count");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2209 purple_prefs_remove(PIDGIN_PREFS_ROOT "/blist/show_warning_level");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2210 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/button_type");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2211 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/ctrl_enter_sends");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2212 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/enter_sends");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2213 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/escape_closes");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2214 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/html_shortcuts");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2215 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/icons_on_tabs");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2216 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/send_formatting");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2217 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/show_smileys");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2218 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/show_urls_as_links");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2219 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/smiley_shortcuts");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2220 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/use_custom_bgcolor");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2221 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/use_custom_fgcolor");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2222 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/use_custom_font");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2223 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/use_custom_size");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2224 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/chat/old_tab_complete");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2225 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/chat/tab_completion");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2226 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/im/hide_on_send");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2227 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/chat/color_nicks");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2228 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/chat/raise_on_events");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2229 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/ignore_fonts");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2230 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/ignore_font_sizes");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2231 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/passthrough_unknown_commands");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2232 purple_prefs_remove(PIDGIN_PREFS_ROOT "/idle");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2233 purple_prefs_remove(PIDGIN_PREFS_ROOT "/logging/individual_logs");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2234 purple_prefs_remove(PIDGIN_PREFS_ROOT "/sound/signon");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2235 purple_prefs_remove(PIDGIN_PREFS_ROOT "/sound/silent_signon");
12616
ca6132b9bfe2 [gaim-migrate @ 14952]
Richard Laager <rlaager@pidgin.im>
parents: 12613
diff changeset
2236
ca6132b9bfe2 [gaim-migrate @ 14952]
Richard Laager <rlaager@pidgin.im>
parents: 12613
diff changeset
2237 /* Convert old queuing prefs to hide_new 3-way pref. */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
2238 if (purple_prefs_exists("/plugins/gtk/docklet/queue_messages") &&
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
2239 purple_prefs_get_bool("/plugins/gtk/docklet/queue_messages"))
12616
ca6132b9bfe2 [gaim-migrate @ 14952]
Richard Laager <rlaager@pidgin.im>
parents: 12613
diff changeset
2240 {
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2241 purple_prefs_set_string(PIDGIN_PREFS_ROOT "/conversations/im/hide_new", "always");
12616
ca6132b9bfe2 [gaim-migrate @ 14952]
Richard Laager <rlaager@pidgin.im>
parents: 12613
diff changeset
2242 }
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2243 else if (purple_prefs_exists(PIDGIN_PREFS_ROOT "/away/queue_messages") &&
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2244 purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/away/queue_messages"))
12616
ca6132b9bfe2 [gaim-migrate @ 14952]
Richard Laager <rlaager@pidgin.im>
parents: 12613
diff changeset
2245 {
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2246 purple_prefs_set_string(PIDGIN_PREFS_ROOT "/conversations/im/hide_new", "away");
12616
ca6132b9bfe2 [gaim-migrate @ 14952]
Richard Laager <rlaager@pidgin.im>
parents: 12613
diff changeset
2247 }
16123
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2248 purple_prefs_remove(PIDGIN_PREFS_ROOT "/away/queue_messages");
8b98683319e7 Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 15931
diff changeset
2249 purple_prefs_remove(PIDGIN_PREFS_ROOT "/away");
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15883
diff changeset
2250 purple_prefs_remove("/plugins/gtk/docklet/queue_messages");
19086
269c42c13f9d remember chat/im windows sizes and positions separately by letting the
Ka-Hing Cheung <khc@pidgin.im>
parents: 19045
diff changeset
2251
269c42c13f9d remember chat/im windows sizes and positions separately by letting the
Ka-Hing Cheung <khc@pidgin.im>
parents: 19045
diff changeset
2252 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/chat/default_width");
269c42c13f9d remember chat/im windows sizes and positions separately by letting the
Ka-Hing Cheung <khc@pidgin.im>
parents: 19045
diff changeset
2253 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/chat/default_height");
269c42c13f9d remember chat/im windows sizes and positions separately by letting the
Ka-Hing Cheung <khc@pidgin.im>
parents: 19045
diff changeset
2254 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/im/default_width");
269c42c13f9d remember chat/im windows sizes and positions separately by letting the
Ka-Hing Cheung <khc@pidgin.im>
parents: 19045
diff changeset
2255 purple_prefs_remove(PIDGIN_PREFS_ROOT "/conversations/im/default_height");
269c42c13f9d remember chat/im windows sizes and positions separately by letting the
Ka-Hing Cheung <khc@pidgin.im>
parents: 19045
diff changeset
2256 purple_prefs_rename(PIDGIN_PREFS_ROOT "/conversations/x",
269c42c13f9d remember chat/im windows sizes and positions separately by letting the
Ka-Hing Cheung <khc@pidgin.im>
parents: 19045
diff changeset
2257 PIDGIN_PREFS_ROOT "/conversations/im/x");
269c42c13f9d remember chat/im windows sizes and positions separately by letting the
Ka-Hing Cheung <khc@pidgin.im>
parents: 19045
diff changeset
2258 purple_prefs_rename(PIDGIN_PREFS_ROOT "/conversations/y",
269c42c13f9d remember chat/im windows sizes and positions separately by letting the
Ka-Hing Cheung <khc@pidgin.im>
parents: 19045
diff changeset
2259 PIDGIN_PREFS_ROOT "/conversations/im/y");
8905
cedfa637389f [gaim-migrate @ 9674]
Mark Doliner <markdoliner@pidgin.im>
parents: 8900
diff changeset
2260 }

mercurial