rendered paste bodyIndex: linux/downloadqueue.cc===================================================================RCS file: /cvsroot/linuxdcpp/linuxdcpp/linux/downloadqueue.cc,vretrieving revision 1.28diff -u -r1.28 downloadqueue.cc--- linux/downloadqueue.cc 21 Aug 2006 15:52:37 -0000 1.28+++ linux/downloadqueue.cc 16 Sep 2006 12:57:32 -0000@@ -80,6 +80,7 @@ g_signal_connect(getWidget("fileHighestPriorityItem"), "activate", G_CALLBACK(setFilePriorityClicked_gui), (gpointer)this); g_signal_connect(getWidget("fileRemoveItem"), "activate", G_CALLBACK(removeFileClicked_gui), (gpointer)this); g_signal_connect(fileView.get(), "button_press_event", G_CALLBACK(file_onButtonPressed_gui), (gpointer)this);+ g_signal_connect(fileView.get(), "key_press_event", G_CALLBACK(file_onKeyPressed_gui), (gpointer)this); g_signal_connect(fileView.get(), "popup_menu", G_CALLBACK(file_onPopupMenu_gui), (gpointer)this); g_signal_connect(dirView.get(), "button_press_event", G_CALLBACK(dir_onButtonPressed_gui), (gpointer)this); g_signal_connect(dirView.get(), "button_release_event", G_CALLBACK(dir_onButtonReleased_gui), (gpointer)this);@@ -613,6 +614,34 @@ } } return FALSE; +}+gboolean DownloadQueue::file_onKeyPressed_gui (GtkWidget *widget, GdkEventKey *event, gpointer user_data)+{+ if (event->keyval == 65535)+ {+ DownloadQueue *q = (DownloadQueue*)user_data;+ GtkTreeSelection *selection;+ GtkTreeIter iter;+ QueueItemInfo *info;+ GtkTreeModel *m = GTK_TREE_MODEL (q->fileStore);+ selection = gtk_tree_view_get_selection(q->fileView.get());+ GList *list = gtk_tree_selection_get_selected_rows(selection, NULL);+ gint count = gtk_tree_selection_count_selected_rows(selection);+ GtkTreePath *path;+ for (int i = 0; i < count; i++)+ {+ path = (GtkTreePath *)g_list_nth_data(list, i);+ if (gtk_tree_model_get_iter(m, &iter, path))+ {+ info = q->fileView.getValue<gpointer, QueueItemInfo *>(&iter, "Info");+ info->remove();+ }+ }+ gtk_tree_path_free(path);+ g_list_free(list);+ return TRUE;+ }+ return FALSE; } gboolean DownloadQueue::file_onPopupMenu_gui (GtkWidget *widget, gpointer user_data) {Index: linux/downloadqueue.hh===================================================================RCS file: /cvsroot/linuxdcpp/linuxdcpp/linux/downloadqueue.hh,vretrieving revision 1.17diff -u -r1.17 downloadqueue.hh--- linux/downloadqueue.hh 21 Aug 2006 15:52:37 -0000 1.17+++ linux/downloadqueue.hh 16 Sep 2006 12:57:32 -0000@@ -60,6 +60,7 @@ static gboolean dir_onButtonReleased_gui (GtkWidget *widget, GdkEventButton *event, gpointer user_data); static gboolean dir_onPopupMenu_gui (GtkWidget *widget, gpointer user_data); static gboolean file_onButtonPressed_gui (GtkWidget *widget, GdkEventButton *event, gpointer user_data);+ static gboolean file_onKeyPressed_gui (GtkWidget *widget, GdkEventKey *event, gpointer user_data); static gboolean file_onPopupMenu_gui (GtkWidget *widget, gpointer user_data); void dir_popup_menu_gui (GdkEventButton *event, gpointer user_data); void file_popup_menu_gui (GdkEventButton *event, gpointer user_data);