pidgin/plugins/convcolors.c

Mon, 08 Jun 2009 02:24:49 +0000

author
Elliott Sales de Andrade <qulogic@pidgin.im>
date
Mon, 08 Jun 2009 02:24:49 +0000
changeset 27314
402d25ce01da
parent 27234
82035475de62
child 30010
2b3e5bbd0492
permissions
-rw-r--r--

Use the JID for adding a chat/buddy because the name is for descriptive
purpose only, and using it will not fill in the Add Chat dialog correctly.
Because the JID is not visible, the user will not know what to actually put
there instead.

15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
1 /*
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
2 * Conversation Colors
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
3 * Copyright (C) 2006
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
4 *
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
5 * This program is free software; you can redistribute it and/or
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
6 * modify it under the terms of the GNU General Public License as
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
7 * published by the Free Software Foundation; either version 2 of the
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
8 * License, or (at your option) any later version.
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
9 *
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
10 * This program is distributed in the hope that it will be useful, but
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
13 * General Public License for more details.
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
14 *
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
15 * You should have received a copy of the GNU General Public License
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
16 * 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: 16749
diff changeset
17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 16749
diff changeset
18 * 02111-1301, USA.
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
19 */
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
20 #include "internal.h"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
21
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
22 #define PLUGIN_ID "gtk-plugin_pack-convcolors"
15418
bf287f742a5a [gaim-migrate @ 18149]
Luke Schierer <lschiere@pidgin.im>
parents: 15231
diff changeset
23 #define PLUGIN_NAME N_("Conversation Colors")
25633
feee0c7e503f Fix some more mis-identified plugins, like 3b3526a0...
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 22178
diff changeset
24 #define PLUGIN_STATIC_NAME ConversationColors
15418
bf287f742a5a [gaim-migrate @ 18149]
Luke Schierer <lschiere@pidgin.im>
parents: 15231
diff changeset
25 #define PLUGIN_SUMMARY N_("Customize colors in the conversation window")
bf287f742a5a [gaim-migrate @ 18149]
Luke Schierer <lschiere@pidgin.im>
parents: 15231
diff changeset
26 #define PLUGIN_DESCRIPTION N_("Customize colors in the conversation window")
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
27 #define PLUGIN_AUTHOR "Sadrul H Chowdhury <sadrul@users.sourceforge.net>"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
28
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
29 /* System headers */
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
30 #include <gdk/gdk.h>
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
31 #include <glib.h>
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
32 #include <gtk/gtk.h>
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
33
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
34 /* Purple headers */
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
35 #include <gtkplugin.h>
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
36 #include <version.h>
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
37
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
38 #include <conversation.h>
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
39 #include <gtkconv.h>
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
40 #include <gtkprefs.h>
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
41 #include <gtkutils.h>
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
42
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
43 #define PREF_PREFIX "/plugins/gtk/" PLUGIN_ID
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
44 #define PREF_IGNORE PREF_PREFIX "/ignore_incoming"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
45 #define PREF_CHATS PREF_PREFIX "/chats"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
46 #define PREF_IMS PREF_PREFIX "/ims"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
47
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
48 #define PREF_SEND PREF_PREFIX "/send"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
49 #define PREF_SEND_C PREF_SEND "/color"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
50 #define PREF_SEND_F PREF_SEND "/format"
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
51 #define PREF_SEND_E PREF_SEND "/enabled"
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
52
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
53 #define PREF_RECV PREF_PREFIX "/recv"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
54 #define PREF_RECV_C PREF_RECV "/color"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
55 #define PREF_RECV_F PREF_RECV "/format"
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
56 #define PREF_RECV_E PREF_RECV "/enabled"
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
57
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
58 #define PREF_SYSTEM PREF_PREFIX "/system"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
59 #define PREF_SYSTEM_C PREF_SYSTEM "/color"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
60 #define PREF_SYSTEM_F PREF_SYSTEM "/format"
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
61 #define PREF_SYSTEM_E PREF_SYSTEM "/enabled"
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
62
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
63 #define PREF_ERROR PREF_PREFIX "/error"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
64 #define PREF_ERROR_C PREF_ERROR "/color"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
65 #define PREF_ERROR_F PREF_ERROR "/format"
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
66 #define PREF_ERROR_E PREF_ERROR "/enabled"
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
67
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
68 #define PREF_NICK PREF_PREFIX "/nick"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
69 #define PREF_NICK_C PREF_NICK "/color"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
70 #define PREF_NICK_F PREF_NICK "/format"
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
71 #define PREF_NICK_E PREF_NICK "/enabled"
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
72
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
73 enum
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
74 {
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
75 FONT_BOLD = 1 << 0,
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
76 FONT_ITALIC = 1 << 1,
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
77 FONT_UNDERLINE = 1 << 2
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
78 };
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
79
22178
02521e1b838e Prpls seem to be sending '\n' (or '\r\n') for newlines, instead of '<br>' to the core. Fixes #4545.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21789
diff changeset
80 static struct
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
81 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
82 PurpleMessageFlags flag;
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
83 char *prefix;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
84 const char *text;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
85 } formats[] =
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
86 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
87 {PURPLE_MESSAGE_ERROR, PREF_ERROR, N_("Error Messages")},
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
88 {PURPLE_MESSAGE_NICK, PREF_NICK, N_("Highlighted Messages")},
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
89 {PURPLE_MESSAGE_SYSTEM, PREF_SYSTEM, N_("System Messages")},
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
90 {PURPLE_MESSAGE_SEND, PREF_SEND, N_("Sent Messages")},
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
91 {PURPLE_MESSAGE_RECV, PREF_RECV, N_("Received Messages")},
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
92 {0, NULL, NULL}
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
93 };
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
94
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
95 static gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
96 displaying_msg(PurpleAccount *account, const char *who, char **displaying,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
97 PurpleConversation *conv, PurpleMessageFlags flags)
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
98 {
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
99 int i;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
100 char tmp[128], *t;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
101 gboolean bold, italic, underline;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
102 int f;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
103 const char *color;
27234
82035475de62 Add a utlity function purple_markup_is_rtl
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 25633
diff changeset
104 gboolean rtl = FALSE;
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
105
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
106 for (i = 0; formats[i].prefix; i++)
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
107 if (flags & formats[i].flag)
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
108 break;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
109
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
110 if (!formats[i].prefix)
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
111 return FALSE;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
112
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
113 g_snprintf(tmp, sizeof(tmp), "%s/enabled", formats[i].prefix);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
114
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
115 if (!purple_prefs_get_bool(tmp) ||
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
116 (purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_IM &&
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
117 !purple_prefs_get_bool(PREF_IMS)) ||
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
118 (purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_CHAT &&
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
119 !purple_prefs_get_bool(PREF_CHATS)))
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
120 return FALSE;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
121
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
122 g_snprintf(tmp, sizeof(tmp), "%s/color", formats[i].prefix);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
123 color = purple_prefs_get_string(tmp);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
124
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
125 g_snprintf(tmp, sizeof(tmp), "%s/format", formats[i].prefix);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
126 f = purple_prefs_get_int(tmp);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
127 bold = (f & FONT_BOLD);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
128 italic = (f & FONT_ITALIC);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
129 underline = (f & FONT_UNDERLINE);
27234
82035475de62 Add a utlity function purple_markup_is_rtl
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 25633
diff changeset
130 rtl = purple_markup_is_rtl(*displaying);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
131
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
132 if (purple_prefs_get_bool(PREF_IGNORE))
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
133 {
22178
02521e1b838e Prpls seem to be sending '\n' (or '\r\n') for newlines, instead of '<br>' to the core. Fixes #4545.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21789
diff changeset
134 /* This seems to be necessary, especially for received messages. */
02521e1b838e Prpls seem to be sending '\n' (or '\r\n') for newlines, instead of '<br>' to the core. Fixes #4545.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21789
diff changeset
135 t = *displaying;
02521e1b838e Prpls seem to be sending '\n' (or '\r\n') for newlines, instead of '<br>' to the core. Fixes #4545.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21789
diff changeset
136 *displaying = purple_strreplace(t, "\n", "<br>");
02521e1b838e Prpls seem to be sending '\n' (or '\r\n') for newlines, instead of '<br>' to the core. Fixes #4545.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21789
diff changeset
137 g_free(t);
02521e1b838e Prpls seem to be sending '\n' (or '\r\n') for newlines, instead of '<br>' to the core. Fixes #4545.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 21789
diff changeset
138
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
139 t = *displaying;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
140 *displaying = purple_markup_strip_html(t);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
141 g_free(t);
15488
d3de0d1f569d Fix bug #1645435. Thanks to Dennis Ristuccia (more commonly known as EvilDennisR) for helping me find the bug.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15481
diff changeset
142
d3de0d1f569d Fix bug #1645435. Thanks to Dennis Ristuccia (more commonly known as EvilDennisR) for helping me find the bug.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15481
diff changeset
143 t = *displaying;
d3de0d1f569d Fix bug #1645435. Thanks to Dennis Ristuccia (more commonly known as EvilDennisR) for helping me find the bug.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15481
diff changeset
144 *displaying = g_markup_escape_text(t, -1);
d3de0d1f569d Fix bug #1645435. Thanks to Dennis Ristuccia (more commonly known as EvilDennisR) for helping me find the bug.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15481
diff changeset
145 g_free(t);
d3de0d1f569d Fix bug #1645435. Thanks to Dennis Ristuccia (more commonly known as EvilDennisR) for helping me find the bug.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15481
diff changeset
146
15481
6e9da7b5bd5c Fix convcolors to not unlinkify the links.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15435
diff changeset
147 /* Restore the links */
6e9da7b5bd5c Fix convcolors to not unlinkify the links.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15435
diff changeset
148 t = *displaying;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
149 *displaying = purple_markup_linkify(t);
15481
6e9da7b5bd5c Fix convcolors to not unlinkify the links.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15435
diff changeset
150 g_free(t);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
151 }
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
152
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
153 if (color && *color)
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
154 {
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
155 t = *displaying;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
156 *displaying = g_strdup_printf("<FONT COLOR=\"%s\">%s</FONT>", color, t);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
157 g_free(t);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
158 }
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
159
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
160 t = *displaying;
27234
82035475de62 Add a utlity function purple_markup_is_rtl
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 25633
diff changeset
161 *displaying = g_strdup_printf("%s%s%s%s%s%s%s%s%s",
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
162 bold ? "<B>" : "</B>",
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
163 italic ? "<I>" : "</I>",
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
164 underline ? "<U>" : "</U>",
27234
82035475de62 Add a utlity function purple_markup_is_rtl
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 25633
diff changeset
165 rtl ? "<SPAN style=\"direction:rtl;text-align:right;\">" : "",
82035475de62 Add a utlity function purple_markup_is_rtl
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 25633
diff changeset
166 t,
82035475de62 Add a utlity function purple_markup_is_rtl
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 25633
diff changeset
167 rtl ? "</SPAN>" : "",
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
168 bold ? "</B>" : "<B>",
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
169 italic ? "</I>" : "<I>",
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
170 underline ? "</U>" : "<U>"
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
171 );
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
172 g_free(t);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
173
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
174 return FALSE;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
175 }
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
176
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
177 static gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
178 plugin_load(PurplePlugin *plugin)
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
179 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
180 purple_signal_connect(pidgin_conversations_get_handle(),
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
181 "displaying-im-msg", plugin,
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
182 PURPLE_CALLBACK(displaying_msg), NULL);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
183 purple_signal_connect(pidgin_conversations_get_handle(),
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
184 "displaying-chat-msg", plugin,
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
185 PURPLE_CALLBACK(displaying_msg), NULL);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
186 return TRUE;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
187 }
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
188
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
189 static gboolean
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
190 plugin_unload(PurplePlugin *plugin)
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
191 {
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
192 return TRUE;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
193 }
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
194
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
195 /* Ripped from PurpleRC */
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
196 static void
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
197 color_response(GtkDialog *color_dialog, gint response, const char *data)
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
198 {
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
199 if (response == GTK_RESPONSE_OK)
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
200 {
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
201 GtkWidget *colorsel = GTK_COLOR_SELECTION_DIALOG(color_dialog)->colorsel;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
202 GdkColor color;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
203 char colorstr[8];
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
204 char tmp[128];
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
205
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
206 gtk_color_selection_get_current_color(GTK_COLOR_SELECTION(colorsel), &color);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
207
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
208 g_snprintf(colorstr, sizeof(colorstr), "#%02X%02X%02X",
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
209 color.red/256, color.green/256, color.blue/256);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
210
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
211 g_snprintf(tmp, sizeof(tmp), "%s/color", data);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
212
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
213 purple_prefs_set_string(tmp, colorstr);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
214 }
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
215
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
216 gtk_widget_destroy(GTK_WIDGET(color_dialog));
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
217 }
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
218
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
219 static void
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
220 set_color(GtkWidget *widget, const char *data)
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
221 {
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
222 GtkWidget *color_dialog = NULL;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
223 GdkColor color;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
224 char title[128];
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
225 char tmp[128];
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
226
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
227 g_snprintf(title, sizeof(title), _("Select Color for %s"), _(data));
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
228 color_dialog = gtk_color_selection_dialog_new(title);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
229 g_signal_connect(G_OBJECT(color_dialog), "response",
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
230 G_CALLBACK(color_response), (gpointer)data);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
232 g_snprintf(tmp, sizeof(tmp), "%s/color", data);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
233 if (gdk_color_parse(purple_prefs_get_string(tmp), &color))
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
234 {
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
235 gtk_color_selection_set_current_color(
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
236 GTK_COLOR_SELECTION(GTK_COLOR_SELECTION_DIALOG(color_dialog)->colorsel), &color);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
237 }
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
238
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
239 gtk_window_present(GTK_WINDOW(color_dialog));
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
240 }
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
241
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
242 static void
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
243 toggle_enabled(GtkWidget *widget, gpointer data)
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
244 {
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
245 const char *prefix = (char *)data;
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
246 gboolean e;
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
247 char tmp[128];
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
248
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
249 g_snprintf(tmp, sizeof(tmp), "%s/enabled", prefix);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
250 e = purple_prefs_get_bool(tmp);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
251 purple_prefs_set_bool(tmp, !e);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
252 }
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
253
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
254 static void
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
255 toggle_something(const char *prefix, int format)
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
256 {
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
257 int f;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
258 char tmp[128];
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
259
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
260 g_snprintf(tmp, sizeof(tmp), "%s/format", prefix);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
261 f = purple_prefs_get_int(tmp);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
262 f ^= format;
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
263 purple_prefs_set_int(tmp, f);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
264 }
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
265
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
266 static void
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
267 toggle_bold(GtkWidget *widget, gpointer data)
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
268 {
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
269 toggle_something(data, FONT_BOLD);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
270 }
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
271
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
272 static void
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
273 toggle_italic(GtkWidget *widget, gpointer data)
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
274 {
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
275 toggle_something(data, FONT_ITALIC);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
276 }
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
277
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
278 static void
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
279 toggle_underline(GtkWidget *widget, gpointer data)
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
280 {
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
281 toggle_something(data, FONT_UNDERLINE);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
282 }
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
283
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
284 static void
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
285 enable_toggled(const char *name, PurplePrefType type, gconstpointer val, gpointer data)
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
286 {
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
287 GtkWidget *widget = (GtkWidget *)data;
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
288
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
289 gtk_widget_set_sensitive(widget, GPOINTER_TO_INT(val));
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
290 }
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
291
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
292 static void
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
293 disconnect_prefs_callbacks(GtkObject *object, gpointer data)
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
294 {
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
295 PurplePlugin *plugin = (PurplePlugin *)data;
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
296
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
297 purple_prefs_disconnect_by_handle(plugin);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
298 }
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
299
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
300 static GtkWidget *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
301 get_config_frame(PurplePlugin *plugin)
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
302 {
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
303 GtkWidget *ret;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
304 GtkWidget *frame;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
305 int i;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
306
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15568
diff changeset
307 ret = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15568
diff changeset
308 gtk_container_set_border_width(GTK_CONTAINER(ret), PIDGIN_HIG_BORDER);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
309
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
310 for (i = 0; formats[i].prefix; i++)
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
311 {
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
312 char tmp[128];
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
313 char tmp2[128];
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
314 int f;
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
315 gboolean e;
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
316 GtkWidget *vbox, *hbox, *button;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
317
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
318 g_snprintf(tmp2, sizeof(tmp2), "%s/enabled", formats[i].prefix);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
319 e = purple_prefs_get_bool(tmp2);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
320
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
321 g_snprintf(tmp, sizeof(tmp), "%s/format", formats[i].prefix);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
322 f = purple_prefs_get_int(tmp);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
323
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15488
diff changeset
324 frame = pidgin_make_frame(ret, _(formats[i].text));
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15568
diff changeset
325 vbox = gtk_vbox_new(FALSE, PIDGIN_HIG_BOX_SPACE);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
326 gtk_box_pack_start(GTK_BOX(frame), vbox, FALSE, FALSE, 0);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
327
15882
1dbd5756b7bf More Gaim to Pidgin stuff
Sean Egan <seanegan@pidgin.im>
parents: 15568
diff changeset
328 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_BOX_SPACE);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
329 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
330
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
331 button = gtk_check_button_new_with_label(_("Enabled"));
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
332 gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
333 if (e)
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
334 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
335 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(toggle_enabled),
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
336 formats[i].prefix);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
337
15568
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
338 button = pidgin_pixbuf_button_from_stock(" Color", GTK_STOCK_SELECT_COLOR,
cd19bb5a51b8 gtkutils changes
Sean Egan <seanegan@pidgin.im>
parents: 15562
diff changeset
339 PIDGIN_BUTTON_HORIZONTAL);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
340 gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
341 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(set_color),
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
342 formats[i].prefix);
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
343 gtk_widget_set_sensitive(button, e);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
344 purple_prefs_connect_callback(plugin, tmp2, enable_toggled, button);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
345
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
346 button = gtk_check_button_new_with_label(_("Bold"));
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
347 gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
348 if (f & FONT_BOLD)
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
349 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
350 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(toggle_bold),
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
351 formats[i].prefix);
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
352 gtk_widget_set_sensitive(button, e);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
353 purple_prefs_connect_callback(plugin, tmp2, enable_toggled, button);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
354
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
355 button = gtk_check_button_new_with_label(_("Italic"));
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
356 gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
357 if (f & FONT_ITALIC)
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
358 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
359 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(toggle_italic),
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
360 formats[i].prefix);
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
361 gtk_widget_set_sensitive(button, e);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
362 purple_prefs_connect_callback(plugin, tmp2, enable_toggled, button);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
363
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
364 button = gtk_check_button_new_with_label(_("Underline"));
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
365 gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
366 if (f & FONT_UNDERLINE)
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
367 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), TRUE);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
368 g_signal_connect(G_OBJECT(button), "clicked",
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
369 G_CALLBACK(toggle_underline), formats[i].prefix);
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
370 gtk_widget_set_sensitive(button, e);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
371 purple_prefs_connect_callback(plugin, tmp2, enable_toggled, button);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
372 }
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
373
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
374 g_signal_connect(GTK_OBJECT(ret), "destroy", G_CALLBACK(disconnect_prefs_callbacks), plugin);
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15488
diff changeset
375 frame = pidgin_make_frame(ret, _("General"));
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15488
diff changeset
376 pidgin_prefs_checkbox(_("Ignore incoming format"), PREF_IGNORE, frame);
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15488
diff changeset
377 pidgin_prefs_checkbox(_("Apply in Chats"), PREF_CHATS, frame);
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15488
diff changeset
378 pidgin_prefs_checkbox(_("Apply in IMs"), PREF_IMS, frame);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
379
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
380 gtk_widget_show_all(ret);
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
381 return ret;
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
382 }
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
383
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15488
diff changeset
384 static PidginPluginUiInfo ui_info =
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
385 {
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
386 get_config_frame,
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
387 0,
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: 15884
diff changeset
388
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: 15884
diff changeset
389 /* 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: 15884
diff changeset
390 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: 15884
diff changeset
391 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: 15884
diff changeset
392 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: 15884
diff changeset
393 NULL
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
394 };
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
395
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
396 static PurplePluginInfo info =
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
397 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
398 PURPLE_PLUGIN_MAGIC, /* Magic */
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
399 PURPLE_MAJOR_VERSION, /* Purple Major Version */
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
400 PURPLE_MINOR_VERSION, /* Purple Minor Version */
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
401 PURPLE_PLUGIN_STANDARD, /* plugin type */
15562
8c8249fe5e3c gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents: 15488
diff changeset
402 PIDGIN_PLUGIN_TYPE, /* ui requirement */
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
403 0, /* flags */
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
404 NULL, /* dependencies */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
405 PURPLE_PRIORITY_DEFAULT, /* priority */
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
406
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
407 PLUGIN_ID, /* plugin id */
15418
bf287f742a5a [gaim-migrate @ 18149]
Luke Schierer <lschiere@pidgin.im>
parents: 15231
diff changeset
408 PLUGIN_NAME, /* name */
20288
5ca925a094e2 applied changes from 03b709ec2a153e7e82719df0ba4635108bb1d3c6
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 19859
diff changeset
409 DISPLAY_VERSION, /* version */
15418
bf287f742a5a [gaim-migrate @ 18149]
Luke Schierer <lschiere@pidgin.im>
parents: 15231
diff changeset
410 PLUGIN_SUMMARY, /* summary */
bf287f742a5a [gaim-migrate @ 18149]
Luke Schierer <lschiere@pidgin.im>
parents: 15231
diff changeset
411 PLUGIN_DESCRIPTION, /* description */
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
412 PLUGIN_AUTHOR, /* author */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
413 PURPLE_WEBSITE, /* website */
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
414
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
415 plugin_load, /* load */
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
416 plugin_unload, /* unload */
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
417 NULL, /* destroy */
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
418
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
419 &ui_info, /* ui_info */
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
420 NULL, /* extra_info */
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
421 NULL, /* prefs_info */
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: 15884
diff changeset
422 NULL, /* actions */
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: 15884
diff changeset
423
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: 15884
diff changeset
424 /* 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: 15884
diff changeset
425 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: 15884
diff changeset
426 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: 15884
diff changeset
427 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: 15884
diff changeset
428 NULL
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
429 };
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
430
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
431 static void
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
432 init_plugin(PurplePlugin *plugin)
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
433 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
434 purple_prefs_add_none(PREF_PREFIX);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
435
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
436 purple_prefs_add_bool(PREF_IGNORE, TRUE);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
437 purple_prefs_add_bool(PREF_CHATS, TRUE);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
438 purple_prefs_add_bool(PREF_IMS, TRUE);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
439
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
440 purple_prefs_add_none(PREF_SEND);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
441 purple_prefs_add_none(PREF_RECV);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
442 purple_prefs_add_none(PREF_SYSTEM);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
443 purple_prefs_add_none(PREF_ERROR);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
444 purple_prefs_add_none(PREF_NICK);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
445
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
446 purple_prefs_add_string(PREF_SEND_C, "#909090");
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
447 purple_prefs_add_string(PREF_RECV_C, "#000000");
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
448 purple_prefs_add_string(PREF_SYSTEM_C, "#50a050");
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
449 purple_prefs_add_string(PREF_ERROR_C, "#ff0000");
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
450 purple_prefs_add_string(PREF_NICK_C, "#0000dd");
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
451
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
452 purple_prefs_add_int(PREF_SEND_F, 0);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
453 purple_prefs_add_int(PREF_RECV_F, 0);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
454 purple_prefs_add_int(PREF_SYSTEM_F, FONT_ITALIC);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
455 purple_prefs_add_int(PREF_ERROR_F, FONT_BOLD | FONT_UNDERLINE);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
456 purple_prefs_add_int(PREF_NICK_F, FONT_BOLD);
21789
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
457
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
458 purple_prefs_add_bool(PREF_SEND_E, TRUE);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
459 purple_prefs_add_bool(PREF_RECV_E, TRUE);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
460 purple_prefs_add_bool(PREF_SYSTEM_E, TRUE);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
461 purple_prefs_add_bool(PREF_ERROR_E, TRUE);
1ba3811fdba4 Add an option per message type to enable (/disable) the overriding of
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 20288
diff changeset
462 purple_prefs_add_bool(PREF_NICK_E, TRUE);
15231
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
463 }
f13829d20a13 [gaim-migrate @ 17955]
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
464
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15882
diff changeset
465 PURPLE_INIT_PLUGIN(PLUGIN_STATIC_NAME, init_plugin, info)

mercurial