pidgin/gtklog.c

changeset 18743
58a367fa661a
parent 16490
68c22924d66b
child 18868
bad2f3f3d15a
child 19291
44d144feda7b
child 19859
71d37b57eff2
equal deleted inserted replaced
18742:e13a0ecd3093 18743:58a367fa661a
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

mercurial