annotate pidgin/plugins/pidginrc.c @ 32658:90264301600f

Apply conversation theme when opening the GTK conversation. All the parsing stuff was moved out of the theme code and into the conversation code. Someone (not me!) needs to check the code I commented out and see if we really need that stuff (and then port it to WebKit/styling). We also need to determine where to place Template.html and the rest of our (not-yet-written) default theme.
author Elliott Sales de Andrade <qulogic@pidgin.im>
date Wed, 21 Sep 2011 06:45:26 +0000
parents 4e7a9940627e
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
1 /**
27424
6ce4c8f80d04 Correct the doxygen documentation in the pidginrc plugin and swap out a
Etan Reisner <pidgin@unreliablesource.net>
parents: 27156
diff changeset
2 * @file pidginrc.c Pidgin GTK+ resource control plugin.
6ce4c8f80d04 Correct the doxygen documentation in the pidginrc plugin and swap out a
Etan Reisner <pidgin@unreliablesource.net>
parents: 27156
diff changeset
3 * @ingroup pidgin
6ce4c8f80d04 Correct the doxygen documentation in the pidginrc plugin and swap out a
Etan Reisner <pidgin@unreliablesource.net>
parents: 27156
diff changeset
4 */
6ce4c8f80d04 Correct the doxygen documentation in the pidginrc plugin and swap out a
Etan Reisner <pidgin@unreliablesource.net>
parents: 27156
diff changeset
5
6ce4c8f80d04 Correct the doxygen documentation in the pidginrc plugin and swap out a
Etan Reisner <pidgin@unreliablesource.net>
parents: 27156
diff changeset
6 /* pidgin
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
7 *
27424
6ce4c8f80d04 Correct the doxygen documentation in the pidginrc plugin and swap out a
Etan Reisner <pidgin@unreliablesource.net>
parents: 27156
diff changeset
8 * Pidgin is the legal property of its developers, whose names are too numerous
6ce4c8f80d04 Correct the doxygen documentation in the pidginrc plugin and swap out a
Etan Reisner <pidgin@unreliablesource.net>
parents: 27156
diff changeset
9 * to list here. Please refer to the COPYRIGHT file distributed with this
6ce4c8f80d04 Correct the doxygen documentation in the pidginrc plugin and swap out a
Etan Reisner <pidgin@unreliablesource.net>
parents: 27156
diff changeset
10 * source distribution.
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
11 *
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
12 * This program is free software; you can redistribute it and/or modify
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
13 * it under the terms of the GNU General Public License as published by
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
14 * the Free Software Foundation; either version 2 of the License, or
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
15 * (at your option) any later version.
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
16 *
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
17 * This program is distributed in the hope that it will be useful,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
20 * GNU General Public License for more details.
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
21 *
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
22 * You should have received a copy of the GNU General Public License
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
23 * along with this program; if not, write to the Free Software
19680
44b4e8bd759b The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 18178
diff changeset
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
25 */
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
26
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
27 #include "internal.h"
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
28 #include "gtkplugin.h"
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
29 #include "gtkprefs.h"
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
30 #include "gtkutils.h"
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
31 #include "util.h"
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
32 #include "version.h"
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
33
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
34 static guint pref_callback;
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
35
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
36 static const gchar *color_prefs[] = {
21840
9a39d47a9cd3 Another patch from DHowett. This one adds conversation nick colors to gtkrc
Sean Egan <seanegan@gmail.com>
parents: 21657
diff changeset
37 "/plugins/gtk/purplerc/color/GtkIMHtml::hyperlink-color",
24061
0d0f99cd425e Show visited links in a different color. This also plugs a memory leak
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22007
diff changeset
38 "/plugins/gtk/purplerc/color/GtkIMHtml::hyperlink-visited-color",
21840
9a39d47a9cd3 Another patch from DHowett. This one adds conversation nick colors to gtkrc
Sean Egan <seanegan@gmail.com>
parents: 21657
diff changeset
39 "/plugins/gtk/purplerc/color/GtkIMHtml::send-name-color",
9a39d47a9cd3 Another patch from DHowett. This one adds conversation nick colors to gtkrc
Sean Egan <seanegan@gmail.com>
parents: 21657
diff changeset
40 "/plugins/gtk/purplerc/color/GtkIMHtml::receive-name-color",
9a39d47a9cd3 Another patch from DHowett. This one adds conversation nick colors to gtkrc
Sean Egan <seanegan@gmail.com>
parents: 21657
diff changeset
41 "/plugins/gtk/purplerc/color/GtkIMHtml::highlight-name-color",
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
42 "/plugins/gtk/purplerc/color/GtkIMHtml::action-name-color",
27156
7b7d1fc8dbbf Fix a typo caught by Geoffrey Antos.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 27132
diff changeset
43 "/plugins/gtk/purplerc/color/GtkIMHtml::typing-notification-color"
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
44 };
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
45 static const gchar *color_prefs_set[] = {
21840
9a39d47a9cd3 Another patch from DHowett. This one adds conversation nick colors to gtkrc
Sean Egan <seanegan@gmail.com>
parents: 21657
diff changeset
46 "/plugins/gtk/purplerc/set/color/GtkIMHtml::hyperlink-color",
24061
0d0f99cd425e Show visited links in a different color. This also plugs a memory leak
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22007
diff changeset
47 "/plugins/gtk/purplerc/set/color/GtkIMHtml::hyperlink-visited-color",
21840
9a39d47a9cd3 Another patch from DHowett. This one adds conversation nick colors to gtkrc
Sean Egan <seanegan@gmail.com>
parents: 21657
diff changeset
48 "/plugins/gtk/purplerc/set/color/GtkIMHtml::send-name-color",
9a39d47a9cd3 Another patch from DHowett. This one adds conversation nick colors to gtkrc
Sean Egan <seanegan@gmail.com>
parents: 21657
diff changeset
49 "/plugins/gtk/purplerc/set/color/GtkIMHtml::receive-name-color",
9a39d47a9cd3 Another patch from DHowett. This one adds conversation nick colors to gtkrc
Sean Egan <seanegan@gmail.com>
parents: 21657
diff changeset
50 "/plugins/gtk/purplerc/set/color/GtkIMHtml::highlight-name-color",
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
51 "/plugins/gtk/purplerc/set/color/GtkIMHtml::action-name-color",
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
52 "/plugins/gtk/purplerc/set/color/GtkIMHtml::typing-notification-color"
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
53 };
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
54 static const gchar *color_names[] = {
21840
9a39d47a9cd3 Another patch from DHowett. This one adds conversation nick colors to gtkrc
Sean Egan <seanegan@gmail.com>
parents: 21657
diff changeset
55 N_("Hyperlink Color"),
24061
0d0f99cd425e Show visited links in a different color. This also plugs a memory leak
Sadrul Habib Chowdhury <imadil@gmail.com>
parents: 22007
diff changeset
56 N_("Visited Hyperlink Color"),
21840
9a39d47a9cd3 Another patch from DHowett. This one adds conversation nick colors to gtkrc
Sean Egan <seanegan@gmail.com>
parents: 21657
diff changeset
57 N_("Sent Message Name Color"),
9a39d47a9cd3 Another patch from DHowett. This one adds conversation nick colors to gtkrc
Sean Egan <seanegan@gmail.com>
parents: 21657
diff changeset
58 N_("Received Message Name Color"),
9a39d47a9cd3 Another patch from DHowett. This one adds conversation nick colors to gtkrc
Sean Egan <seanegan@gmail.com>
parents: 21657
diff changeset
59 N_("Highlighted Message Name Color"),
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
60 N_("Action Message Name Color"),
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
61 N_("Typing Notification Color")
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
62 };
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
63 static GtkWidget *color_widgets[G_N_ELEMENTS(color_prefs)];
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
64
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
65 static const gchar *widget_size_prefs[] = {
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
66 "/plugins/gtk/purplerc/size/GtkTreeView::horizontal_separator"
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
67 };
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
68 static const gchar *widget_size_prefs_set[] = {
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
69 "/plugins/gtk/purplerc/set/size/GtkTreeView::horizontal_separator"
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
70 };
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
71 static const gchar *widget_size_names[] = {
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
72 N_("GtkTreeView Horizontal Separation")
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
73 };
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
74 static GtkWidget *widget_size_widgets[G_N_ELEMENTS(widget_size_prefs)];
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
75
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
76 static const gchar *font_prefs[] = {
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
77 "/plugins/gtk/purplerc/font/*pidgin_conv_entry",
28948
8c2ba3cc6921 Add a font pref to the pidginrc plugin to control the conversation history
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 27424
diff changeset
78 "/plugins/gtk/purplerc/font/*pidgin_conv_imhtml",
17061
4ce5f452e0df Fix incorrect widget names in pidginrc plugin. Also, fix spacing - I'm not sure if this actually matters. Fixes #874.
Daniel Atallah <daniel.atallah@gmail.com>
parents: 16678
diff changeset
79 "/plugins/gtk/purplerc/font/*pidgin_request_imhtml",
4ce5f452e0df Fix incorrect widget names in pidginrc plugin. Also, fix spacing - I'm not sure if this actually matters. Fixes #874.
Daniel Atallah <daniel.atallah@gmail.com>
parents: 16678
diff changeset
80 "/plugins/gtk/purplerc/font/*pidgin_notify_imhtml",
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
81 };
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
82 static const gchar *font_prefs_set[] = {
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
83 "/plugins/gtk/purplerc/set/font/*pidgin_conv_entry",
28948
8c2ba3cc6921 Add a font pref to the pidginrc plugin to control the conversation history
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 27424
diff changeset
84 "/plugins/gtk/purplerc/set/font/*pidgin_conv_imhtml",
17061
4ce5f452e0df Fix incorrect widget names in pidginrc plugin. Also, fix spacing - I'm not sure if this actually matters. Fixes #874.
Daniel Atallah <daniel.atallah@gmail.com>
parents: 16678
diff changeset
85 "/plugins/gtk/purplerc/set/font/*pidgin_request_imhtml",
4ce5f452e0df Fix incorrect widget names in pidginrc plugin. Also, fix spacing - I'm not sure if this actually matters. Fixes #874.
Daniel Atallah <daniel.atallah@gmail.com>
parents: 16678
diff changeset
86 "/plugins/gtk/purplerc/set/font/*pidgin_notify_imhtml",
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
87 };
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
88 static const gchar *font_names[] = {
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
89 N_("Conversation Entry"),
28948
8c2ba3cc6921 Add a font pref to the pidginrc plugin to control the conversation history
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 27424
diff changeset
90 N_("Conversation History"),
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
91 N_("Request Dialog"),
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
92 N_("Notify Dialog")
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
93 };
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
94 static GtkWidget *font_widgets[G_N_ELEMENTS(font_prefs)];
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
95
17153
8504e859c782 Remove the "GtkTreeView Indent Expanders" boolean preference, because the
Etan Reisner <pidgin@unreliablesource.net>
parents: 17061
diff changeset
96 /*
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
97 static const gchar *widget_bool_prefs[] = {
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
98 };
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
99 static const gchar *widget_bool_prefs_set[] = {
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
100 };
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
101 static const gchar *widget_bool_names[] = {
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
102 };
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
103 static GtkWidget *widget_bool_widgets[G_N_ELEMENTS(widget_bool_prefs)];
17153
8504e859c782 Remove the "GtkTreeView Indent Expanders" boolean preference, because the
Etan Reisner <pidgin@unreliablesource.net>
parents: 17061
diff changeset
104 */
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
105
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
106 static GString *
22007
c38d72677c8a Probe for -Wstrict-prototypes to get some more warnings. I then cleaned up
Richard Laager <rlaager@wiktel.com>
parents: 21840
diff changeset
107 make_gtkrc_string(void)
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
108 {
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
109 gint i;
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
110 gchar *prefbase = NULL;
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
111 GString *style_string = g_string_new("");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
112
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
113 if (purple_prefs_get_bool("/plugins/gtk/purplerc/set/gtk-font-name")) {
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
114 const gchar *pref = purple_prefs_get_string("/plugins/gtk/purplerc/gtk-font-name");
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
115
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
116 if (pref != NULL && strcmp(pref, "")) {
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
117 g_string_append_printf(style_string,
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
118 "gtk-font-name = \"%s\"\n",
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
119 pref);
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
120 }
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
121 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
122
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
123 if (purple_prefs_get_bool("/plugins/gtk/purplerc/set/gtk-key-theme-name")) {
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
124 const gchar *pref = purple_prefs_get_string("/plugins/gtk/purplerc/gtk-key-theme-name");
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
125
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
126 if (pref != NULL && strcmp(pref, "")) {
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
127 g_string_append_printf(style_string,
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
128 "gtk-key-theme-name = \"%s\"\n",
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
129 pref);
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
130 }
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
131 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
132
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
133 g_string_append(style_string, "style \"purplerc_style\"\n{");
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
134
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
135 if(purple_prefs_get_bool("/plugins/gtk/purplerc/set/disable-typing-notification")) {
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
136 g_string_append(style_string, "\tGtkIMHtml::typing-notification-enable = 0\n");
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
137 }
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
138
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
139 for (i = 0; i < G_N_ELEMENTS(color_prefs); i++) {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
140 if (purple_prefs_get_bool(color_prefs_set[i])) {
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
141 const gchar *pref;
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
142
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
143 pref = purple_prefs_get_string(color_prefs[i]);
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
144 if (pref != NULL && strcmp(pref, "")) {
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
145 prefbase = g_path_get_basename(color_prefs[i]);
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
146 g_string_append_printf(style_string,
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
147 "\n\t%s = \"%s\"",
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
148 prefbase, pref);
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
149 g_free(prefbase);
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
150 }
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
151 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
152 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
153
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
154 for (i = 0; i < G_N_ELEMENTS(widget_size_prefs); i++) {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
155 if (purple_prefs_get_bool(widget_size_prefs_set[i])) {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
156 prefbase = g_path_get_basename(widget_size_prefs[i]);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
157 g_string_append_printf(style_string,
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
158 "\n\t%s = %d", prefbase,
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
159 purple_prefs_get_int(widget_size_prefs[i]));
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
160 g_free(prefbase);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
161 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
162 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
163
17153
8504e859c782 Remove the "GtkTreeView Indent Expanders" boolean preference, because the
Etan Reisner <pidgin@unreliablesource.net>
parents: 17061
diff changeset
164 /*
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
165 for (i = 0; i < G_N_ELEMENTS(widget_bool_prefs); i++) {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
166 if (purple_prefs_get_bool(widget_bool_prefs_set[i])) {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
167 prefbase = g_path_get_basename(widget_bool_prefs[i]);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
168 g_string_append_printf(style_string,
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
169 "\t%s = %d\n", prefbase,
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
170 purple_prefs_get_bool(widget_bool_prefs[i]));
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
171 g_free(prefbase);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
172 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
173 }
17153
8504e859c782 Remove the "GtkTreeView Indent Expanders" boolean preference, because the
Etan Reisner <pidgin@unreliablesource.net>
parents: 17061
diff changeset
174 */
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
175
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
176 g_string_append(style_string, "\n}\nwidget_class \"*\" style \"purplerc_style\"\n");
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
177
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
178 for (i = 0; i < G_N_ELEMENTS(font_prefs); i++) {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
179 if (purple_prefs_get_bool(font_prefs_set[i])) {
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
180 const gchar *pref;
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
181
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
182 pref = purple_prefs_get_string(font_prefs[i]);
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
183 if (pref != NULL && strcmp(pref, "")) {
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
184 prefbase = g_path_get_basename(font_prefs[i]);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
185 g_string_append_printf(style_string,
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
186 "style \"%s_style\"\n{\n"
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
187 "\tfont_name = \"%s\"\n}"
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
188 "\nwidget \"%s\" "
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
189 "style \"%s_style\"\n",
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
190 prefbase, pref,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
191 prefbase, prefbase);
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
192 g_free(prefbase);
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
193 }
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
194 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
195 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
196
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
197 return style_string;
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
198 }
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
199
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
200 static void
22007
c38d72677c8a Probe for -Wstrict-prototypes to get some more warnings. I then cleaned up
Richard Laager <rlaager@wiktel.com>
parents: 21840
diff changeset
201 purplerc_make_changes(void)
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
202 {
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
203 GString *str = make_gtkrc_string();
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
204 GtkSettings *setting = NULL;
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
205
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
206 gtk_rc_parse_string(str->str);
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
207 g_string_free(str, TRUE);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
208
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
209 setting = gtk_settings_get_default();
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
210 gtk_rc_reset_styles(setting);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
211 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
212
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
213 static void
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
214 purplerc_write(GtkWidget *widget, gpointer data)
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
215 {
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
216 GString *str = make_gtkrc_string();
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
217 str = g_string_prepend(str, "# This file automatically written by the Pidgin GTK+ Theme Control plugin.\n# Any changes to this file will be overwritten by the plugin when told to\n# write the settings again.\n# The FAQ (http://developer.pidgin.im/wiki/FAQ) contains some further examples\n# of possible pidgin gtkrc settings.\n");
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
218 purple_util_write_data_to_file("gtkrc-2.0", str->str, -1);
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
219 g_string_free(str, TRUE);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
220 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
221
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
222 static void
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
223 purplerc_reread(GtkWidget *widget, gpointer data)
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
224 {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
225 gtk_rc_reparse_all();
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
226 /* I don't know if this is necessary but if not it shouldn't hurt. */
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
227 purplerc_make_changes();
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
228 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
229
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
230 static void
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
231 purplerc_pref_changed_cb(const char *name, PurplePrefType type,
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
232 gconstpointer value, gpointer data)
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
233 {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
234 purplerc_make_changes();
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
235 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
236
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
237 static void
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
238 purplerc_color_response(GtkDialog *color_dialog, gint response, gpointer data)
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
239 {
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
240 gint subscript = GPOINTER_TO_INT(data);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
241
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
242 if (response == GTK_RESPONSE_OK) {
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
243 GdkColor color;
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
244 gchar colorstr[8];
30137
4e7a9940627e Prepare Pidgin plugins for GTK+3.0. They're almost GSeal-compliant, except
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 29712
diff changeset
245 #if GTK_CHECK_VERSION(2,14,0)
4e7a9940627e Prepare Pidgin plugins for GTK+3.0. They're almost GSeal-compliant, except
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 29712
diff changeset
246 GtkWidget *colorsel =
4e7a9940627e Prepare Pidgin plugins for GTK+3.0. They're almost GSeal-compliant, except
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 29712
diff changeset
247 gtk_color_selection_dialog_get_color_selection(GTK_COLOR_SELECTION_DIALOG(color_dialog));
4e7a9940627e Prepare Pidgin plugins for GTK+3.0. They're almost GSeal-compliant, except
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 29712
diff changeset
248 #else
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
249 GtkWidget *colorsel = GTK_COLOR_SELECTION_DIALOG(color_dialog)->colorsel;
30137
4e7a9940627e Prepare Pidgin plugins for GTK+3.0. They're almost GSeal-compliant, except
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 29712
diff changeset
250 #endif
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
251
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
252 gtk_color_selection_get_current_color(GTK_COLOR_SELECTION(colorsel), &color);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
253
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
254 g_snprintf(colorstr, sizeof(colorstr), "#%02X%02X%02X",
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
255 color.red/256, color.green/256, color.blue/256);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
256
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
257 purple_prefs_set_string(color_prefs[subscript], colorstr);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
258 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
259 gtk_widget_destroy(GTK_WIDGET(color_dialog));
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
260 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
261
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
262 static void
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
263 purplerc_set_color(GtkWidget *widget, gpointer data)
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
264 {
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
265 GdkColor color;
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
266 gchar title[128];
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
267 const gchar *pref = NULL;
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
268 GtkWidget *color_dialog = NULL;
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
269 gint subscript = GPOINTER_TO_INT(data);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
270
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
271 g_snprintf(title, sizeof(title), _("Select Color for %s"),
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
272 _(color_names[GPOINTER_TO_INT(data)]));
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
273 color_dialog = gtk_color_selection_dialog_new(_("Select Color"));
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
274 g_signal_connect(G_OBJECT(color_dialog), "response",
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
275 G_CALLBACK(purplerc_color_response), data);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
276
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
277 pref = purple_prefs_get_string(color_prefs[subscript]);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
278
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
279 if (pref != NULL && strcmp(pref, "")) {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
280 if (gdk_color_parse(pref, &color)) {
30137
4e7a9940627e Prepare Pidgin plugins for GTK+3.0. They're almost GSeal-compliant, except
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 29712
diff changeset
281 #if GTK_CHECK_VERSION(2,14,0)
4e7a9940627e Prepare Pidgin plugins for GTK+3.0. They're almost GSeal-compliant, except
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 29712
diff changeset
282 gtk_color_selection_set_current_color(GTK_COLOR_SELECTION(
4e7a9940627e Prepare Pidgin plugins for GTK+3.0. They're almost GSeal-compliant, except
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 29712
diff changeset
283 gtk_color_selection_dialog_get_color_selection(GTK_COLOR_SELECTION_DIALOG(color_dialog))),
4e7a9940627e Prepare Pidgin plugins for GTK+3.0. They're almost GSeal-compliant, except
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 29712
diff changeset
284 &color);
4e7a9940627e Prepare Pidgin plugins for GTK+3.0. They're almost GSeal-compliant, except
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 29712
diff changeset
285 #else
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
286 gtk_color_selection_set_current_color(GTK_COLOR_SELECTION(GTK_COLOR_SELECTION_DIALOG(color_dialog)->colorsel), &color);
30137
4e7a9940627e Prepare Pidgin plugins for GTK+3.0. They're almost GSeal-compliant, except
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 29712
diff changeset
287 #endif
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
288 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
289 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
290
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
291 gtk_window_present(GTK_WINDOW(color_dialog));
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
292 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
293
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
294 static void
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
295 purplerc_font_response(GtkDialog *font_dialog, gint response, gpointer data)
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
296 {
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
297 const gchar *prefpath;
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
298 gint subscript = GPOINTER_TO_INT(data);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
299
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
300 if (response == GTK_RESPONSE_OK) {
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
301 gchar *fontname = NULL;
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
302
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
303 if (subscript == -1) {
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
304 prefpath = "/plugins/gtk/purplerc/gtk-font-name";
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
305 } else {
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
306 prefpath = font_prefs[subscript];
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
307 }
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
308
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
309 fontname = gtk_font_selection_dialog_get_font_name(GTK_FONT_SELECTION_DIALOG(font_dialog));
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
310
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
311 purple_prefs_set_string(prefpath, fontname);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
312 g_free(fontname);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
313 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
314 gtk_widget_destroy(GTK_WIDGET(font_dialog));
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
315 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
316
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
317 static void
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
318 purplerc_set_font(GtkWidget *widget, gpointer data)
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
319 {
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
320 gchar title[128];
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
321 GtkWidget *font_dialog = NULL;
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
322 gint subscript = GPOINTER_TO_INT(data);
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
323 const gchar *pref = NULL, *prefpath = NULL;
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
324
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
325 if (subscript == -1) {
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
326 g_snprintf(title, sizeof(title), _("Select Interface Font"));
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
327 prefpath = "/plugins/gtk/purplerc/gtk-font-name";
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
328 } else {
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
329 g_snprintf(title, sizeof(title), _("Select Font for %s"),
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
330 _(font_names[subscript]));
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
331 prefpath = font_prefs[subscript];
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
332 }
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
333
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
334 font_dialog = gtk_font_selection_dialog_new(title);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
335 g_signal_connect(G_OBJECT(font_dialog), "response",
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
336 G_CALLBACK(purplerc_font_response), data);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
337
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
338 pref = purple_prefs_get_string(prefpath);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
339
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
340 if (pref != NULL && strcmp(pref, "")) {
30137
4e7a9940627e Prepare Pidgin plugins for GTK+3.0. They're almost GSeal-compliant, except
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 29712
diff changeset
341 gtk_font_selection_dialog_set_font_name(GTK_FONT_SELECTION_DIALOG(font_dialog), pref);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
342 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
343
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
344 gtk_window_present(GTK_WINDOW(font_dialog));
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
345 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
346
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
347 static gboolean
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
348 purplerc_plugin_load(PurplePlugin *plugin)
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
349 {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
350 purplerc_make_changes();
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
351
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
352 pref_callback = purple_prefs_connect_callback(plugin,
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
353 "/plugins/gtk/purplerc",
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
354 purplerc_pref_changed_cb,
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
355 NULL);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
356
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
357 return TRUE;
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
358 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
359
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
360 static gboolean
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
361 purplerc_plugin_unload(PurplePlugin *plugin)
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
362 {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
363 purple_prefs_disconnect_callback(pref_callback);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
364
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
365 return TRUE;
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
366 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
367
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
368 static GtkWidget *
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
369 purplerc_make_interface_vbox(void)
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
370 {
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
371 GtkWidget *vbox = NULL, *hbox = NULL, *check = NULL;
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
372 GtkSizeGroup *labelsg = NULL;
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
373 gint i;
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
374
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
375 vbox = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
376 labelsg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
377
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
378 gtk_container_set_border_width(GTK_CONTAINER(vbox), PIDGIN_HIG_BORDER);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
379
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
380 for (i = 0; i < G_N_ELEMENTS(color_prefs); i++) {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
381 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
382 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
383
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
384 check = pidgin_prefs_checkbox(_(color_names[i]),
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
385 color_prefs_set[i], hbox);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
386 gtk_size_group_add_widget(labelsg, check);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
387
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
388 color_widgets[i] = pidgin_pixbuf_button_from_stock("",
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
389 GTK_STOCK_SELECT_COLOR, PIDGIN_BUTTON_HORIZONTAL);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
390 gtk_box_pack_start(GTK_BOX(hbox), color_widgets[i], FALSE,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
391 FALSE, 0);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
392 gtk_widget_set_sensitive(color_widgets[i],
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
393 purple_prefs_get_bool(color_prefs_set[i]));
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
394 g_signal_connect(G_OBJECT(check), "toggled",
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
395 G_CALLBACK(pidgin_toggle_sensitive),
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
396 color_widgets[i]);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
397 g_signal_connect(G_OBJECT(color_widgets[i]), "clicked",
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
398 G_CALLBACK(purplerc_set_color),
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
399 GINT_TO_POINTER(i));
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
400 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
401
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
402 g_object_unref(labelsg);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
403
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
404 return vbox;
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
405 }
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
406
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
407 static GtkWidget *
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
408 purplerc_make_fonts_vbox(void)
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
409 {
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
410 GtkWidget *vbox = NULL, *hbox = NULL, *check = NULL, *widget = NULL;
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
411 GtkSizeGroup *labelsg = NULL;
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
412 int i;
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
413
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
414 vbox = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
415 labelsg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
416
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
417 gtk_container_set_border_width(GTK_CONTAINER(vbox), PIDGIN_HIG_BORDER);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
418
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
419 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
420 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
421
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
422 check = pidgin_prefs_checkbox(_("GTK+ Interface Font"),
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
423 "/plugins/gtk/purplerc/set/gtk-font-name",
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
424 hbox);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
425 gtk_size_group_add_widget(labelsg, check);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
426
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
427 widget = pidgin_pixbuf_button_from_stock("", GTK_STOCK_SELECT_FONT,
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
428 PIDGIN_BUTTON_HORIZONTAL);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
429 gtk_box_pack_start(GTK_BOX(hbox), widget, FALSE, FALSE, 0);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
430 gtk_widget_set_sensitive(widget,
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
431 purple_prefs_get_bool("/plugins/gtk/purplerc/set/gtk-font-name"));
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
432 g_signal_connect(G_OBJECT(check), "toggled",
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
433 G_CALLBACK(pidgin_toggle_sensitive), widget);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
434 g_signal_connect(G_OBJECT(widget), "clicked",
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
435 G_CALLBACK(purplerc_set_font), GINT_TO_POINTER(-1));
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
436
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
437 for (i = 0; i < G_N_ELEMENTS(font_prefs); i++) {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
438 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
439 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
440
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
441 check = pidgin_prefs_checkbox(_(font_names[i]),
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
442 font_prefs_set[i], hbox);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
443 gtk_size_group_add_widget(labelsg, check);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
444
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
445 font_widgets[i] = pidgin_pixbuf_button_from_stock("",
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
446 GTK_STOCK_SELECT_FONT, PIDGIN_BUTTON_HORIZONTAL);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
447 gtk_box_pack_start(GTK_BOX(hbox), font_widgets[i], FALSE,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
448 FALSE, 0);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
449 gtk_widget_set_sensitive(font_widgets[i],
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
450 purple_prefs_get_bool(font_prefs_set[i]));
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
451 g_signal_connect(G_OBJECT(check), "toggled",
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
452 G_CALLBACK(pidgin_toggle_sensitive),
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
453 font_widgets[i]);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
454 g_signal_connect(G_OBJECT(font_widgets[i]), "clicked",
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
455 G_CALLBACK(purplerc_set_font),
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
456 GINT_TO_POINTER(i));
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
457 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
458
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
459 g_object_unref(labelsg);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
460
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
461 return vbox;
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
462 }
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
463
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
464 static GtkWidget *
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
465 purplerc_make_misc_vbox(void)
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
466 {
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
467 /* Note: Intentionally not using the size group argument to the
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
468 * pidgin_prefs_labeled_* functions they only add the text label to
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
469 * the size group not the whole thing, which isn't what I want. */
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
470 GtkWidget *vbox = NULL, *hbox = NULL, *check = NULL, *widget = NULL;
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
471 GtkSizeGroup *labelsg = NULL;
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
472 int i;
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
473
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
474 vbox = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
475 labelsg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
476
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
477 gtk_container_set_border_width(GTK_CONTAINER(vbox), PIDGIN_HIG_BORDER);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
478
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
479 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
480 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
481
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
482 check = pidgin_prefs_checkbox(_("GTK+ Text Shortcut Theme"),
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
483 "/plugins/gtk/purplerc/set/gtk-key-theme-name",
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
484 hbox);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
485 gtk_size_group_add_widget(labelsg, check);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
486
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
487 widget = pidgin_prefs_labeled_entry(hbox, "",
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
488 "/plugins/gtk/purplerc/gtk-key-theme-name",
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
489 NULL);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
490 gtk_widget_set_sensitive(widget,
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
491 purple_prefs_get_bool("/plugins/gtk/purplerc/set/gtk-key-theme-name"));
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
492 g_signal_connect(G_OBJECT(check), "toggled",
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
493 G_CALLBACK(pidgin_toggle_sensitive), widget);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
494
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
495 for (i = 0; i < G_N_ELEMENTS(widget_size_prefs); i++) {
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
496 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
497 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
498
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
499 check = pidgin_prefs_checkbox(_(widget_size_names[i]),
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
500 widget_size_prefs_set[i], hbox);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
501 gtk_size_group_add_widget(labelsg, check);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
502
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
503 widget_size_widgets[i] = pidgin_prefs_labeled_spin_button(hbox, "", widget_size_prefs[i], 0, 50, NULL);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
504 gtk_widget_set_sensitive(widget_size_widgets[i],
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
505 purple_prefs_get_bool(widget_size_prefs_set[i]));
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
506 g_signal_connect(G_OBJECT(check), "toggled",
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
507 G_CALLBACK(pidgin_toggle_sensitive),
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
508 widget_size_widgets[i]);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
509 }
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
510
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
511 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
512 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
513
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
514 check = pidgin_prefs_checkbox(_("Disable Typing Notification Text"),
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
515 "/plugins/gtk/purplerc/set/disable-typing-notification", hbox);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
516
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
517 /* Widget boolean stuff */
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
518 /*
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
519 for (i = 0; i < G_N_ELEMENTS(widget_bool_prefs); i++) {
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
520 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
521 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
522
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
523 check = pidgin_prefs_checkbox(_(widget_bool_names[i]),
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
524 widget_bool_prefs_set[i], hbox);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
525 gtk_size_group_add_widget(labelsg, check);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
526
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
527 widget_bool_widgets[i] = pidgin_prefs_checkbox("", widget_bool_prefs[i], hbox);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
528
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
529 gtk_widget_set_sensitive(widget_bool_widgets[i],
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
530 purple_prefs_get_bool(widget_bool_prefs_set[i]));
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
531 g_signal_connect(G_OBJECT(check), "toggled",
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
532 G_CALLBACK(pidgin_toggle_sensitive),
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
533 widget_bool_widgets[i]);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
534 }
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
535 */
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
536
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
537 g_object_unref(labelsg);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
538
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
539 return vbox;
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
540 }
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
541
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
542 static GtkWidget *
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
543 purplerc_get_config_frame(PurplePlugin *plugin)
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
544 {
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
545 gchar *tmp;
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
546 GtkWidget *check = NULL, *label = NULL;
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
547 GtkWidget *ret = NULL, *hbox = NULL, *frame = NULL, *note = NULL;
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
548 #ifndef _WIN32
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
549 const gchar *homepath = "$HOME";
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
550 #else
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
551 const gchar *homepath = "\%APPDATA\%";
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
552 #endif
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
553
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
554 ret = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
555 note = gtk_notebook_new();
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
556 label = gtk_label_new(NULL);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
557 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
558
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
559 gtk_container_set_border_width(GTK_CONTAINER(ret), PIDGIN_HIG_BORDER);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
560
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
561 tmp = g_strdup_printf("<span weight=\"bold\">%s</span>", _("GTK+ Theme Control Settings"));
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
562 gtk_label_set_markup(GTK_LABEL(label), tmp);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
563 g_free(tmp);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
564
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
565 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
566 gtk_box_pack_start(GTK_BOX(ret), hbox, FALSE, FALSE, 0);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
567 gtk_box_pack_start(GTK_BOX(ret), note, FALSE, FALSE, 0);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
568
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
569 label = gtk_label_new(_("Colors"));
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
570 gtk_notebook_insert_page(GTK_NOTEBOOK(note), purplerc_make_interface_vbox(), label, -1);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
571
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
572 label = gtk_label_new(_("Fonts"));
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
573 gtk_notebook_insert_page(GTK_NOTEBOOK(note), purplerc_make_fonts_vbox(), label, -1);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
574
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
575 label = gtk_label_new(_("Miscellaneous"));
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
576 gtk_notebook_insert_page(GTK_NOTEBOOK(note), purplerc_make_misc_vbox(), label, -1);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
577
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
578 gtk_box_pack_start(GTK_BOX(ret), gtk_hseparator_new(), TRUE, TRUE, 0);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
579
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
580 frame = pidgin_make_frame(ret, _("Gtkrc File Tools"));
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
581
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
582 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
583 gtk_box_pack_start(GTK_BOX(frame), hbox, FALSE, FALSE, 0);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
584
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
585 tmp = g_strdup_printf(_("Write settings to %s%sgtkrc-2.0"),
21657
49e6746fb5a7 Make the GTK+ Theme Control plugin's save button list the correct location (at least in the default case). Fixes #4042
Daniel Atallah <daniel.atallah@gmail.com>
parents: 21056
diff changeset
586 homepath, G_DIR_SEPARATOR_S ".purple" G_DIR_SEPARATOR_S);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
587 check = gtk_button_new_with_label(tmp);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
588 g_free(tmp);
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
589 gtk_box_pack_start(GTK_BOX(hbox), check, TRUE, TRUE, 0);
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
590 g_signal_connect(G_OBJECT(check), "clicked",
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
591 G_CALLBACK(purplerc_write), NULL);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
592
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
593 check = gtk_button_new_with_label(_("Re-read gtkrc files"));
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
594 gtk_box_pack_start(GTK_BOX(hbox), check, TRUE, TRUE, 0);
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
595 g_signal_connect(G_OBJECT(check), "clicked",
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
596 G_CALLBACK(purplerc_reread), NULL);
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
597
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
598 gtk_widget_show_all(ret);
21056
9e45c28b4b2b Fix some leaking GtkSizeGroups.
Daniel Atallah <daniel.atallah@gmail.com>
parents: 21030
diff changeset
599
9e45c28b4b2b Fix some leaking GtkSizeGroups.
Daniel Atallah <daniel.atallah@gmail.com>
parents: 21030
diff changeset
600
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
601 return ret;
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
602 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
603
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
604 static PidginPluginUiInfo purplerc_ui_info =
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
605 {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
606 purplerc_get_config_frame,
16678
3d41d0d7fb9b Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents: 16012
diff changeset
607 0, /* page_num (Reserved) */
3d41d0d7fb9b Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents: 16012
diff changeset
608
3d41d0d7fb9b Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents: 16012
diff changeset
609 /* padding */
3d41d0d7fb9b Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents: 16012
diff changeset
610 NULL,
3d41d0d7fb9b Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents: 16012
diff changeset
611 NULL,
3d41d0d7fb9b Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents: 16012
diff changeset
612 NULL,
3d41d0d7fb9b Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents: 16012
diff changeset
613 NULL
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
614 };
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
615
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
616 static PurplePluginInfo purplerc_info =
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
617 {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
618 PURPLE_PLUGIN_MAGIC,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
619 PURPLE_MAJOR_VERSION,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
620 PURPLE_MINOR_VERSION,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
621 PURPLE_PLUGIN_STANDARD,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
622 PIDGIN_PLUGIN_TYPE,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
623 0,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
624 NULL,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
625 PURPLE_PRIORITY_DEFAULT,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
626 "purplerc",
16012
765cfc73182f more help for translators (I removed a few PIDGIN_NAME references
Nathan Walp <nwalp@pidgin.im>
parents: 15905
diff changeset
627 N_("Pidgin GTK+ Theme Control"),
21030
3cc856ca2338 Add a --with-extraversion option to ./configure so packagers can fine tune
Stu Tomlinson <stu@nosnilmot.com>
parents: 20047
diff changeset
628 DISPLAY_VERSION,
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
629 N_("Provides access to commonly used gtkrc settings."),
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
630 N_("Provides access to commonly used gtkrc settings."),
27424
6ce4c8f80d04 Correct the doxygen documentation in the pidginrc plugin and swap out a
Etan Reisner <pidgin@unreliablesource.net>
parents: 27156
diff changeset
631 "Etan Reisner <deryni@pidgin.im>",
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
632 PURPLE_WEBSITE,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
633 purplerc_plugin_load,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
634 purplerc_plugin_unload,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
635 NULL,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
636 &purplerc_ui_info,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
637 NULL,
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
638 NULL,
16678
3d41d0d7fb9b Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents: 16012
diff changeset
639 NULL,
3d41d0d7fb9b Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents: 16012
diff changeset
640
3d41d0d7fb9b Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents: 16012
diff changeset
641 /* padding */
3d41d0d7fb9b Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents: 16012
diff changeset
642 NULL,
3d41d0d7fb9b Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents: 16012
diff changeset
643 NULL,
3d41d0d7fb9b Default plugins are done, for the release i'm not that concerned about plugins that do _NOT_ compile by default
Gary Kramlich <grim@reaperworld.com>
parents: 16012
diff changeset
644 NULL,
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
645 NULL
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
646 };
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
647
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
648 static void
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
649 purplerc_init(PurplePlugin *plugin)
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
650 {
18178
160ec876bbaf Some general cleanup of the pidginrc plugin that I did while working on my
Etan Reisner <pidgin@unreliablesource.net>
parents: 17185
diff changeset
651 gint i;
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
652
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
653 purple_prefs_add_none("/plugins");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
654 purple_prefs_add_none("/plugins/gtk");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
655 purple_prefs_add_none("/plugins/gtk/purplerc");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
656 purple_prefs_add_none("/plugins/gtk/purplerc/set");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
657
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
658 purple_prefs_add_string("/plugins/gtk/purplerc/gtk-font-name", "");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
659 purple_prefs_add_bool("/plugins/gtk/purplerc/set/gtk-font-name", FALSE);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
660
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
661 purple_prefs_add_string("/plugins/gtk/purplerc/gtk-key-theme-name", "");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
662 purple_prefs_add_bool("/plugins/gtk/purplerc/set/gtk-key-theme-name", FALSE);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
663
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
664 purple_prefs_add_none("/plugins/gtk/purplerc/color");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
665 purple_prefs_add_none("/plugins/gtk/purplerc/set/color");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
666 for (i = 0; i < G_N_ELEMENTS(color_prefs); i++) {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
667 purple_prefs_add_string(color_prefs[i], "");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
668 purple_prefs_add_bool(color_prefs_set[i], FALSE);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
669 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
670
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
671 purple_prefs_add_none("/plugins/gtk/purplerc/size");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
672 purple_prefs_add_none("/plugins/gtk/purplerc/set/size");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
673 for (i = 0; i < G_N_ELEMENTS(widget_size_prefs); i++) {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
674 purple_prefs_add_int(widget_size_prefs[i], 0);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
675 purple_prefs_add_bool(widget_size_prefs_set[i], FALSE);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
676 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
677
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
678 purple_prefs_add_none("/plugins/gtk/purplerc/font");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
679 purple_prefs_add_none("/plugins/gtk/purplerc/set/font");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
680 for (i = 0; i < G_N_ELEMENTS(font_prefs); i++) {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
681 purple_prefs_add_string(font_prefs[i], "");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
682 purple_prefs_add_bool(font_prefs_set[i], FALSE);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
683 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
684
17153
8504e859c782 Remove the "GtkTreeView Indent Expanders" boolean preference, because the
Etan Reisner <pidgin@unreliablesource.net>
parents: 17061
diff changeset
685 /*
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
686 purple_prefs_add_none("/plugins/gtk/purplerc/bool");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
687 purple_prefs_add_none("/plugins/gtk/purplerc/set/bool");
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
688 for (i = 0; i < G_N_ELEMENTS(widget_bool_prefs); i++) {
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
689 purple_prefs_add_bool(widget_bool_prefs[i], TRUE);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
690 purple_prefs_add_bool(widget_bool_prefs_set[i], FALSE);
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
691 }
17153
8504e859c782 Remove the "GtkTreeView Indent Expanders" boolean preference, because the
Etan Reisner <pidgin@unreliablesource.net>
parents: 17061
diff changeset
692 */
27132
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
693
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
694 purple_prefs_add_bool("/plugins/gtk/purplerc/disable-typing-notification", FALSE);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
695 purple_prefs_add_bool("/plugins/gtk/purplerc/set/disable-typing-notification", FALSE);
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
696
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
697 /* remove old cursor color prefs */
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
698 purple_prefs_remove("/plugins/gtk/purplerc/color/GtkWidget::cursor-color");
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
699 purple_prefs_remove("/plugins/gtk/purplerc/color/GtkWidget::secondary-cursor-color");
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
700 purple_prefs_remove("/plugins/gtk/purplerc/set/color/GtkWidget::cursor-color");
be6d08b9f410 This change is probably going to spark some debate about the pidginrc plugin.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 24061
diff changeset
701 purple_prefs_remove("/plugins/gtk/purplerc/set/color/GtkWidget::secondary-cursor-color");
15905
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
702 }
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
703
6f04fe174f40 Change some stuff from gaim to pidgin
Mark Doliner <mark@kingant.net>
parents:
diff changeset
704 PURPLE_INIT_PLUGIN(purplerc, purplerc_init, purplerc_info)