Mercurial > pidgin.yaz
comparison pidgin/gtklog.c @ 18495:64391b1e860e
Make the "Browse Logs Folder" button open the folder containing the log
currently being displayed.
Fixes #2115
author | Richard Laager <rlaager@wiktel.com> |
---|---|
date | Thu, 12 Jul 2007 04:34:02 +0000 |
parents | 08db93bbd798 |
children | 5733c0691c25 44b4e8bd759b 9a6d429d7aed |
comparison
equal
deleted
inserted
replaced
18494:dc98087bd97c | 18495:64391b1e860e |
---|---|
170 static void destroy_cb(GtkWidget *w, gint resp, struct log_viewer_hash_t *ht) { | 170 static void destroy_cb(GtkWidget *w, gint resp, struct log_viewer_hash_t *ht) { |
171 PidginLogViewer *lv = syslog_viewer; | 171 PidginLogViewer *lv = syslog_viewer; |
172 | 172 |
173 #ifdef _WIN32 | 173 #ifdef _WIN32 |
174 if (resp == GTK_RESPONSE_HELP) { | 174 if (resp == GTK_RESPONSE_HELP) { |
175 char *logdir = g_build_filename(purple_user_dir(), "logs", NULL); | 175 GtkTreeSelection *sel; |
176 GtkTreeIter iter; | |
177 GtkTreeModel *model; | |
178 PurpleLog *log = NULL; | |
179 char *logdir; | |
180 | |
181 if (ht != NULL) | |
182 lv = g_hash_table_lookup(log_viewers, ht); | |
183 model = GTK_TREE_MODEL(lv->treestore); | |
184 | |
185 sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(lv->treeview)); | |
186 if (gtk_tree_selection_get_selected(sel, &model, &iter)) { | |
187 GValue val; | |
188 | |
189 val.g_type = 0; | |
190 gtk_tree_model_get_value (model, &iter, 1, &val); | |
191 log = g_value_get_pointer(&val); | |
192 g_value_unset(&val); | |
193 } | |
194 | |
195 | |
196 if (log == NULL) | |
197 logdir = g_build_filename(purple_user_dir(), "logs", NULL); | |
198 else | |
199 logdir = purple_log_get_log_dir(log->type, log->name, log->account); | |
200 | |
176 winpidgin_shell_execute(logdir, "explore", NULL); | 201 winpidgin_shell_execute(logdir, "explore", NULL); |
177 g_free(logdir); | 202 g_free(logdir); |
178 return; | 203 return; |
179 } | 204 } |
180 #endif | 205 #endif |
366 GValue val; | 391 GValue val; |
367 PurpleLog *log; | 392 PurpleLog *log; |
368 gpointer *data; | 393 gpointer *data; |
369 | 394 |
370 iter = g_new(GtkTreeIter, 1); | 395 iter = g_new(GtkTreeIter, 1); |
371 sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(lv)); | 396 sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(lv->treeview)); |
372 if (!gtk_tree_selection_get_selected(sel, NULL, iter)) | 397 if (!gtk_tree_selection_get_selected(sel, NULL, iter)) |
373 { | 398 { |
374 return FALSE; | 399 return FALSE; |
375 } | 400 } |
376 | 401 |