Sun, 22 Jul 2007 08:14:16 +0000
revert 'no visible tabs when only one conversation' as it proved unpopular. Made tabs only fill the entire width of the notebook when there's only one tab to avoid http://pidgin.im/~deryni/that_just_looks_dumb.png
|
7237
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
1 | /* |
| 15884 | 2 | * Purple - iChat-style timestamps |
|
7237
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
3 | * |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
4 | * Copyright (C) 2002-2003, Sean Egan |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
5 | * Copyright (C) 2003, Chris J. Friesen <Darth_Sebulba04@yahoo.com> |
| 15415 | 6 | * Copyright (C) 2007, Andrew Gaul <andrew@gaul.org> |
|
7237
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
7 | * |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
8 | * This program is free software; you can redistribute it and/or modify |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
9 | * it under the terms of the GNU General Public License as published by |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
10 | * the Free Software Foundation; either version 2 of the License, or |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
11 | * (at your option) any later version. |
| 4220 | 12 | * |
|
7237
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
13 | * This program is distributed in the hope that it will be useful, |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
16 | * GNU General Public License for more details. |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
17 | * |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
18 | * You should have received a copy of the GNU General Public License |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
19 | * along with this program; if not, write to the Free Software |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
20 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
21 | * |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
22 | */ |
|
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
23 | |
|
5872
754c63f29b77
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5676
diff
changeset
|
24 | #include "internal.h" |
|
4202
8b92de3b1c07
[gaim-migrate @ 4438]
Christian Hammond <chipx86@chipx86.com>
parents:
4201
diff
changeset
|
25 | |
|
5872
754c63f29b77
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5676
diff
changeset
|
26 | #include "conversation.h" |
|
754c63f29b77
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5676
diff
changeset
|
27 | #include "debug.h" |
|
7237
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
28 | #include "prefs.h" |
|
6485
3c7ba18e32f1
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
29 | #include "signals.h" |
| 9943 | 30 | #include "version.h" |
|
5872
754c63f29b77
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5676
diff
changeset
|
31 | |
| 3598 | 32 | #include "gtkimhtml.h" |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
33 | #include "gtkplugin.h" |
|
16123
8b98683319e7
Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
15884
diff
changeset
|
34 | #include "gtkprefs.h" |
|
5872
754c63f29b77
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5676
diff
changeset
|
35 | #include "gtkutils.h" |
|
754c63f29b77
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5676
diff
changeset
|
36 | |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
37 | #define TIMESTAMP_PLUGIN_ID "gtk-timestamp" |
| 3598 | 38 | |
| 15415 | 39 | /* minutes externally, seconds internally, and milliseconds in preferences */ |
| 40 | static int interval = 5 * 60; | |
| 3598 | 41 | |
| 15415 | 42 | static void |
| 15884 | 43 | timestamp_display(PurpleConversation *conv, time_t then, time_t now) |
| 3598 | 44 | { |
|
15562
8c8249fe5e3c
gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
45 | PidginConversation *gtk_conv = PIDGIN_CONVERSATION(conv); |
| 15415 | 46 | GtkWidget *imhtml = gtk_conv->imhtml; |
| 47 | GtkTextBuffer *buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(imhtml)); | |
| 10389 | 48 | GtkTextIter iter; |
|
13105
8f9c66e4af87
[gaim-migrate @ 15466]
Richard Laager <rlaager@pidgin.im>
parents:
12604
diff
changeset
|
49 | const char *mdate; |
| 15415 | 50 | int y, height; |
| 51 | GdkRectangle rect; | |
| 52 | ||
| 53 | /* display timestamp */ | |
| 15884 | 54 | mdate = purple_utf8_strftime(then == 0 ? "%H:%M" : "\n%H:%M", |
| 15415 | 55 | localtime(&now)); |
| 56 | gtk_text_buffer_get_end_iter(buffer, &iter); | |
| 57 | gtk_text_buffer_insert_with_tags_by_name(buffer, &iter, mdate, | |
| 58 | strlen(mdate), "TIMESTAMP", NULL); | |
|
10404
9d66d897e96d
[gaim-migrate @ 11649]
Mark Doliner <markdoliner@pidgin.im>
parents:
10400
diff
changeset
|
59 | |
| 15415 | 60 | /* scroll view if necessary */ |
| 61 | gtk_text_view_get_visible_rect(GTK_TEXT_VIEW(imhtml), &rect); | |
| 62 | gtk_text_view_get_line_yrange( | |
| 63 | GTK_TEXT_VIEW(imhtml), &iter, &y, &height); | |
| 64 | if (((y + height) - (rect.y + rect.height)) > height && | |
| 65 | gtk_text_buffer_get_char_count(buffer)) { | |
| 15884 | 66 | gboolean smooth = purple_prefs_get_bool( |
|
16123
8b98683319e7
Rename /purple/gtk preferences back to /gaim/gtk to allow for smooth upgrades
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
15884
diff
changeset
|
67 | PIDGIN_PREFS_ROOT "/conversations/use_smooth_scrolling"); |
| 15415 | 68 | gtk_imhtml_scroll_to_end(GTK_IMHTML(imhtml), smooth); |
| 9191 | 69 | } |
| 3598 | 70 | } |
| 71 | ||
| 9191 | 72 | static gboolean |
| 15884 | 73 | timestamp_displaying_conv_msg(PurpleAccount *account, const char *who, |
| 74 | char **buffer, PurpleConversation *conv, | |
| 75 | PurpleMessageFlags flags, void *data) | |
| 9191 | 76 | { |
| 15415 | 77 | time_t now = time(NULL) / interval * interval; |
| 78 | time_t then; | |
|
10404
9d66d897e96d
[gaim-migrate @ 11649]
Mark Doliner <markdoliner@pidgin.im>
parents:
10400
diff
changeset
|
79 | |
| 15884 | 80 | if (!g_list_find(purple_get_conversations(), conv)) |
| 9191 | 81 | return FALSE; |
|
10404
9d66d897e96d
[gaim-migrate @ 11649]
Mark Doliner <markdoliner@pidgin.im>
parents:
10400
diff
changeset
|
82 | |
| 15884 | 83 | then = GPOINTER_TO_INT(purple_conversation_get_data( |
| 15415 | 84 | conv, "timestamp-last")); |
|
10404
9d66d897e96d
[gaim-migrate @ 11649]
Mark Doliner <markdoliner@pidgin.im>
parents:
10400
diff
changeset
|
85 | |
| 15415 | 86 | if (now - then >= interval) { |
| 87 | timestamp_display(conv, then, now); | |
| 15884 | 88 | purple_conversation_set_data( |
| 15415 | 89 | conv, "timestamp-last", GINT_TO_POINTER(now)); |
| 9191 | 90 | } |
|
10404
9d66d897e96d
[gaim-migrate @ 11649]
Mark Doliner <markdoliner@pidgin.im>
parents:
10400
diff
changeset
|
91 | |
| 9191 | 92 | return FALSE; |
| 93 | } | |
| 94 | ||
| 15415 | 95 | static void |
| 15884 | 96 | timestamp_new_convo(PurpleConversation *conv) |
| 3598 | 97 | { |
|
15562
8c8249fe5e3c
gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
98 | PidginConversation *gtk_conv = PIDGIN_CONVERSATION(conv); |
| 15415 | 99 | GtkTextBuffer *buffer; |
|
10404
9d66d897e96d
[gaim-migrate @ 11649]
Mark Doliner <markdoliner@pidgin.im>
parents:
10400
diff
changeset
|
100 | |
| 15884 | 101 | if (!g_list_find(purple_get_conversations(), conv)) |
| 9191 | 102 | return; |
|
10404
9d66d897e96d
[gaim-migrate @ 11649]
Mark Doliner <markdoliner@pidgin.im>
parents:
10400
diff
changeset
|
103 | |
| 15415 | 104 | buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(gtk_conv->imhtml)); |
| 105 | gtk_text_buffer_create_tag(buffer, "TIMESTAMP", | |
| 106 | "foreground", "#888888", "justification", GTK_JUSTIFY_CENTER, | |
| 107 | "weight", PANGO_WEIGHT_BOLD, NULL); | |
| 4168 | 108 | |
| 15884 | 109 | purple_conversation_set_data(conv, "timestamp-last", GINT_TO_POINTER(0)); |
| 9191 | 110 | } |
| 3598 | 111 | |
| 15415 | 112 | static void |
| 113 | set_timestamp(GtkWidget *spinner, void *null) | |
| 9191 | 114 | { |
| 4220 | 115 | int tm; |
|
6485
3c7ba18e32f1
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
116 | |
|
12204
77be85a65fe8
[gaim-migrate @ 14506]
Richard Laager <rlaager@pidgin.im>
parents:
11740
diff
changeset
|
117 | tm = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spinner)); |
| 15884 | 118 | purple_debug(PURPLE_DEBUG_MISC, "timestamp", |
| 15415 | 119 | "setting interval to %d minutes\n", tm); |
|
6485
3c7ba18e32f1
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
120 | |
| 15415 | 121 | interval = tm * 60; |
| 15884 | 122 | purple_prefs_set_int("/plugins/gtk/timestamp/interval", interval * 1000); |
| 4220 | 123 | } |
| 124 | ||
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
125 | static GtkWidget * |
| 15884 | 126 | get_config_frame(PurplePlugin *plugin) |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
127 | { |
| 4220 | 128 | GtkWidget *ret; |
| 129 | GtkWidget *frame, *label; | |
| 130 | GtkWidget *vbox, *hbox; | |
| 15415 | 131 | GtkObject *adj; |
| 11740 | 132 | GtkWidget *spinner; |
|
6485
3c7ba18e32f1
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
133 | |
| 4220 | 134 | ret = gtk_vbox_new(FALSE, 18); |
| 135 | gtk_container_set_border_width (GTK_CONTAINER (ret), 12); | |
| 136 | ||
|
15562
8c8249fe5e3c
gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
137 | frame = pidgin_make_frame(ret, _("Display Timestamps Every")); |
| 4220 | 138 | vbox = gtk_vbox_new(FALSE, 5); |
| 139 | gtk_container_add(GTK_CONTAINER(frame), vbox); | |
| 140 | ||
| 141 | hbox = gtk_hbox_new(FALSE, 5); | |
| 142 | gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 5); | |
| 143 | ||
| 15415 | 144 | /* XXX limit to divisors of 60? */ |
| 145 | adj = gtk_adjustment_new(interval / 60, 1, 60, 1, 0, 0); | |
| 146 | spinner = gtk_spin_button_new(GTK_ADJUSTMENT(adj), 0, 0); | |
|
6485
3c7ba18e32f1
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
147 | gtk_box_pack_start(GTK_BOX(hbox), spinner, TRUE, TRUE, 0); |
| 15415 | 148 | g_signal_connect(G_OBJECT(spinner), "value-changed", |
| 149 | G_CALLBACK(set_timestamp), NULL); | |
| 150 | label = gtk_label_new(_("minutes")); | |
|
6485
3c7ba18e32f1
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
151 | gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 5); |
| 4220 | 152 | |
| 153 | gtk_widget_show_all(ret); | |
| 154 | return ret; | |
| 155 | } | |
| 156 | ||
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
157 | static gboolean |
| 15884 | 158 | plugin_load(PurplePlugin *plugin) |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
159 | { |
| 15884 | 160 | void *conv_handle = purple_conversations_get_handle(); |
|
15562
8c8249fe5e3c
gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
161 | void *gtkconv_handle = pidgin_conversations_get_handle(); |
|
10404
9d66d897e96d
[gaim-migrate @ 11649]
Mark Doliner <markdoliner@pidgin.im>
parents:
10400
diff
changeset
|
162 | |
| 15415 | 163 | /* lower priority to display initial timestamp after logged messages */ |
| 15884 | 164 | purple_signal_connect_priority(conv_handle, "conversation-created", |
| 165 | plugin, PURPLE_CALLBACK(timestamp_new_convo), NULL, | |
| 166 | PURPLE_SIGNAL_PRIORITY_DEFAULT + 1); | |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
167 | |
| 15884 | 168 | purple_signal_connect(gtkconv_handle, "displaying-chat-msg", |
| 169 | plugin, PURPLE_CALLBACK(timestamp_displaying_conv_msg), NULL); | |
| 170 | purple_signal_connect(gtkconv_handle, "displaying-im-msg", | |
| 171 | plugin, PURPLE_CALLBACK(timestamp_displaying_conv_msg), NULL); | |
|
7237
da128ba7a4de
[gaim-migrate @ 7812]
Mark Doliner <markdoliner@pidgin.im>
parents:
6982
diff
changeset
|
172 | |
| 15884 | 173 | interval = purple_prefs_get_int("/plugins/gtk/timestamp/interval") / 1000; |
| 10389 | 174 | |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
175 | return TRUE; |
| 3598 | 176 | } |
| 177 | ||
|
15562
8c8249fe5e3c
gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
178 | static PidginPluginUiInfo ui_info = |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
179 | { |
|
12600
7ecd4441fdc7
[gaim-migrate @ 14934]
Richard Laager <rlaager@pidgin.im>
parents:
12560
diff
changeset
|
180 | 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:
16123
diff
changeset
|
181 | 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:
16123
diff
changeset
|
182 | |
|
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:
16123
diff
changeset
|
183 | /* 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:
16123
diff
changeset
|
184 | 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:
16123
diff
changeset
|
185 | 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:
16123
diff
changeset
|
186 | 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:
16123
diff
changeset
|
187 | NULL |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
188 | }; |
|
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
189 | |
| 15884 | 190 | static PurplePluginInfo info = |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
191 | { |
| 15884 | 192 | PURPLE_PLUGIN_MAGIC, |
| 193 | PURPLE_MAJOR_VERSION, | |
| 194 | PURPLE_MINOR_VERSION, | |
| 195 | PURPLE_PLUGIN_STANDARD, /**< type */ | |
|
15562
8c8249fe5e3c
gaim_gtk to pidgin. I hope
Sean Egan <seanegan@pidgin.im>
parents:
15435
diff
changeset
|
196 | PIDGIN_PLUGIN_TYPE, /**< ui_requirement */ |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
197 | 0, /**< flags */ |
|
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
198 | NULL, /**< dependencies */ |
| 15884 | 199 | PURPLE_PRIORITY_DEFAULT, /**< priority */ |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
200 | |
|
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
201 | TIMESTAMP_PLUGIN_ID, /**< id */ |
|
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
202 | N_("Timestamp"), /**< name */ |
|
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
203 | VERSION, /**< version */ |
|
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
204 | /** summary */ |
| 15415 | 205 | N_("Display iChat-style timestamps"), |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
206 | /** description */ |
| 15415 | 207 | N_("Display iChat-style timestamps every N minutes."), |
|
12406
89863d2d9b8d
[gaim-migrate @ 14713]
Richard Laager <rlaager@pidgin.im>
parents:
12204
diff
changeset
|
208 | "Sean Egan <seanegan@gmail.com>", /**< author */ |
| 15884 | 209 | PURPLE_WEBSITE, /**< homepage */ |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
210 | |
|
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
211 | plugin_load, /**< load */ |
| 15415 | 212 | NULL, /**< unload */ |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
213 | NULL, /**< destroy */ |
|
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
214 | |
|
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
215 | &ui_info, /**< ui_info */ |
| 8993 | 216 | NULL, /**< extra_info */ |
|
10404
9d66d897e96d
[gaim-migrate @ 11649]
Mark Doliner <markdoliner@pidgin.im>
parents:
10400
diff
changeset
|
217 | 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:
16123
diff
changeset
|
218 | 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:
16123
diff
changeset
|
219 | |
|
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:
16123
diff
changeset
|
220 | /* 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:
16123
diff
changeset
|
221 | 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:
16123
diff
changeset
|
222 | 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:
16123
diff
changeset
|
223 | NULL, |
| 8993 | 224 | NULL |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
225 | }; |
|
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
226 | |
|
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
227 | static void |
| 15884 | 228 | init_plugin(PurplePlugin *plugin) |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
229 | { |
| 15884 | 230 | purple_prefs_add_none("/plugins/gtk/timestamp"); |
| 231 | purple_prefs_add_int("/plugins/gtk/timestamp/interval", interval * 1000); | |
| 3598 | 232 | } |
| 233 | ||
| 15884 | 234 | PURPLE_INIT_PLUGIN(interval, init_plugin, info) |