comparison src/dupe.c @ 497:a33badd85f16

Allow the copy of file paths to clipboard. This feature is disabled by default, it can be set through Preferences > Advanced > Behavior > Show "Copy path" ... When enabled, it adds a menu entry "Copy path" that let the user copies current selection's paths to X clipboard. It is very convenient to paste paths to xterm for example. Patch by Carles Pina i Estany and me.
author zas_
date Wed, 23 Apr 2008 22:17:21 +0000
parents c7a2471e5c4e
children fc9c8a3e1a8b
comparison
equal deleted inserted replaced
496:a1f13fab6686 497:a33badd85f16
2193 static void dupe_menu_delete_cb(GtkWidget *widget, gpointer data) 2193 static void dupe_menu_delete_cb(GtkWidget *widget, gpointer data)
2194 { 2194 {
2195 DupeWindow *dw = data; 2195 DupeWindow *dw = data;
2196 2196
2197 file_util_delete(NULL, dupe_listview_get_selection(dw, dw->listview), dw->window); 2197 file_util_delete(NULL, dupe_listview_get_selection(dw, dw->listview), dw->window);
2198 }
2199
2200 static void dupe_menu_copy_path_cb(GtkWidget *widget, gpointer data)
2201 {
2202 DupeWindow *dw = data;
2203
2204 file_util_copy_path_list_to_clipboard(dupe_listview_get_selection(dw, dw->listview));
2198 } 2205 }
2199 2206
2200 static void dupe_menu_remove_cb(GtkWidget *widget, gpointer data) 2207 static void dupe_menu_remove_cb(GtkWidget *widget, gpointer data)
2201 { 2208 {
2202 DupeWindow *dw = data; 2209 DupeWindow *dw = data;
2256 G_CALLBACK(dupe_menu_move_cb), dw); 2263 G_CALLBACK(dupe_menu_move_cb), dw);
2257 menu_item_add_sensitive(menu, _("_Rename..."), on_row, 2264 menu_item_add_sensitive(menu, _("_Rename..."), on_row,
2258 G_CALLBACK(dupe_menu_rename_cb), dw); 2265 G_CALLBACK(dupe_menu_rename_cb), dw);
2259 menu_item_add_stock_sensitive(menu, _("_Delete..."), GTK_STOCK_DELETE, on_row, 2266 menu_item_add_stock_sensitive(menu, _("_Delete..."), GTK_STOCK_DELETE, on_row,
2260 G_CALLBACK(dupe_menu_delete_cb), dw); 2267 G_CALLBACK(dupe_menu_delete_cb), dw);
2268 if (options->show_copy_path)
2269 menu_item_add_sensitive(menu, _("_Copy path"), on_row,
2270 G_CALLBACK(dupe_menu_copy_path_cb), dw);
2261 menu_item_add_divider(menu); 2271 menu_item_add_divider(menu);
2262 menu_item_add_stock_sensitive(menu, _("Rem_ove"), GTK_STOCK_REMOVE, on_row, 2272 menu_item_add_stock_sensitive(menu, _("Rem_ove"), GTK_STOCK_REMOVE, on_row,
2263 G_CALLBACK(dupe_menu_remove_cb), dw); 2273 G_CALLBACK(dupe_menu_remove_cb), dw);
2264 menu_item_add_stock_sensitive(menu, _("C_lear"), GTK_STOCK_CLEAR, (dw->list != NULL), 2274 menu_item_add_stock_sensitive(menu, _("C_lear"), GTK_STOCK_CLEAR, (dw->list != NULL),
2265 G_CALLBACK(dupe_menu_clear_cb), dw); 2275 G_CALLBACK(dupe_menu_clear_cb), dw);