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