Index: src/f-spot.glade
===================================================================
--- src/f-spot.glade	(révision 3530)
+++ src/f-spot.glade	(copie de travail)
@@ -650,6 +650,19 @@
                 <property name="position">2</property>
               </packing>
             </child>
+            <child>
+              <widget class="GtkCheckButton" id="delete_from_cam_check">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="label" translatable="yes">Delete from camera</property>
+                <property name="response_id">0</property>
+                <property name="draw_indicator">True</property>
+              </widget>
+              <packing>
+                <property name="expand">False</property>
+                <property name="position">3</property>
+              </packing>
+            </child>
           </widget>
           <packing>
             <property name="position">1</property>
Index: src/GPhotoCamera.cs
===================================================================
--- src/GPhotoCamera.cs	(révision 3530)
+++ src/GPhotoCamera.cs	(copie de travail)
@@ -217,6 +217,13 @@
 		}
 	}
 	
+	public void DeleteFile (int index)
+	{
+		GPhotoCameraFile selected_file = (GPhotoCameraFile)files [index];		
+		
+		camera_fs.DeleteFile (selected_file.Directory, selected_file.FileName, context) ;
+	}
+		
 	~GPhotoCamera ()
 	{
 		ReleaseGPhotoResources ();
Index: src/CameraFileSelectionDialog.cs
===================================================================
--- src/CameraFileSelectionDialog.cs	(révision 3530)
+++ src/CameraFileSelectionDialog.cs	(copie de travail)
@@ -30,6 +30,7 @@
 		[Widget] Gtk.TreeView file_tree;
 		[Widget] Gtk.OptionMenu tag_option_menu;
 		[Widget] Gtk.CheckButton attach_check;
+		[Widget] Gtk.CheckButton delete_from_cam_check;
 
 		GPhotoCamera camera;
 		ListStore preview_list_store;
@@ -220,6 +221,9 @@
 						progress_dialog.ProgressText = msg;
 						saved.Add (SaveFile ((int)(index_list [i])));
 						progress_dialog.Fraction = count/(double)index_list.Count;
+						if (delete_from_cam_check.Active) {
+							DeleteFile ((int)(index_list [i]));
+						}
 					}
 					catch (System.Exception e) {
 						System.Console.WriteLine (e.ToString ());
@@ -273,6 +277,12 @@
 			return path;
 		}
 		
+		private void DeleteFile (int index) 
+		{
+			GPhotoCameraFile camfile = (GPhotoCameraFile) camera.FileList [index];
+			camera.DeleteFile (index);
+		}
+		
 		private int ImportFiles ()
 		{
 			ImportCommand command = new ImportCommand (null);
