Changeset 128


Ignore:
Timestamp:
3/8/2008 1:10:30 AM (6 years ago)
Author:
lowjoel
Message:

-Implement the Public API for the TaskDataSelectionForm?
-Populate the Erase Unused Space drive combobox

Location:
branches/eraser6/Eraser
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • branches/eraser6/Eraser/Eraser.csproj

    r125 r128  
    177177      <Name>Manager</Name> 
    178178    </ProjectReference> 
     179    <ProjectReference Include="..\Util\Util.csproj"> 
     180      <Project>{D083E1A8-3A4C-4683-9B3F-D5FEDE61B9C9}</Project> 
     181      <Name>Util</Name> 
     182    </ProjectReference> 
    179183  </ItemGroup> 
    180184  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> 
  • branches/eraser6/Eraser/TaskDataSelectionForm.Designer.cs

    r127 r128  
    212212            this.ok.Text = "OK"; 
    213213            this.ok.UseVisualStyleBackColor = true; 
     214            this.ok.Click += new System.EventHandler(this.ok_Click); 
    214215            //  
    215216            // cancel 
  • branches/eraser6/Eraser/TaskDataSelectionForm.cs

    r127 r128  
    77using System.Windows.Forms; 
    88 
     9using Eraser.Manager; 
     10using Eraser.Util; 
     11 
    912namespace Eraser 
    1013{ 
     
    1316        public TaskDataSelectionForm() 
    1417        { 
     18            //Create the UI 
    1519            InitializeComponent(); 
    1620            file.Checked = true; 
     21 
     22            //Populate the drives list 
     23            string[] drives = Environment.GetLogicalDrives(); 
     24            foreach (string drive in drives) 
     25            { 
     26                DriveTypes driveType = Drives.GetDriveType(drive); 
     27                if (driveType != DriveTypes.DRIVE_UNKNOWN && 
     28                    driveType != DriveTypes.DRIVE_NO_ROOT_DIR && 
     29                    driveType != DriveTypes.DRIVE_CDROM && 
     30                    driveType != DriveTypes.DRIVE_REMOTE) 
     31                { 
     32                    unusedDisk.Items.Add(File.GetFileDescription(drive)); 
     33                } 
     34            } 
     35        } 
     36 
     37        /// <summary> 
     38        /// Retrieves the settings on the property page as the Eraser Manager API equivalent. 
     39        /// </summary> 
     40        /// <returns>An Eraser.Manager.Task.Data or Eraser.Manager.Task.FreeSpace object 
     41        /// or any of its inherited classes, depending on the task selected</returns> 
     42        public Task.EraseTarget GetTaskEntry() 
     43        { 
     44            Task.EraseTarget result = null; 
     45            if (file.Checked) 
     46            { 
     47                Manager.Task.File fileTask = new Task.File(); 
     48                result = fileTask; 
     49 
     50                fileTask.Path = filePath.Text; 
     51            } 
     52            else if (folder.Checked) 
     53            { 
     54                Manager.Task.Folder folderTask = new Task.Folder(); 
     55                result = folderTask; 
     56 
     57                folderTask.Path = folderPath.Text; 
     58                folderTask.IncludeMask = folderInclude.Text; 
     59                folderTask.ExcludeMask = folderExclude.Text; 
     60                folderTask.DeleteIfEmpty = folderDelete.Checked; 
     61            } 
     62            else 
     63            { 
     64                Task.FreeSpace freeSpaceTask = new Task.FreeSpace(); 
     65                result = freeSpaceTask; 
     66 
     67                freeSpaceTask.Drive = (string)unusedDisk.SelectedValue; 
     68            } 
     69 
     70            return result; 
    1771        } 
    1872 
     
    3993                folderPath.Text = folderDialog.SelectedPath; 
    4094        } 
     95 
     96        private void ok_Click(object sender, EventArgs e) 
     97        { 
     98            DialogResult = DialogResult.OK; 
     99            Close(); 
     100        } 
    41101    } 
    42102} 
  • branches/eraser6/Eraser/TaskPropertiesForm.Designer.cs

    r127 r128  
    109109            this.dataColData, 
    110110            this.dataColMethod}); 
     111            this.data.FullRowSelect = true; 
    111112            this.data.Location = new System.Drawing.Point(15, 77); 
    112113            this.data.Name = "data"; 
  • branches/eraser6/Eraser/TaskPropertiesForm.cs

    r127 r128  
    66using System.Text; 
    77using System.Windows.Forms; 
     8 
     9using Eraser.Manager; 
    810 
    911namespace Eraser 
     
    2224                if (form.ShowDialog() == DialogResult.OK) 
    2325                { 
    24                     ; 
     26                    Task.EraseTarget entry = form.GetTaskEntry(); 
     27                    ListViewItem item = null; 
     28                    if (entry is Task.FilesystemObject) 
     29                        item = data.Items.Add((entry as Task.FilesystemObject).Path); 
     30                    else if (entry is Task.FreeSpace) 
     31                        data.Items.Add("Unused space on " + (entry as Task.FreeSpace).Drive); 
     32                    else 
     33                        throw new NotImplementedException("Unimplemented data erasure type."); 
     34                    item.SubItems[0].Text = entry.Method.Name; 
     35                    task.Entries.Add(entry); 
    2536                } 
    2637            } 
    2738        } 
     39 
     40        private Task task = new Task(); 
    2841    } 
    2942} 
Note: See TracChangeset for help on using the changeset viewer.