comparison pidgin/gtknotify.c @ 28407:f6cdf5f72479

Add a row-activation event for the Pounces dialog to open a new conversation window. committer: Paul Aurich <paul@darkrain42.org>
author salinasv@gmail.com
date Sat, 22 Aug 2009 06:20:10 +0000
parents 975a29213f35
children 4b61989ab198
comparison
equal deleted inserted replaced
28406:694c8aa30300 28407:f6cdf5f72479
291 gtk_widget_set_sensitive(pounce_dialog->edit_button, FALSE); 291 gtk_widget_set_sensitive(pounce_dialog->edit_button, FALSE);
292 gtk_widget_set_sensitive(pounce_dialog->dismiss_button, FALSE); 292 gtk_widget_set_sensitive(pounce_dialog->dismiss_button, FALSE);
293 } 293 }
294 294
295 295
296 }
297
298 static void
299 pounce_row_activated_cb(GtkTreeView *tv, GtkTreePath *path,
300 GtkTreeViewColumn *col, gpointer data)
301 {
302 PidginNotifyPounceData *pounce_data;
303 PurpleAccount *account;
304 GtkTreeIter iter;
305
306 if(!gtk_tree_model_get_iter(GTK_TREE_MODEL(pounce_dialog->treemodel), &iter, path))
307 return;
308
309 gtk_tree_model_get(GTK_TREE_MODEL(pounce_dialog->treemodel), &iter,
310 PIDGIN_POUNCE_DATA, &pounce_data, -1);
311
312 account = pounce_data->account;
313
314 purple_conversation_new(PURPLE_CONV_TYPE_IM, account,
315 purple_account_get_username(account));
316
317 pounce_response_dismiss();
296 } 318 }
297 319
298 static void 320 static void
299 reset_mail_dialog(GtkDialog *unused) 321 reset_mail_dialog(GtkDialog *unused)
300 { 322 {
1537 1559
1538 sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(spec_dialog->treeview)); 1560 sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(spec_dialog->treeview));
1539 gtk_tree_selection_set_mode(sel, GTK_SELECTION_SINGLE); 1561 gtk_tree_selection_set_mode(sel, GTK_SELECTION_SINGLE);
1540 g_signal_connect(G_OBJECT(sel), "changed", 1562 g_signal_connect(G_OBJECT(sel), "changed",
1541 G_CALLBACK(pounce_row_selected_cb), NULL); 1563 G_CALLBACK(pounce_row_selected_cb), NULL);
1564 g_signal_connect(G_OBJECT(spec_dialog->treeview), "row-activated",
1565 G_CALLBACK(pounce_row_activated_cb), NULL);
1542 } 1566 }
1543 1567
1544 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); 1568 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
1545 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); 1569 gtk_misc_set_alignment(GTK_MISC(label), 0, 0);
1546 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); 1570 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0);