Mercurial > pidgin
annotate plugins/timestamp.c @ 12897:e9b0c90ce58a
[gaim-migrate @ 15250]
dwightshepherd says in SF Bug #1407720:
"The icon used for the 'clear' option under the
conversation menu is the same icon used for the clear
formating in the formating toolbar. This, imho is
misleadding and can lead to confusion."
I'm changing "Clear" to "Clear Scrollback" in the menu. (I chose "Scrollback" to match `/help clear`.)
committer: Tailor Script <tailor@pidgin.im>
author | Richard Laager <rlaager@wiktel.com> |
---|---|
date | Tue, 17 Jan 2006 00:09:12 +0000 |
parents | 71299d63801d |
children | e1e5462b7d81 |
rev | line source |
---|---|
7237 | 1 /* |
2 * Gaim - iChat-like timestamps | |
3 * | |
4 * Copyright (C) 2002-2003, Sean Egan | |
5 * Copyright (C) 2003, Chris J. Friesen <Darth_Sebulba04@yahoo.com> | |
6 * | |
7 * This program is free software; you can redistribute it and/or modify | |
8 * it under the terms of the GNU General Public License as published by | |
9 * the Free Software Foundation; either version 2 of the License, or | |
10 * (at your option) any later version. | |
4220 | 11 * |
7237 | 12 * This program is distributed in the hope that it will be useful, |
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 * GNU General Public License for more details. | |
16 * | |
17 * You should have received a copy of the GNU General Public License | |
18 * along with this program; if not, write to the Free Software | |
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
20 * | |
21 */ | |
22 | |
5872
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5676
diff
changeset
|
23 #include "internal.h" |
4202
59751fe608c5
[gaim-migrate @ 4438]
Christian Hammond <chipx86@chipx86.com>
parents:
4201
diff
changeset
|
24 |
5872
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5676
diff
changeset
|
25 #include "conversation.h" |
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5676
diff
changeset
|
26 #include "debug.h" |
7237 | 27 #include "prefs.h" |
6485
70d5122bc3ff
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
28 #include "signals.h" |
9943 | 29 #include "version.h" |
5872
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5676
diff
changeset
|
30 |
3598 | 31 #include "gtkimhtml.h" |
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
32 #include "gtkplugin.h" |
5872
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5676
diff
changeset
|
33 #include "gtkutils.h" |
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5676
diff
changeset
|
34 |
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
35 #define TIMESTAMP_PLUGIN_ID "gtk-timestamp" |
3598 | 36 |
6050 | 37 /* Set the default to 5 minutes. */ |
7237 | 38 static int interval = 5 * 60 * 1000; |
3598 | 39 |
9191 | 40 static GSList *timestamp_timeouts = NULL; |
3598 | 41 |
10404 | 42 static gboolean |
43 do_timestamp(gpointer data) | |
3598 | 44 { |
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5530
diff
changeset
|
45 GaimConversation *c = (GaimConversation *)data; |
10389 | 46 GaimGtkConversation *conv = GAIM_GTK_CONVERSATION(c); |
47 GtkTextIter iter; | |
10390 | 48 char mdate[7]; |
9191 | 49 int is_conversation_active; |
3598 | 50 time_t tim = time(NULL); |
10404 | 51 |
4376
2c985a9e994c
[gaim-migrate @ 4642]
Christian Hammond <chipx86@chipx86.com>
parents:
4359
diff
changeset
|
52 if (!g_list_find(gaim_get_conversations(), c)) |
3598 | 53 return FALSE; |
54 | |
9191 | 55 /* is_conversation_active is true if an im has been displayed since the last timestamp */ |
56 is_conversation_active = GPOINTER_TO_INT(gaim_conversation_get_data(c, "timestamp-conv-active")); | |
10404 | 57 |
9191 | 58 if (is_conversation_active){ |
10400 | 59 int y, height; |
60 GdkRectangle rect; | |
61 gboolean scroll = TRUE; | |
62 GtkWidget *imhtml = conv->imhtml; | |
63 GtkTextBuffer *buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(imhtml)); | |
10389 | 64 gtk_text_buffer_get_end_iter(buffer, &iter); |
9191 | 65 gaim_conversation_set_data(c, "timestamp-conv-active", GINT_TO_POINTER(FALSE)); |
10390 | 66 strftime(mdate, sizeof(mdate), "\n%H:%M", localtime(&tim)); |
10400 | 67 gtk_text_view_get_visible_rect(GTK_TEXT_VIEW(imhtml), &rect); |
68 gtk_text_view_get_line_yrange(GTK_TEXT_VIEW(imhtml), &iter, &y, &height); | |
69 if(((y + height) - (rect.y + rect.height)) > height | |
70 && gtk_text_buffer_get_char_count(buffer)){ | |
71 scroll = FALSE; | |
72 } | |
10389 | 73 gtk_text_buffer_insert_with_tags_by_name(buffer, &iter, mdate, strlen(mdate), "TIMESTAMP", NULL); |
10400 | 74 if (scroll) |
12560
d6b513c74e1f
[gaim-migrate @ 14879]
Richard Laager <rlaager@wiktel.com>
parents:
12559
diff
changeset
|
75 gtk_imhtml_scroll_to_end(GTK_IMHTML(imhtml), gaim_prefs_get_bool("/gaim/gtk/conversations/use_smooth_scrolling")); |
9191 | 76 } |
77 else | |
78 gaim_conversation_set_data(c, "timestamp-enabled", GINT_TO_POINTER(FALSE)); | |
10404 | 79 |
3598 | 80 return TRUE; |
81 } | |
82 | |
9191 | 83 |
84 static gboolean | |
85 timestamp_displaying_conv_msg(GaimAccount *account, GaimConversation *conv, | |
12604
71299d63801d
[gaim-migrate @ 14939]
Richard Laager <rlaager@wiktel.com>
parents:
12600
diff
changeset
|
86 char **buffer, GaimMessageFlags flags, void *data) |
9191 | 87 { |
88 int is_timestamp_enabled; | |
10404 | 89 |
9191 | 90 if (!g_list_find(gaim_get_conversations(), conv)) |
91 return FALSE; | |
10404 | 92 |
9191 | 93 /* set to true, since there has been an im since the last timestamp */ |
94 gaim_conversation_set_data(conv, "timestamp-conv-active", GINT_TO_POINTER(TRUE)); | |
10404 | 95 |
9191 | 96 is_timestamp_enabled = GPOINTER_TO_INT(gaim_conversation_get_data(conv, "timestamp-enabled")); |
10404 | 97 |
9191 | 98 if (!is_timestamp_enabled){ |
99 gaim_conversation_set_data(conv, "timestamp-enabled", GINT_TO_POINTER(TRUE)); | |
100 do_timestamp((gpointer)conv); | |
101 } | |
10404 | 102 |
9191 | 103 return FALSE; |
104 } | |
105 | |
6485
70d5122bc3ff
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
106 static void timestamp_new_convo(GaimConversation *conv) |
3598 | 107 { |
10389 | 108 GaimGtkConversation *c = GAIM_GTK_CONVERSATION(conv); |
10404 | 109 |
9191 | 110 if (!g_list_find(gaim_get_conversations(), conv)) |
111 return; | |
10404 | 112 |
10389 | 113 gtk_imhtml_show_comments(GTK_IMHTML(c->imhtml), FALSE); |
114 | |
9191 | 115 /* |
116 This if statement stops conversations that have already been initialized for timestamps | |
117 from being reinitialized. This prevents every active conversation from immediately being spammed | |
118 with a new timestamp when the user modifies the timer interval. | |
119 */ | |
120 if (!gaim_conversation_get_data(conv, "timestamp-initialized")){ | |
10389 | 121 GtkTextBuffer *buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(c->imhtml)); |
9191 | 122 gaim_conversation_set_data(conv, "timestamp-initialized", GINT_TO_POINTER(TRUE)); |
123 gaim_conversation_set_data(conv, "timestamp-enabled", GINT_TO_POINTER(TRUE)); | |
124 gaim_conversation_set_data(conv, "timestamp-conv-active", GINT_TO_POINTER(TRUE)); | |
10389 | 125 gtk_text_buffer_create_tag (buffer, "TIMESTAMP", "foreground", "#888888", "justification", GTK_JUSTIFY_CENTER, |
126 "weight", PANGO_WEIGHT_BOLD, NULL); | |
9191 | 127 do_timestamp(conv); |
128 } | |
4168 | 129 |
3727 | 130 timestamp_timeouts = g_slist_append(timestamp_timeouts, |
7237 | 131 GINT_TO_POINTER(g_timeout_add(interval, do_timestamp, conv))); |
9191 | 132 } |
3598 | 133 |
9191 | 134 |
135 static void destroy_timer_list() | |
136 { | |
137 GSList *to; | |
138 | |
139 for (to = timestamp_timeouts; to != NULL; to = to->next) | |
140 g_source_remove(GPOINTER_TO_INT(to->data)); | |
141 | |
142 g_slist_free(timestamp_timeouts); | |
10404 | 143 |
9191 | 144 timestamp_timeouts = NULL; |
3598 | 145 } |
4220 | 146 |
9191 | 147 static void init_timer_list() |
148 { | |
149 GList *cnvs; | |
150 GaimConversation *c; | |
10404 | 151 |
9191 | 152 if (timestamp_timeouts != NULL) |
153 destroy_timer_list(); | |
10404 | 154 |
9191 | 155 for (cnvs = gaim_get_conversations(); cnvs != NULL; cnvs = cnvs->next) { |
156 c = cnvs->data; | |
157 timestamp_new_convo(c); | |
158 } | |
159 } | |
160 | |
161 | |
162 | |
11740 | 163 static void set_timestamp(GtkWidget *spinner, void *null) { |
4220 | 164 int tm; |
6485
70d5122bc3ff
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
165 |
12204
2c7e79b6d7b2
[gaim-migrate @ 14506]
Richard Laager <rlaager@wiktel.com>
parents:
11740
diff
changeset
|
166 tm = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spinner)); |
7237 | 167 gaim_debug(GAIM_DEBUG_MISC, "timestamp", "setting time to %d mins\n", tm); |
6485
70d5122bc3ff
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
168 |
12204
2c7e79b6d7b2
[gaim-migrate @ 14506]
Richard Laager <rlaager@wiktel.com>
parents:
11740
diff
changeset
|
169 interval = tm * 60 * 1000; |
7237 | 170 gaim_prefs_set_int("/plugins/gtk/timestamp/interval", interval); |
10404 | 171 |
9191 | 172 destroy_timer_list(); |
173 init_timer_list(); | |
4220 | 174 } |
175 | |
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
176 static GtkWidget * |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
177 get_config_frame(GaimPlugin *plugin) |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
178 { |
4220 | 179 GtkWidget *ret; |
180 GtkWidget *frame, *label; | |
181 GtkWidget *vbox, *hbox; | |
182 GtkAdjustment *adj; | |
11740 | 183 GtkWidget *spinner; |
6485
70d5122bc3ff
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
184 |
4220 | 185 ret = gtk_vbox_new(FALSE, 18); |
186 gtk_container_set_border_width (GTK_CONTAINER (ret), 12); | |
187 | |
5530
2c4c975620f0
[gaim-migrate @ 5930]
Christian Hammond <chipx86@chipx86.com>
parents:
5314
diff
changeset
|
188 frame = gaim_gtk_make_frame(ret, _("iChat Timestamp")); |
4220 | 189 vbox = gtk_vbox_new(FALSE, 5); |
190 gtk_container_add(GTK_CONTAINER(frame), vbox); | |
191 | |
192 hbox = gtk_hbox_new(FALSE, 5); | |
193 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 5); | |
194 | |
4586 | 195 label = gtk_label_new(_("Delay")); |
4220 | 196 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 5); |
6485
70d5122bc3ff
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
197 |
7237 | 198 adj = (GtkAdjustment *)gtk_adjustment_new(interval/(60*1000), 1, G_MAXINT, 1, 0, 0); |
4220 | 199 spinner = gtk_spin_button_new(adj, 0, 0); |
6485
70d5122bc3ff
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
200 gtk_box_pack_start(GTK_BOX(hbox), spinner, TRUE, TRUE, 0); |
11740 | 201 g_signal_connect(G_OBJECT(spinner), "value-changed", G_CALLBACK(set_timestamp), NULL); |
6485
70d5122bc3ff
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
202 label = gtk_label_new(_("minutes.")); |
70d5122bc3ff
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
203 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 5); |
4220 | 204 |
205 gtk_widget_show_all(ret); | |
206 return ret; | |
207 } | |
208 | |
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
209 static gboolean |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
210 plugin_load(GaimPlugin *plugin) |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
211 { |
9191 | 212 void *conv_handle = gaim_conversations_get_handle(); |
10404 | 213 |
9191 | 214 init_timer_list(); |
3598 | 215 |
9191 | 216 gaim_signal_connect(conv_handle, "conversation-created", |
217 plugin, GAIM_CALLBACK(timestamp_new_convo), NULL); | |
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
218 |
9863 | 219 /* record IM display events for each conversation */ |
9191 | 220 gaim_signal_connect(conv_handle, "displaying-im-msg", |
221 plugin, GAIM_CALLBACK(timestamp_displaying_conv_msg), NULL); | |
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
222 |
7237 | 223 interval = gaim_prefs_get_int("/plugins/gtk/timestamp/interval"); |
224 | |
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
225 return TRUE; |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
226 } |
3598 | 227 |
9191 | 228 |
229 | |
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
230 static gboolean |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
231 plugin_unload(GaimPlugin *plugin) |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
232 { |
10389 | 233 GList *cnvs; |
10404 | 234 |
9191 | 235 destroy_timer_list(); |
10389 | 236 |
237 for (cnvs = gaim_get_conversations(); cnvs != NULL; cnvs = cnvs->next) { | |
238 GaimConversation *c = cnvs->data; | |
239 GaimGtkConversation *conv = GAIM_GTK_CONVERSATION(c); | |
240 gtk_imhtml_show_comments(GTK_IMHTML(conv->imhtml), TRUE); | |
241 } | |
242 | |
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
243 return TRUE; |
3598 | 244 } |
245 | |
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
246 static GaimGtkPluginUiInfo ui_info = |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
247 { |
12600
e856f985a0b9
[gaim-migrate @ 14934]
Richard Laager <rlaager@wiktel.com>
parents:
12560
diff
changeset
|
248 get_config_frame, |
e856f985a0b9
[gaim-migrate @ 14934]
Richard Laager <rlaager@wiktel.com>
parents:
12560
diff
changeset
|
249 0 /* page_num (Reserved) */ |
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
250 }; |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
251 |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
252 static GaimPluginInfo info = |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
253 { |
9943 | 254 GAIM_PLUGIN_MAGIC, |
255 GAIM_MAJOR_VERSION, | |
256 GAIM_MINOR_VERSION, | |
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
257 GAIM_PLUGIN_STANDARD, /**< type */ |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
258 GAIM_GTK_PLUGIN_TYPE, /**< ui_requirement */ |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
259 0, /**< flags */ |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
260 NULL, /**< dependencies */ |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
261 GAIM_PRIORITY_DEFAULT, /**< priority */ |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
262 |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
263 TIMESTAMP_PLUGIN_ID, /**< id */ |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
264 N_("Timestamp"), /**< name */ |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
265 VERSION, /**< version */ |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
266 /** summary */ |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
267 N_("Adds iChat-style timestamps to conversations every N minutes."), |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
268 /** description */ |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
269 N_("Adds iChat-style timestamps to conversations every N minutes."), |
12406
bc45ab9756b5
[gaim-migrate @ 14713]
Richard Laager <rlaager@wiktel.com>
parents:
12204
diff
changeset
|
270 "Sean Egan <seanegan@gmail.com>", /**< author */ |
6485
70d5122bc3ff
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6371
diff
changeset
|
271 GAIM_WEBSITE, /**< homepage */ |
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
272 |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
273 plugin_load, /**< load */ |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
274 plugin_unload, /**< unload */ |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
275 NULL, /**< destroy */ |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
276 |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
277 &ui_info, /**< ui_info */ |
8993 | 278 NULL, /**< extra_info */ |
10404 | 279 NULL, |
8993 | 280 NULL |
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
281 }; |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
282 |
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
283 static void |
5920
7d385de2f9cd
[gaim-migrate @ 6360]
Christian Hammond <chipx86@chipx86.com>
parents:
5873
diff
changeset
|
284 init_plugin(GaimPlugin *plugin) |
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
4586
diff
changeset
|
285 { |
7237 | 286 gaim_prefs_add_none("/plugins/gtk/timestamp"); |
287 gaim_prefs_add_int("/plugins/gtk/timestamp/interval", interval); | |
3598 | 288 } |
289 | |
7237 | 290 GAIM_INIT_PLUGIN(interval, init_plugin, info) |