Changeset 2024 for trunk/eraser
- Timestamp:
- 5/3/2010 2:18:48 PM (3 years ago)
- Location:
- trunk/eraser
- Files:
-
- 3 added
- 16 edited
-
Eraser.Manager/Eraser.Manager.csproj (modified) (2 diffs)
-
Eraser.Manager/ErasureTarget.cs (modified) (10 diffs)
-
Eraser.Manager/FileErasureTargetSettings.Designer.cs (modified) (2 diffs)
-
Eraser.Manager/FileErasureTargetSettings.cs (modified) (3 diffs)
-
Eraser.Manager/FileErasureTargetSettings.resx (added)
-
Eraser.Manager/FolderErasureTargetSettings.Designer.cs (modified) (2 diffs)
-
Eraser.Manager/FolderErasureTargetSettings.cs (modified) (3 diffs)
-
Eraser.Manager/FolderErasureTargetSettings.resx (added)
-
Eraser.Manager/UnusedSpaceErasureTargetSettings.Designer.cs (modified) (2 diffs)
-
Eraser.Manager/UnusedSpaceErasureTargetSettings.cs (modified) (2 diffs)
-
Eraser.Manager/UnusedSpaceErasureTargetSettings.resx (added)
-
Eraser/Strings.en.resx (modified) (1 diff)
-
Eraser/Strings.it.resx (modified) (1 diff)
-
Eraser/Strings.nl.resx (modified) (1 diff)
-
Eraser/Strings.pl.resx (modified) (1 diff)
-
Eraser/Strings.resx (modified) (1 diff)
-
Eraser/TaskDataSelectionForm.Designer.cs (modified) (5 diffs)
-
Eraser/TaskDataSelectionForm.cs (modified) (4 diffs)
-
Eraser/TaskDataSelectionForm.resx (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/eraser/Eraser.Manager/Eraser.Manager.csproj
r2023 r2024 111 111 </ItemGroup> 112 112 <ItemGroup> 113 <EmbeddedResource Include="FileErasureTargetSettings.resx"> 114 <DependentUpon>FileErasureTargetSettings.cs</DependentUpon> 115 </EmbeddedResource> 116 <EmbeddedResource Include="FolderErasureTargetSettings.resx"> 117 <DependentUpon>FolderErasureTargetSettings.cs</DependentUpon> 118 </EmbeddedResource> 113 119 <EmbeddedResource Include="Strings.en.resx"> 114 120 <SubType>Designer</SubType> … … 121 127 <EmbeddedResource Include="Strings.resx"> 122 128 <SubType>Designer</SubType> 129 </EmbeddedResource> 130 <EmbeddedResource Include="UnusedSpaceErasureTargetSettings.resx"> 131 <DependentUpon>UnusedSpaceErasureTargetSettings.cs</DependentUpon> 123 132 </EmbeddedResource> 124 133 </ItemGroup> -
trunk/eraser/Eraser.Manager/ErasureTarget.cs
r2023 r2024 76 76 public ErasureMethod Method 77 77 { 78 get; 79 set; 78 get 79 { 80 return method; 81 } 82 set 83 { 84 if (!SupportsMethod(value)) 85 throw new ArgumentException(S._("The selected erasure method is not " + 86 "supported for this erasure target.")); 87 method = value; 88 } 80 89 } 81 90 … … 100 109 101 110 /// <summary> 111 /// Checks whether the provided erasure method is supported by this current 112 /// target. 113 /// </summary> 114 /// <param name="method">The erasure method to check.</param> 115 /// <returns>True if the erasure method is supported, false otherwise.</returns> 116 public virtual bool SupportsMethod(ErasureMethod method) 117 { 118 return true; 119 } 120 121 /// <summary> 102 122 /// Retrieves the text to display representing this task. 103 123 /// </summary> … … 117 137 118 138 /// <summary> 119 /// Gets a controlwhich contains settings for configuring this task, or139 /// Gets an <see cref="IErasureTargetConfigurer"/> which contains settings for configuring this task, or 120 140 /// null if this erasure target has no settings to be set. 121 141 /// </summary> … … 123 143 /// function, and settings for this task will be according to the returned 124 144 /// control.</remarks> 125 public abstract System.Windows.Forms.Control SettingsPanel145 public abstract IErasureTargetConfigurer Configurer 126 146 { 127 147 get; 128 148 } 129 130 /// <summary>131 /// Configures the current task based on settings specified in the control132 /// returned by the <see cref="SettingsPanel"/> property.133 /// </summary>134 /// <param name="settingsPanel">A settings panel returned by the135 /// <see cref="SettingsPanel"/> property, which contains the user-selected136 /// settings.</param>137 public abstract void Configure(System.Windows.Forms.Control settingsPanel);138 149 139 150 /// <summary> … … 145 156 { 146 157 } 158 159 /// <summary> 160 /// The backing variable for the <see cref="Method"/> property. 161 /// </summary> 162 private ErasureMethod method; 163 } 164 165 /// <summary> 166 /// Represents an interface for an abstract erasure target configuration 167 /// object. 168 /// </summary> 169 public interface IErasureTargetConfigurer 170 { 171 /// <summary> 172 /// Loads the configuration from the provided erasure target. 173 /// </summary> 174 /// <param name="target">The erasure target to load the configuration from.</param> 175 void LoadFrom(ErasureTarget target); 176 177 /// <summary> 178 /// Configures the provided erasure target. 179 /// </summary> 180 /// <param name="target">The erasure target to configure.</param> 181 /// <returns>True if the configuration was valid and the save operation 182 /// succeeded.</returns> 183 bool SaveTo(ErasureTarget target); 147 184 } 148 185 … … 304 341 } 305 342 343 public override bool SupportsMethod(ErasureMethod method) 344 { 345 return method == ErasureMethodRegistrar.Default || 346 method is UnusedSpaceErasureMethod; 347 } 348 306 349 public override string UIText 307 350 { … … 309 352 } 310 353 311 public override System.Windows.Forms.Control SettingsPanel354 public override IErasureTargetConfigurer Configurer 312 355 { 313 356 get { return new UnusedSpaceErasureTargetSettings(); } 314 }315 316 public override void Configure(System.Windows.Forms.Control settingsPanel)317 {318 throw new NotImplementedException();319 357 } 320 358 … … 350 388 } 351 389 352 public override System.Windows.Forms.Control SettingsPanel390 public override IErasureTargetConfigurer Configurer 353 391 { 354 392 get { return new FileErasureTargetSettings(); } 355 }356 357 public override void Configure(System.Windows.Forms.Control settingsPanel)358 {359 throw new NotImplementedException();360 393 } 361 394 … … 412 445 } 413 446 414 public override System.Windows.Forms.Control SettingsPanel447 public override IErasureTargetConfigurer Configurer 415 448 { 416 449 get { return new FolderErasureTargetSettings(); } 417 }418 419 public override void Configure(System.Windows.Forms.Control settingsPanel)420 {421 throw new NotImplementedException();422 450 } 423 451 … … 535 563 } 536 564 537 public override System.Windows.Forms.Control SettingsPanel565 public override IErasureTargetConfigurer Configurer 538 566 { 539 567 get { return null; } 540 }541 542 public override void Configure(System.Windows.Forms.Control settingsPanel)543 {544 throw new InvalidOperationException("The RecycleBinTarget class has no settings to " +545 "be set.");546 568 } 547 569 -
trunk/eraser/Eraser.Manager/FileErasureTargetSettings.Designer.cs
r2023 r2024 1 namespace Eraser.Manager 1 /* 2 * $Id$ 3 * Copyright 2008-2010 The Eraser Project 4 * Original Author: Joel Low <lowjoel@users.sourceforge.net> 5 * Modified By: 6 * 7 * This file is part of Eraser. 8 * 9 * Eraser is free software: you can redistribute it and/or modify it under the 10 * terms of the GNU General Public License as published by the Free Software 11 * Foundation, either version 3 of the License, or (at your option) any later 12 * version. 13 * 14 * Eraser is distributed in the hope that it will be useful, but WITHOUT ANY 15 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 16 * A PARTICULAR PURPOSE. See the GNU General Public License for more details. 17 * 18 * A copy of the GNU General Public License can be found at 19 * <http://www.gnu.org/licenses/>. 20 */ 21 22 namespace Eraser.Manager 2 23 { 3 24 partial class FileErasureTargetSettings … … 29 50 private void InitializeComponent() 30 51 { 31 components = new System.ComponentModel.Container(); 52 this.components = new System.ComponentModel.Container(); 53 this.fileBrowse = new System.Windows.Forms.Button(); 54 this.filePath = new System.Windows.Forms.TextBox(); 55 this.fileDialog = new System.Windows.Forms.OpenFileDialog(); 56 this.errorProvider = new System.Windows.Forms.ErrorProvider(this.components); 57 ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).BeginInit(); 58 this.SuspendLayout(); 59 // 60 // fileBrowse 61 // 62 this.fileBrowse.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); 63 this.fileBrowse.ImeMode = System.Windows.Forms.ImeMode.NoControl; 64 this.fileBrowse.Location = new System.Drawing.Point(75, 0); 65 this.fileBrowse.Name = "fileBrowse"; 66 this.fileBrowse.Size = new System.Drawing.Size(75, 23); 67 this.fileBrowse.TabIndex = 7; 68 this.fileBrowse.Text = "Browse..."; 69 this.fileBrowse.UseVisualStyleBackColor = true; 70 this.fileBrowse.Click += new System.EventHandler(this.fileBrowse_Click); 71 // 72 // filePath 73 // 74 this.filePath.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 75 | System.Windows.Forms.AnchorStyles.Right))); 76 this.filePath.Location = new System.Drawing.Point(0, 2); 77 this.filePath.Name = "filePath"; 78 this.filePath.Size = new System.Drawing.Size(69, 20); 79 this.filePath.TabIndex = 6; 80 // 81 // fileDialog 82 // 83 this.fileDialog.Filter = "All files (*.*)|*.*"; 84 // 85 // errorProvider 86 // 87 this.errorProvider.ContainerControl = this; 88 // 89 // FileErasureTargetSettings 90 // 91 this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); 32 92 this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 93 this.Controls.Add(this.fileBrowse); 94 this.Controls.Add(this.filePath); 95 this.Name = "FileErasureTargetSettings"; 96 this.Size = new System.Drawing.Size(150, 23); 97 ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).EndInit(); 98 this.ResumeLayout(false); 99 this.PerformLayout(); 100 33 101 } 34 102 35 103 #endregion 104 105 private System.Windows.Forms.Button fileBrowse; 106 private System.Windows.Forms.TextBox filePath; 107 private System.Windows.Forms.OpenFileDialog fileDialog; 108 private System.Windows.Forms.ErrorProvider errorProvider; 36 109 } 37 110 } -
trunk/eraser/Eraser.Manager/FileErasureTargetSettings.cs
r2023 r2024 1 using System; 1 /* 2 * $Id$ 3 * Copyright 2008-2010 The Eraser Project 4 * Original Author: Joel Low <lowjoel@users.sourceforge.net> 5 * Modified By: 6 * 7 * This file is part of Eraser. 8 * 9 * Eraser is free software: you can redistribute it and/or modify it under the 10 * terms of the GNU General Public License as published by the Free Software 11 * Foundation, either version 3 of the License, or (at your option) any later 12 * version. 13 * 14 * Eraser is distributed in the hope that it will be useful, but WITHOUT ANY 15 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 16 * A PARTICULAR PURPOSE. See the GNU General Public License for more details. 17 * 18 * A copy of the GNU General Public License can be found at 19 * <http://www.gnu.org/licenses/>. 20 */ 21 22 using System; 2 23 using System.Collections.Generic; 3 24 using System.ComponentModel; … … 7 28 using System.Text; 8 29 using System.Windows.Forms; 30 using Eraser.Util; 9 31 10 32 namespace Eraser.Manager 11 33 { 12 public partial class FileErasureTargetSettings : UserControl 34 public partial class FileErasureTargetSettings : UserControl, IErasureTargetConfigurer 13 35 { 14 36 public FileErasureTargetSettings() … … 16 38 InitializeComponent(); 17 39 } 40 41 #region IErasureTargetConfigurer Members 42 43 public void LoadFrom(ErasureTarget target) 44 { 45 FileTarget file = target as FileTarget; 46 if (file == null) 47 throw new ArgumentException("The provided erasure target type is not " + 48 "supported by this configurer."); 49 50 filePath.Text = file.Path; 51 } 52 53 public bool SaveTo(ErasureTarget target) 54 { 55 FileTarget file = target as FileTarget; 56 if (file == null) 57 throw new ArgumentException("The provided erasure target type is not " + 58 "supported by this configurer."); 59 60 if (filePath.Text.Length == 0) 61 { 62 errorProvider.SetError(filePath, S._("Invalid file path")); 63 return false; 64 } 65 66 file.Path = filePath.Text; 67 return true; 68 } 69 70 #endregion 71 72 private void fileBrowse_Click(object sender, EventArgs e) 73 { 74 fileDialog.FileName = filePath.Text; 75 if (fileDialog.ShowDialog() == DialogResult.OK) 76 filePath.Text = fileDialog.FileName; 77 } 18 78 } 19 79 } -
trunk/eraser/Eraser.Manager/FolderErasureTargetSettings.Designer.cs
r2023 r2024 1 namespace Eraser.Manager 1 /* 2 * $Id$ 3 * Copyright 2008-2010 The Eraser Project 4 * Original Author: Joel Low <lowjoel@users.sourceforge.net> 5 * Modified By: 6 * 7 * This file is part of Eraser. 8 * 9 * Eraser is free software: you can redistribute it and/or modify it under the 10 * terms of the GNU General Public License as published by the Free Software 11 * Foundation, either version 3 of the License, or (at your option) any later 12 * version. 13 * 14 * Eraser is distributed in the hope that it will be useful, but WITHOUT ANY 15 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 16 * A PARTICULAR PURPOSE. See the GNU General Public License for more details. 17 * 18 * A copy of the GNU General Public License can be found at 19 * <http://www.gnu.org/licenses/>. 20 */ 21 22 namespace Eraser.Manager 2 23 { 3 24 partial class FolderErasureTargetSettings … … 29 50 private void InitializeComponent() 30 51 { 31 components = new System.ComponentModel.Container(); 52 this.components = new System.ComponentModel.Container(); 53 this.folderDelete = new System.Windows.Forms.CheckBox(); 54 this.folderExclude = new System.Windows.Forms.TextBox(); 55 this.folderExcludeLbl = new System.Windows.Forms.Label(); 56 this.folderInclude = new System.Windows.Forms.TextBox(); 57 this.folderIncludeLbl = new System.Windows.Forms.Label(); 58 this.folderBrowse = new System.Windows.Forms.Button(); 59 this.folderPath = new System.Windows.Forms.TextBox(); 60 this.folderDialog = new System.Windows.Forms.FolderBrowserDialog(); 61 this.errorProvider = new System.Windows.Forms.ErrorProvider(this.components); 62 ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).BeginInit(); 63 this.SuspendLayout(); 64 // 65 // folderDelete 66 // 67 this.folderDelete.AutoSize = true; 68 this.folderDelete.Checked = true; 69 this.folderDelete.CheckState = System.Windows.Forms.CheckState.Checked; 70 this.folderDelete.ImeMode = System.Windows.Forms.ImeMode.NoControl; 71 this.folderDelete.Location = new System.Drawing.Point(0, 83); 72 this.folderDelete.Name = "folderDelete"; 73 this.folderDelete.Size = new System.Drawing.Size(125, 17); 74 this.folderDelete.TabIndex = 20; 75 this.folderDelete.Text = "Delete folder if empty"; 76 this.folderDelete.UseVisualStyleBackColor = true; 77 // 78 // folderExclude 79 // 80 this.folderExclude.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 81 | System.Windows.Forms.AnchorStyles.Right))); 82 this.folderExclude.Location = new System.Drawing.Point(104, 57); 83 this.folderExclude.Name = "folderExclude"; 84 this.folderExclude.Size = new System.Drawing.Size(272, 20); 85 this.folderExclude.TabIndex = 19; 86 // 87 // folderExcludeLbl 88 // 89 this.folderExcludeLbl.AutoSize = true; 90 this.folderExcludeLbl.ImeMode = System.Windows.Forms.ImeMode.NoControl; 91 this.folderExcludeLbl.Location = new System.Drawing.Point(-3, 60); 92 this.folderExcludeLbl.Name = "folderExcludeLbl"; 93 this.folderExcludeLbl.Size = new System.Drawing.Size(77, 13); 94 this.folderExcludeLbl.TabIndex = 18; 95 this.folderExcludeLbl.Text = "Exclude Mask:"; 96 // 97 // folderInclude 98 // 99 this.folderInclude.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 100 | System.Windows.Forms.AnchorStyles.Right))); 101 this.folderInclude.Location = new System.Drawing.Point(104, 28); 102 this.folderInclude.Name = "folderInclude"; 103 this.folderInclude.Size = new System.Drawing.Size(272, 20); 104 this.folderInclude.TabIndex = 17; 105 // 106 // folderIncludeLbl 107 // 108 this.folderIncludeLbl.AutoSize = true; 109 this.folderIncludeLbl.ImeMode = System.Windows.Forms.ImeMode.NoControl; 110 this.folderIncludeLbl.Location = new System.Drawing.Point(-3, 31); 111 this.folderIncludeLbl.Name = "folderIncludeLbl"; 112 this.folderIncludeLbl.Size = new System.Drawing.Size(74, 13); 113 this.folderIncludeLbl.TabIndex = 16; 114 this.folderIncludeLbl.Text = "Include Mask:"; 115 // 116 // folderBrowse 117 // 118 this.folderBrowse.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); 119 this.folderBrowse.ImeMode = System.Windows.Forms.ImeMode.NoControl; 120 this.folderBrowse.Location = new System.Drawing.Point(301, -1); 121 this.folderBrowse.Name = "folderBrowse"; 122 this.folderBrowse.Size = new System.Drawing.Size(75, 23); 123 this.folderBrowse.TabIndex = 15; 124 this.folderBrowse.Text = "Browse..."; 125 this.folderBrowse.UseVisualStyleBackColor = true; 126 this.folderBrowse.Click += new System.EventHandler(this.folderBrowse_Click); 127 // 128 // folderPath 129 // 130 this.folderPath.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 131 | System.Windows.Forms.AnchorStyles.Right))); 132 this.folderPath.Location = new System.Drawing.Point(0, 1); 133 this.folderPath.Name = "folderPath"; 134 this.folderPath.Size = new System.Drawing.Size(295, 20); 135 this.folderPath.TabIndex = 14; 136 // 137 // folderDialog 138 // 139 this.folderDialog.Description = "Select a folder to erase."; 140 this.folderDialog.ShowNewFolderButton = false; 141 // 142 // errorProvider 143 // 144 this.errorProvider.ContainerControl = this; 145 // 146 // FolderErasureTargetSettings 147 // 148 this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); 32 149 this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 150 this.Controls.Add(this.folderDelete); 151 this.Controls.Add(this.folderExclude); 152 this.Controls.Add(this.folderExcludeLbl); 153 this.Controls.Add(this.folderInclude); 154 this.Controls.Add(this.folderIncludeLbl); 155 this.Controls.Add(this.folderBrowse); 156 this.Controls.Add(this.folderPath); 157 this.Name = "FolderErasureTargetSettings"; 158 this.Size = new System.Drawing.Size(376, 108); 159 ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).EndInit(); 160 this.ResumeLayout(false); 161 this.PerformLayout(); 162 33 163 } 34 164 35 165 #endregion 166 167 private System.Windows.Forms.CheckBox folderDelete; 168 private System.Windows.Forms.TextBox folderExclude; 169 private System.Windows.Forms.Label folderExcludeLbl; 170 private System.Windows.Forms.TextBox folderInclude; 171 private System.Windows.Forms.Label folderIncludeLbl; 172 private System.Windows.Forms.Button folderBrowse; 173 private System.Windows.Forms.TextBox folderPath; 174 private System.Windows.Forms.FolderBrowserDialog folderDialog; 175 private System.Windows.Forms.ErrorProvider errorProvider; 36 176 } 37 177 } -
trunk/eraser/Eraser.Manager/FolderErasureTargetSettings.cs
r2023 r2024 1 using System; 1 /* 2 * $Id$ 3 * Copyright 2008-2010 The Eraser Project 4 * Original Author: Joel Low <lowjoel@users.sourceforge.net> 5 * Modified By: 6 * 7 * This file is part of Eraser. 8 * 9 * Eraser is free software: you can redistribute it and/or modify it under the 10 * terms of the GNU General Public License as published by the Free Software 11 * Foundation, either version 3 of the License, or (at your option) any later 12 * version. 13 * 14 * Eraser is distributed in the hope that it will be useful, but WITHOUT ANY 15 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 16 * A PARTICULAR PURPOSE. See the GNU General Public License for more details. 17 * 18 * A copy of the GNU General Public License can be found at 19 * <http://www.gnu.org/licenses/>. 20 */ 21 22 using System; 2 23 using System.Collections.Generic; 3 24 using System.ComponentModel; … … 8 29 using System.Windows.Forms; 9 30 31 using Eraser.Util; 32 10 33 namespace Eraser.Manager 11 34 { 12 public partial class FolderErasureTargetSettings : UserControl 35 public partial class FolderErasureTargetSettings : UserControl, IErasureTargetConfigurer 13 36 { 14 37 public FolderErasureTargetSettings() … … 16 39 InitializeComponent(); 17 40 } 41 42 #region IErasureTargetConfigurer Members 43 44 public void LoadFrom(ErasureTarget target) 45 { 46 FolderTarget folder = target as FolderTarget; 47 if (folder == null) 48 throw new ArgumentException("The provided erasure target type is not " + 49 "supported by this configurer."); 50 51 folderPath.Text = folder.Path; 52 folderInclude.Text = folder.IncludeMask; 53 folderExclude.Text = folder.ExcludeMask; 54 folderDelete.Checked = folder.DeleteIfEmpty; 55 } 56 57 public bool SaveTo(ErasureTarget target) 58 { 59 FolderTarget folder = target as FolderTarget; 60 if (folder == null) 61 throw new ArgumentException("The provided erasure target type is not " + 62 "supported by this configurer."); 63 64 if (folderPath.Text.Length == 0) 65 { 66 errorProvider.SetError(folderPath, S._("Invalid folder path")); 67 return false; 68 } 69 70 folder.Path = folderPath.Text; 71 folder.IncludeMask = folderInclude.Text; 72 folder.ExcludeMask = folderExclude.Text; 73 folder.DeleteIfEmpty = folderDelete.Checked; 74 return true; 75 } 76 77 #endregion 78 79 private void folderBrowse_Click(object sender, EventArgs e) 80 { 81 try 82 { 83 folderDialog.SelectedPath = folderPath.Text; 84 if (folderDialog.ShowDialog() == DialogResult.OK) 85 folderPath.Text = folderDialog.SelectedPath; 86 } 87 catch (NotSupportedException) 88 { 89 MessageBox.Show(this, S._("The path you selected is invalid."), S._("Eraser"), 90 MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, 91 Localisation.IsRightToLeft(this) ? 92 MessageBoxOptions.RtlReading | MessageBoxOptions.RightAlign : 0); 93 } 94 } 18 95 } 19 96 } -
trunk/eraser/Eraser.Manager/UnusedSpaceErasureTargetSettings.Designer.cs
r2023 r2024 1 namespace Eraser.Manager 1 /* 2 * $Id$ 3 * Copyright 2008-2010 The Eraser Project 4 * Original Author: Joel Low <lowjoel@users.sourceforge.net> 5 * Modified By: 6 * 7 * This file is part of Eraser. 8 * 9 * Eraser is free software: you can redistribute it and/or modify it under the 10 * terms of the GNU General Public License as published by the Free Software 11 * Foundation, either version 3 of the License, or (at your option) any later 12 * version. 13 * 14 * Eraser is distributed in the hope that it will be useful, but WITHOUT ANY 15 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 16 * A PARTICULAR PURPOSE. See the GNU General Public License for more details. 17 * 18 * A copy of the GNU General Public License can be found at 19 * <http://www.gnu.org/licenses/>. 20 */ 21 22 namespace Eraser.Manager 2 23 { 3 24 partial class UnusedSpaceErasureTargetSettings … … 29 50 private void InitializeComponent() 30 51 { 31 components = new System.ComponentModel.Container(); 52 this.unusedClusterTips = new System.Windows.Forms.CheckBox(); 53 this.unusedDisk = new System.Windows.Forms.ComboBox(); 54 this.SuspendLayout(); 55 // 56 // unusedClusterTips 57 // 58 this.unusedClusterTips.AutoSize = true; 59 this.unusedClusterTips.Checked = true; 60 this.unusedClusterTips.CheckState = System.Windows.Forms.CheckState.Checked; 61 this.unusedClusterTips.ImeMode = System.Windows.Forms.ImeMode.NoControl; 62 this.unusedClusterTips.Location = new System.Drawing.Point(0, 30); 63 this.unusedClusterTips.Name = "unusedClusterTips"; 64 this.unusedClusterTips.Size = new System.Drawing.Size(106, 17); 65 this.unusedClusterTips.TabIndex = 18; 66 this.unusedClusterTips.Text = "Erase cluster tips"; 67 this.unusedClusterTips.UseVisualStyleBackColor = true; 68 // 69 // unusedDisk 70 // 71 this.unusedDisk.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) 72 | System.Windows.Forms.AnchorStyles.Right))); 73 this.unusedDisk.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed; 74 this.unusedDisk.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; 75 this.unusedDisk.FormattingEnabled = true; 76 this.unusedDisk.Location = new System.Drawing.Point(0, 0); 77 this.unusedDisk.Name = "unusedDisk"; 78 this.unusedDisk.Size = new System.Drawing.Size(345, 21); 79 this.unusedDisk.TabIndex = 17; 80 this.unusedDisk.DrawItem += new System.Windows.Forms.DrawItemEventHandler(this.unusedDisk_DrawItem); 81 // 82 // UnusedSpaceErasureTargetSettings 83 // 84 this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); 32 85 this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 86 this.Controls.Add(this.unusedClusterTips); 87 this.Controls.Add(this.unusedDisk); 88 this.Name = "UnusedSpaceErasureTargetSettings"; 89 this.Size = new System.Drawing.Size(345, 49); 90 this.ResumeLayout(false); 91 this.PerformLayout(); 92 33 93 } 34 94 35 95 #endregion 96 97 private System.Windows.Forms.CheckBox unusedClusterTips; 98 private System.Windows.Forms.ComboBox unusedDisk; 36 99 } 37 100 } -
trunk/eraser/Eraser.Manager/UnusedSpaceErasureTargetSettings.cs
r2023 r2024 1 using System; 1 /* 2 * $Id$ 3 * Copyright 2008-2010 The Eraser Project 4 * Original Author: Joel Low <lowjoel@users.sourceforge.net> 5 * Modified By: 6 * 7 * This file is part of Eraser. 8 * 9 * Eraser is free software: you can redistribute it and/or modify it under the 10 * terms of the GNU General Public License as published by the Free Software 11 * Foundation, either version 3 of the License, or (at your option) any later 12 * version. 13 * 14 * Eraser is distributed in the hope that it will be useful, but WITHOUT ANY 15 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR 16 * A PARTICULAR PURPOSE. See the GNU General Public License for more details. 17 * 18 * A copy of the GNU General Public License can be found at 19 * <http://www.gnu.org/licenses/>. 20 */ 21 22 using System; 2 23 using System.Collections.Generic; 3 24 using System.ComponentModel; … … 7 28 using System.Text; 8 29 using System.Windows.Forms; 30 using System.IO; 31 using Eraser.Util; 32 using Eraser.Util.ExtensionMethods; 9 33 10 34 namespace Eraser.Manager 11 35 { 12 public partial class UnusedSpaceErasureTargetSettings : UserControl 36 public partial class UnusedSpaceErasureTargetSettings : UserControl, IErasureTargetConfigurer 13 37 { 38 /// <summary> 39 /// Represents an item in the list of drives. 40 /// </summary> 41 private class DriveItem 42 { 43 public override string ToString() 44 { 45 return Label; 46 } 47 48 /// <summary> 49 /// The drive selected. 50 /// </summary> 51 public string Drive; 52 53 /// <summary> 54 /// The label of the drive. 55 /// </summary> 56 public string Label; 57 58 /// <summary> 59 /// The icon of the drive. 60 /// </summary> 61 public Icon Icon; 62 } 63 14 64 public UnusedSpaceErasureTargetSettings() 15 65 { 16 66 InitializeComponent(); 67 68 //Populate the drives list 69 foreach (VolumeInfo volume in VolumeInfo.Volumes.Concat(VolumeInfo.NetworkDrives)) 70 { 71 DriveType driveType = volume.VolumeType; 72 if (driveType != DriveType.Unknown && 73 driveType != DriveType.NoRootDirectory && 74 driveType != DriveType.CDRom) 75 { 76 //Skip drives which are not mounted: we cannot erase their unused space. 77 if (!volume.IsMounted) 78 continue; 79 80 DriveItem item = new DriveItem(); 81 string volumePath = volume.MountPoints[0]; 82 DirectoryInfo root = new DirectoryInfo(volumePath); 83 84 item.Drive = volumePath; 85 item.Label = root.GetDescription(); 86 item.Icon = root.GetIcon(); 87 unusedDisk.Items.Add(item); 88 } 89 } 90 91 if (unusedDisk.Items.Count != 0) 92 unusedDisk.SelectedIndex = 0; 93 } 94 95 #region IErasureTargetConfigurer Members 96 97 public void LoadFrom(ErasureTarget target) 98 { 99 UnusedSpaceTarget unused = target as UnusedSpaceTarget; 100 if (unused == null) 101 throw new ArgumentException("The provided erasure target type is not " + 102 "supported by this configurer."); 103 104 foreach (object item in unusedDisk.Items) 105 if (((DriveItem)item).Drive == unused.Drive) 106 unusedDisk.SelectedItem = item; 107 unusedClusterTips.Checked = unused.EraseClusterTips; 108 } 109 110 public bool SaveTo(ErasureTarget target) 111 { 112 UnusedSpaceTarget unused = target as UnusedSpaceTarget; 113 if (unused == null) 114 throw new ArgumentException("The provided erasure target type is not " + 115 "supported by this configurer."); 116 117 unused.Drive = ((DriveItem)unusedDisk.SelectedItem).Drive; 118 unused.EraseClusterTips = unusedClusterTips.Checked; 119 return true; 120 } 121 122 #endregion 123 124 private void unusedDisk_DrawItem(object sender, DrawItemEventArgs e) 125 { 126 if (e.Index == -1) 127 return; 128 129 Graphics g = e.Graphics; 130 DriveItem item = (DriveItem)unusedDisk.Items[e.Index]; 131 Color textColour = e.ForeColor; 132 PointF textPos = e.Bounds.Location; 133 textPos.X += item.Icon.Width + 4; 134 textPos.Y += 2; 135 136 //Set the text colour and background colour if the control is disabled 137 if ((e.State & DrawItemState.Disabled) == 0) 138 e.DrawBackground(); 139 else 140 { 141 g.FillRectangle(new SolidBrush(SystemColors.ButtonFace), e.Bounds); 142 textColour = SystemColors.GrayText; 143 } 144 145 g.DrawIcon(item.Icon, e.Bounds.X + 2, e.Bounds.Y); 146 g.DrawString(item.Label, e.Font, new SolidBrush(textColour), textPos); 147 if ((e.State & DrawItemState.Focus) != 0) 148 e.DrawFocusRectangle(); 17 149 } 18 150 } -
trunk/eraser/Eraser/Strings.en.resx
r1996 r2024 289 289 <value>The new randomness data source will only be used when the next task is run.\nCurrently running tasks will use the old source.</value> 290 290 </data> 291 <data name="The erasure target type could be configured, but it does not provide a user interface for configuring." xml:space="preserve"> 292 <value>The erasure target type could be configured, but it does not provide a user interface for configuring.</value> 293 </data> 294 <data name="Select Data to Erase " xml:space="preserve"> 295 <value>Select Data to Erase</value> 296 </data> 291 297 <data name="The erasure method selected does not support unused disk space erasures." xml:space="preserve"> 292 298 <value>The erasure method selected does not support unused disk space erasures.</value> 293 299 </data> 294 <data name="Invalid file path" xml:space="preserve">295 <value>Invalid file path</value>296 </data>297 <data name="Invalid folder path" xml:space="preserve">298 <value>Invalid folder path</value>299 </data>300 300 <data name="(default)" xml:space="preserve"> 301 301 <value>(default)</value> -
trunk/eraser/Eraser/Strings.it.resx
r1996 r2024 289 289 <value>La nuova sorgente dati casuali sarà usata solamente alla prossima esecuzione dell'operazione.\nLe operazioni attualmente in esecuzione useranno la precedente sorgente.</value> 290 290 </data> 291 <data name="The erasure target type could be configured, but it does not provide a user interface for configuring." xml:space="preserve"> 292 <value>(Untranslated)</value> 293 </data> 294 <data name="Select Data to Erase " xml:space="preserve"> 295 <value>(Untranslated)</value> 296 </data> 291 297 <data name="The erasure method selected does not support unused disk space erasures." xml:space="preserve"> 292 298 <value>Il metodo di pulizia selezionato non consente la pulizia dello spazio libero.</value> 293 299 </data> 294 <data name="Invalid file path" xml:space="preserve">295 <value>Percorso del file non valido</value>296 </data>297 <data name="Invalid folder path" xml:space="preserve">298 <value>Percorso della cartella non valido</value>299 </data>300 300 <data name="(default)" xml:space="preserve"> 301 301 <value>(Untranslated)</value> -
trunk/eraser/Eraser/Strings.nl.resx
r1996 r2024 289 289 <value>(Untranslated)</value> 290 290 </data> 291 <data name="The erasure target type could be configured, but it does not provide a user interface for configuring." xml:space="preserve"> 292 <value>(Untranslated)</value> 293 </data> 294 <data name="Select Data to Erase " xml:space="preserve"> 295 <value>(Untranslated)</value> 296 </data> 291 297 <data name="The erasure method selected does not support unused disk space erasures." xml:space="preserve"> 292 298 <value>Deze geselecteerde wis methode kan geen ongebruikte schijfruimte te wissen.</value> 293 299 </data> 294 <data name="Invalid file path" xml:space="preserve">295 <value>Foutief bestand</value>296 </data>297 <data name="Invalid folder path" xml:space="preserve">298 <value>Foutieve folder</value>299 </data>300 300 <data name="(default)" xml:space="preserve"> 301 301 <value>(Untranslated)</value> -
trunk/eraser/Eraser/Strings.pl.resx
r1996 r2024 289 289 <value>Nowe źródło danych losowych zostanie użyte przy następnym zadaniu.\nObecne zadanie korzysta ze starego źródła.</value> 290 290 </data> 291 <data name="The erasure target type could be configured, but it does not provide a user interface for configuring." xml:space="preserve"> 292 <value>(Untranslated)</value> 293 </data> 294 <data name="Select Data to Erase " xml:space="preserve"> 295 <value>(Untranslated)</value> 296 </data> 291 297 <data name="The erasure method selected does not support unused disk space erasures." xml:space="preserve"> 292 298 <value>Wybrana metoda, nie wspiera wymazywania nieużywanego miejsca.</value> 293 299 </data> 294 <data name="Invalid file path" xml:space="preserve">295 <value>Niewłaściwa ścieżka pliku</value>296 </data>297 <data name="Invalid folder path" xml:space="preserve">298 <value>Niewłaściwa ścieżka katalogu</value>299 </data>300 300 <data name="(default)" xml:space="preserve"> 301 301 <value>(domyślny)</value> -
trunk/eraser/Eraser/Strings.resx
r1996 r2024 289 289 <value>The new randomness data source will only be used when the next task is run.\nCurrently running tasks will use the old source.</value> 290 290 </data> 291 <data name="The erasure target type could be configured, but it does not provide a user interface for configuring." xml:space="preserve"> 292 <value>The erasure target type could be configured, but it does not provide a user interface for configuring.</value> 293 </data> 294 <data name="Select Data to Erase " xml:space="preserve"> 295 <value>Select Data to Erase </value> 296 </data> 291 297 <data name="The erasure method selected does not support unused disk space erasures." xml:space="preserve"> 292 298 <value>The erasure method selected does not support unused disk space erasures.</value> 293 299 </data> 294 <data name="Invalid file path" xml:space="preserve">295 <value>Invalid file path</value>296 </data>297 <data name="Invalid folder path" xml:space="preserve">298 <value>Invalid folder path</value>299 </data>300 300 <data name="(default)" xml:space="preserve"> 301 301 <value>(default)</value> -
trunk/eraser/Eraser/TaskDataSelectionForm.Designer.cs
r1675 r2024 52 52 this.components = new System.ComponentModel.Container(); 53 53 System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TaskDataSelectionForm)); 54 this.file = new System.Windows.Forms.RadioButton();55 this.folder = new System.Windows.Forms.RadioButton();56 this.unused = new System.Windows.Forms.RadioButton();57 this.filePath = new System.Windows.Forms.TextBox();58 this.fileBrowse = new System.Windows.Forms.Button();59 this.folderPath = new System.Windows.Forms.TextBox();60 this.folderBrowse = new System.Windows.Forms.Button();61 this.folderIncludeLbl = new System.Windows.Forms.Label();62 this.folderInclude = new System.Windows.Forms.TextBox();63 this.folderExcludeLbl = new System.Windows.Forms.Label();64 this.folderExclude = new System.Windows.Forms.TextBox();65 this.folderDelete = new System.Windows.Forms.CheckBox();66 this.unusedDisk = new System.Windows.Forms.ComboBox();67 54 this.methodLbl = new System.Windows.Forms.Label(); 68 this.method = new System.Windows.Forms.ComboBox();55 this.methodCmb = new System.Windows.Forms.ComboBox(); 69 56 this.ok = new System.Windows.Forms.Button(); 70 57 this.cancel = new System.Windows.Forms.Button(); 71 this.fileDialog = new System.Windows.Forms.OpenFileDialog();72 this.folderDialog = new System.Windows.Forms.FolderBrowserDialog();73 58 this.errorProvider = new System.Windows.Forms.ErrorProvider(this.components); 74 this.unusedClusterTips = new System.Windows.Forms.CheckBox(); 75 this.recycleBin = new System.Windows.Forms.RadioButton(); 59 this.typeLbl = new System.Windows.Forms.Label(); 60 this.typeCmb = new System.Windows.Forms.ComboBox(); 61 this.typeSettingsPnl = new System.Windows.Forms.Panel(); 76 62 ((System.ComponentModel.ISupportInitialize)(this.errorProvider)).BeginInit(); 77 63 this.SuspendLayout(); 78 //79 // file80 //81 resources.ApplyResources(this.file, "file");82 this.file.Name = "file";83 this.file.TabStop = true;84 this.file.UseVisualStyleBackColor = true;85 this.file.CheckedChanged += new System.EventHandler(this.data_CheckedChanged);86 //87 // folder88 //89 resources.ApplyResources(this.folder, "folder");90 this.folder.Name = "folder";91 this.folder.TabStop = true;92 this.folder.UseVisualStyleBackColor = true;93 this.folder.CheckedChanged += new System.EventHandler(this.data_CheckedChanged);94 //95 // unused96 //97 resources.ApplyResources(this.unused, "unused");98 this.unused.Name = "unused";99 this.unused.TabStop = true;100 this.unused.UseVisualStyleBackColor = true;101 this.unused.CheckedChanged += new System.EventHandler(this.data_CheckedChanged);102 //103 // filePath104 //105 resources.ApplyResources(this.filePath, "filePath");106 this.filePath.Name = "filePath";107 //108 // fileBrowse109 //110 resources.ApplyResources(this.fileBrowse, "fileBrowse");111 this.fileBrowse.Name = "fileBrowse";112 this.fileBrowse.UseVisualStyleBackColor = true;113 this.fileBrowse.Click += new System.EventHandler(this.fileBrowse_Click);114 //115 // folderPath116 //117 resources.ApplyResources(this.folderPath, "folderPath");118 this.folderPath.Name = "folderPath";119 //120 // folderBrowse121 //122 resources.ApplyResources(this.folderBrowse, "folderBrowse");123 this.folderBrowse.Name = "folderBrowse";124 this.folderBrowse.UseVisualStyleBackColor = true;125 this.folderBrowse.Click += new System.EventHandler(this.folderBrowse_Click);126 //127 // folderIncludeLbl128 //129 resources.ApplyResources(this.folderIncludeLbl, "folderIncludeLbl");130 this.folderIncludeLbl.Name = "folderIncludeLbl";131 //132 // folderInclude133 //134 resources.ApplyResources(this.folderInclude, "folderInclude");135 this.folderInclude.Name = "folderInclude";136 //137 // folderExcludeLbl138 //139 resources.ApplyResources(this.folderExcludeLbl, "folderExcludeLbl");140 this.folderExcludeLbl.Name = "folderExcludeLbl";141 //142 // folderExclude143 //144 resources.ApplyResources(this.folderExclude, "folderExclude");145 this.folderExclude.Name = "folderExclude";146 //147 // folderDelete148 //149 resources.ApplyResources(this.folderDelete, "folderDelete");150 this.folderDelete.Checked = true;151 this.folderDelete.CheckState = System.Windows.Forms.CheckState.Checked;152 this.folderDelete.Name = "folderDelete";153 this.folderDelete.UseVisualStyleBackColor = true;154 //155 // unusedDisk156 //157 resources.ApplyResources(this.unusedDisk, "unusedDisk");158 this.unusedDisk.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;159 this.unusedDisk.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;160 this.unusedDisk.FormattingEnabled = true;161 this.unusedDisk.Name = "unusedDisk";162 this.unusedDisk.DrawItem += new System.Windows.Forms.DrawItemEventHandler(this.unusedDisk_DrawItem);163 64 // 164 65 // methodLbl … … 167 68 this.methodLbl.Name = "methodLbl"; 168 69 // 169 // method 70 // methodCmb 170 71 // 171 resources.ApplyResources(this.method, "method"); 172 this.method.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; 173 this.method.FormattingEnabled = true; 174 this.method.Name = "method"; 175 this.method.SelectedIndexChanged += new System.EventHandler(this.method_SelectedIndexChanged); 72 resources.ApplyResources(this.methodCmb, "methodCmb"); 73 this.methodCmb.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; 74 this.methodCmb.FormattingEnabled = true; 75 this.methodCmb.Name = "methodCmb"; 176 76 // 177 77 // ok … … 189 89 this.cancel.UseVisualStyleBackColor = true; 190 90 // 191 // fileDialog192 //193 resources.ApplyResources(this.fileDialog, "fileDialog");194 //195 // folderDialog196 //197 resources.ApplyResources(this.folderDialog, "folderDialog");198 this.folderDialog.ShowNewFolderButton = false;199 //200 91 // errorProvider 201 92 // 202 93 this.errorProvider.ContainerControl = this; 203 94 // 204 // unusedClusterTips95 // typeLbl 205 96 // 206 resources.ApplyResources(this.unusedClusterTips, "unusedClusterTips"); 207 this.unusedClusterTips.Checked = true; 208 this.unusedClusterTips.CheckState = System.Windows.Forms.CheckState.Checked; 209 this.unusedClusterTips.Name = "unusedClusterTips"; 210 this.unusedClusterTips.UseVisualStyleBackColor = true; 97 resources.ApplyResources(this.typeLbl, "typeLbl"); 98 this.typeLbl.Name = "typeLbl"; 211 99 // 212 // recycleBin100 // typeCmb 213 101 // 214 resources.ApplyResources(this.recycleBin, "recycleBin"); 215 this.recycleBin.Name = "recycleBin"; 216 this.recycleBin.TabStop = true; 217 this.recycleBin.UseVisualStyleBackColor = true; 218 this.recycleBin.CheckedChanged += new System.EventHandler(this.data_CheckedChanged); 102 resources.ApplyResources(this.typeCmb, "typeCmb"); 103 this.typeCmb.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; 104 this.typeCmb.FormattingEnabled = true; 105 this.typeCmb.Name = "typeCmb"; 106 this.typeCmb.SelectedIndexChanged += new System.EventHandler(this.typeCmb_SelectedIndexChanged); 107 // 108 // typeSettingsPnl 109 // 110 resources.ApplyResources(this.typeSettingsPnl, "typeSettingsPnl"); 111 this.typeSettingsPnl.Name = "typeSettingsPnl"; 219 112 // 220 113 // TaskDataSelectionForm … … 224 117 this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi; 225 118 this.CancelButton = this.cancel; 226 this.Controls.Add(this.recycleBin); 227 this.Controls.Add(this.unusedClusterTips); 119 this.Controls.Add(this.typeSettingsPnl); 120 this.Controls.Add(this.typeCmb); 121 this.Controls.Add(this.typeLbl); 228 122 this.Controls.Add(this.cancel); 229 123 this.Controls.Add(this.ok); 230 this.Controls.Add(this.method );124 this.Controls.Add(this.methodCmb); 231 125 this.Controls.Add(this.methodLbl); 232 this.Controls.Add(this.unusedDisk);233 this.Controls.Add(this.folderDelete);234 this.Controls.Add(this.folderExclude);235 this.Controls.Add(this.folderExcludeLbl);236 this.Controls.Add(this.folderInclude);237 this.Controls.Add(this.folderIncludeLbl);238 this.Controls.Add(this.folderBrowse);239 this.Controls.Add(this.folderPath);240 this.Controls.Add(this.fileBrowse);241 this.Controls.Add(this.filePath);242 this.Controls.Add(this.unused);243 this.Controls.Add(this.folder);244 this.Controls.Add(this.file);245 126 this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; 246 127 this.MaximizeBox = false; … … 256 137 #endregion 257 138 258 private System.Windows.Forms.RadioButton file;259 private System.Windows.Forms.RadioButton folder;260 private System.Windows.Forms.RadioButton unused;261 private System.Windows.Forms.TextBox filePath;262 private System.Windows.Forms.Button fileBrowse;263 private System.Windows.Forms.TextBox folderPath;264 private System.Windows.Forms.Button folderBrowse;265 private System.Windows.Forms.Label folderIncludeLbl;266 private System.Windows.Forms.TextBox folderInclude;267 private System.Windows.Forms.Label folderExcludeLbl;268 private System.Windows.Forms.TextBox folderExclude;269 private System.Windows.Forms.CheckBox folderDelete;270 private System.Windows.Forms.ComboBox unusedDisk;271 139 private System.Windows.Forms.Label methodLbl; 272 private System.Windows.Forms.ComboBox method ;140 private System.Windows.Forms.ComboBox methodCmb; 273 141 private System.Windows.Forms.Button ok; 274 142 private System.Windows.Forms.Button cancel; 275 private System.Windows.Forms.OpenFileDialog fileDialog;276 private System.Windows.Forms.FolderBrowserDialog folderDialog;277 143 private System.Windows.Forms.ErrorProvider errorProvider; 278 private System.Windows.Forms.CheckBox unusedClusterTips; 279 private System.Windows.Forms.RadioButton recycleBin; 144 private System.Windows.Forms.ComboBox typeCmb; 145 private System.Windows.Forms.Label typeLbl; 146 private System.Windows.Forms.Panel typeSettingsPnl; 280 147 } 281 148 } -
trunk/eraser/Eraser/TaskDataSelectionForm.cs
r2020 r2024 38 38 public partial class TaskDataSelectionForm : Form 39 39 { 40 private class DriveItem40 private class ErasureType 41 41 { 42 public ErasureType(string name, ErasureTarget target) 43 { 44 Name = name; 45 Target = target; 46 } 47 42 48 public override string ToString() 43 49 { 44 return Label;50 return Name; 45 51 } 46 52 47 public string Drive; 48 public string Label; 49 public Icon Icon; 53 public string Name; 54 public ErasureTarget Target; 55 56 /// <summary> 57 /// The configurer returned by the active erasure target type. 58 /// </summary> 59 public IErasureTargetConfigurer Configurer; 50 60 } 51 61 … … 55 65 InitializeComponent(); 56 66 Theming.ApplyTheme(this); 57 file.Checked = true;58 67 59 //Populate the drives list 60 foreach (VolumeInfo volume in VolumeInfo.Volumes.Concat(VolumeInfo.NetworkDrives)) 61 { 62 DriveType driveType = volume.VolumeType; 63 if (driveType != DriveType.Unknown && 64 driveType != DriveType.NoRootDirectory && 65 driveType != DriveType.CDRom) 66 { 67 //Skip drives which are not mounted: we cannot erase their unused space. 68 if (!volume.IsMounted) 69 continue; 68 //Insert the types of erasure targets 69 typeCmb.Items.Add(new ErasureType("File", new FileTarget())); 70 typeCmb.Items.Add(new ErasureType("Files in Folder", new FolderTarget())); 71 typeCmb.Items.Add(new ErasureType("Unused disk space", new UnusedSpaceTarget())); 72 typeCmb.Items.Add(new ErasureType("Recycle Bin", new RecycleBinTarget())); 73 typeCmb.SelectedIndex = 0; 70 74 71 DriveItem item = new DriveItem(); 72 string volumePath = volume.MountPoints[0]; 73 DirectoryInfo root = new DirectoryInfo(volumePath); 74 75 item.Drive = volumePath; 76 item.Label = root.GetDescription(); 77 item.Icon = root.GetIcon(); 78 unusedDisk.Items.Add(item); 79 } 80 } 81 82 if (unusedDisk.Items.Count != 0) 83 unusedDisk.SelectedIndex = 0; 84 75 85 76 //And the methods list 86 this.method .Items.Add(ErasureMethodRegistrar.Default);77 this.methodCmb.Items.Add(ErasureMethodRegistrar.Default); 87 78 foreach (ErasureMethod method in ManagerLibrary.Instance.ErasureMethodRegistrar) 88 this.method .Items.Add(method);89 if (this.method .Items.Count != 0)90 this.method .SelectedIndex = 0;79 this.methodCmb.Items.Add(method); 80 if (this.methodCmb.Items.Count != 0) 81 this.methodCmb.SelectedIndex = 0; 91 82 } 92 83 … … 100 91 get 101 92 { 102 ErasureTarget result = null; 103 if (file.Checked) 104 { 105 FileTarget fileTask = new FileTarget(); 106 result = fileTask; 93 ErasureType type = (ErasureType)typeCmb.SelectedItem; 94 ErasureTarget result = type.Target; 95 type.Configurer.SaveTo(result); 96 result.Method = (ErasureMethod)methodCmb.SelectedItem; 107 97 108 fileTask.Path = filePath.Text;109 }110 else if (folder.Checked)111 {112 FolderTarget folderTask = new FolderTarget();113 result = folderTask;114 115 folderTask.Path = folderPath.Text;116 folderTask.IncludeMask = folderInclude.Text;117 folderTask.ExcludeMask = folderExclude.Text;118 folderTask.DeleteIfEmpty = folderDelete.Checked;119 }120 else if (unused.Checked)121 {122 UnusedSpaceTarget unusedSpaceTask = new UnusedSpaceTarget();123 result = unusedSpaceTask;124 125 unusedSpaceTask.Drive = ((DriveItem)unusedDisk.SelectedItem).Drive;126 unusedSpaceTask.EraseClusterTips = unusedClusterTips.Checked;127 }128 else129 {130 RecycleBinTarget recycleBinTask = new RecycleBinTarget();131 result = recycleBinTask;132 }133 134 result.Method = (ErasureMethod)this.method.SelectedItem;135 98 return result; 136 99 } … … 138 101 { 139 102 //Set the erasure method. 140 foreach (object item in method .Items)103 foreach (object item in methodCmb.Items) 141 104 if (((ErasureMethod)item).Guid == value.Method.Guid) 142 method .SelectedItem = item;105 methodCmb.SelectedItem = item; 143 106 144 //Then the data to be erased. 145 FileTarget fileTarget = value as FileTarget; 146 FolderTarget folderTarget = value as FolderTarget; 147 UnusedSpaceTarget unusedSpaceTarget = value as UnusedSpaceTarget; 107 //Set the active erasure type. 108 foreach (ErasureType type in typeCmb.Items) 109 { 110 if (type.Target.GetType() == value.GetType()) 111 { 112 typeCmb.SelectedItem = type; 148 113 149 if (fileTarget != null) 150 { 151 file.Checked = true; 152 filePath.Text = fileTarget.Path; 114 type.Target = value; 115 type.Configurer = value.Configurer; 116 if (type.Configurer != null) 117 type.Configurer.LoadFrom(value); 118 break; 119 } 153 120 } 154 else if (folderTarget != null)155 {156 folder.Checked = true;157 158 folderPath.Text = folderTarget.Path;159 folderInclude.Text = folderTarget.IncludeMask;160 folderExclude.Text = folderTarget.ExcludeMask;161 folderDelete.Checked = folderTarget.DeleteIfEmpty;162 }163 else if (unusedSpaceTarget != null)164 {165 unused.Checked = true;166 foreach (object item in unusedDisk.Items)167 if (((DriveItem)item).Drive == unusedSpaceTarget.Drive)168 unusedDisk.SelectedItem = item;169 unusedClusterTips.Checked = unusedSpaceTarget.EraseClusterTips;170 }171 else if (value is RecycleBinTarget)172 {173 recycleBin.Checked = true;174 }175 else176 throw new ArgumentException("Unknown erasure target.");177 121 } 178 122 } 179 123 180 private void method_SelectedIndexChanged(object sender, EventArgs e)124 private void typeCmb_SelectedIndexChanged(object sender, EventArgs e) 181 125 { 182 if (!(method.SelectedItem is UnusedSpaceErasureMethod) && 183 method.SelectedItem != ErasureMethodRegistrar.Default) 126 //Remove the old controls 127 while (typeSettingsPnl.Controls.Count > 0) 128 typeSettingsPnl.Controls.RemoveAt(0); 129 130 //Then add in the new configurer 131 ErasureType type = (ErasureType)typeCmb.SelectedItem; 132 if (type.Configurer == null) 184 133 { 185 if (unused.Checked) 186 { 187 file.Checked = true; 188 errorProvider.SetError(unused, S._("The erasure method selected does " + 189 "not support unused disk space erasures.")); 190 } 191 unused.Enabled = false; 134 type.Configurer = type.Target.Configurer; 135 if (type.Configurer == null) 136 return; 192 137 } 193 else if (!unused.Enabled)194 {195 unused.Enabled = true;196 errorProvider.Clear();197 }198 }199 138 200 private void data_CheckedChanged(object sender, EventArgs e) 201 { 202 filePath.Enabled = fileBrowse.Enabled = file.Checked; 203 folderPath.Enabled = folderBrowse.Enabled = folderIncludeLbl.Enabled = 204 folderInclude.Enabled = folderExcludeLbl.Enabled = folderExclude.Enabled = 205 folderDelete.Enabled = folder.Checked; 206 unusedDisk.Enabled = unusedClusterTips.Enabled = unused.Checked; 207 errorProvider.Clear(); 208 } 209 210 private void fileBrowse_Click(object sender, EventArgs e) 211 { 212 fileDialog.FileName = filePath.Text; 213 if (fileDialog.ShowDialog() == DialogResult.OK) 214 filePath.Text = fileDialog.FileName; 215 } 216 217 private void folderBrowse_Click(object sender, EventArgs e) 218 { 219 try 220 { 221 folderDialog.SelectedPath = folderPath.Text; 222 if (folderDialog.ShowDialog() == DialogResult.OK) 223 folderPath.Text = folderDialog.SelectedPath; 224 } 225 catch (NotSupportedException) 226 { 227 MessageBox.Show(this, S._("The path you selected is invalid."), S._("Eraser"), 139 if (!(type.Configurer is Control)) 140 MessageBox.Show(S._("The erasure target type could be configured, but it does " + 141 "not provide a user interface for configuring."), S._("Select Data to Erase "), 228 142 MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1, 229 143 Localisation.IsRightToLeft(this) ? 230 144 MessageBoxOptions.RtlReading | MessageBoxOptions.RightAlign : 0); 231 }232 }233 145 234 private void unusedDisk_DrawItem(object sender, DrawItemEventArgs e) 235 { 236 if (e.Index == -1) 237 return; 238 239 Graphics g = e.Graphics; 240 DriveItem item = (DriveItem)unusedDisk.Items[e.Index]; 241 Color textColour = e.ForeColor; 242 PointF textPos = e.Bounds.Location; 243 textPos.X += item.Icon.Width + 4; 244 textPos.Y += 2; 245 246 //Set the text colour and background colour if the control is disabled 247 if ((e.State & DrawItemState.Disabled) == 0) 248 e.DrawBackground(); 249 else 250 { 251 g.FillRectangle(new SolidBrush(SystemColors.ButtonFace), e.Bounds); 252 textColour = SystemColors.GrayText; 253 } 254 255 g.DrawIcon(item.Icon, e.Bounds.X + 2, e.Bounds.Y); 256 g.DrawString(item.Label, e.Font, new SolidBrush(textColour), textPos); 257 if ((e.State & DrawItemState.Focus) != 0) 258 e.DrawFocusRectangle(); 146 Control control = type.Configurer as Control; 147 typeSettingsPnl.Controls.Add(control); 148 control.Dock = DockStyle.Fill; 259 149 } 260 150 261 151 private void ok_Click(object sender, EventArgs e) 262 152 { 263 if (file.Checked && filePath.Text.Length == 0) 264 errorProvider.SetError(filePath, S._("Invalid file path")); 265 else if (folder.Checked && folderPath.Text.Length == 0) 266 errorProvider.SetError(folderPath, S._("Invalid folder path")); 267 else 153 ErasureType type = (ErasureType)typeCmb.SelectedItem; 154 if (methodCmb.SelectedItem != ErasureMethodRegistrar.Default && 155 !type.Target.SupportsMethod((ErasureMethod)methodCmb.SelectedItem)) 156 { 157 errorProvider.SetError(methodCmb, S._("The erasure method selected does " + 158 "not support unused disk space erasures.")); 159 } 160 else if (type.Configurer.SaveTo(type.Target)) 268 161 { 269 162 errorProvider.Clear(); -
trunk/eraser/Eraser/TaskDataSelectionForm.resx
r603 r2024 119 119 </resheader> 120 120 <assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 121 <data name="file.AutoSize" type="System.Boolean, mscorlib">122 <value>True</value>123 </data>124 <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />125 <data name="file.Location" type="System.Drawing.Point, System.Drawing">126 <value>8, 44</value>127 </data>128 <data name="file.Size" type="System.Drawing.Size, System.Drawing">129 <value>43, 19</value>130 </data>131 <data name="file.TabIndex" type="System.Int32, mscorlib">132 <value>3</value>133 </data>134 <data name="file.Text" xml:space="preserve">135 <value>File</value>136 </data>137 <data name=">>file.Name" xml:space="preserve">138 <value>file</value>139 </data>140 <data name=">>file.Type" xml:space="preserve">141 <value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>142 </data>143 <data name=">>file.Parent" xml:space="preserve">144 <value>$this</value>145 </data>146 <data name=">>file.ZOrder" xml:space="preserve">147 <value>18</value>148 </data>149 <data name="folder.AutoSize" type="System.Boolean, mscorlib">150 <value>True</value>151 </data>152 <data name="folder.Location" type="System.Drawing.Point, System.Drawing">153 <value>8, 98</value>154 </data>155 <data name="folder.Size" type="System.Drawing.Size, System.Drawing">156 <value>95, 19</value>157 </data>158 <data name="folder.TabIndex" type="System.Int32, mscorlib">159 <value>6</value>160 </data>161 <data name="folder.Text" xml:space="preserve">162 <value>Files in folder</value>163 </data>164 <data name=">>folder.Name" xml:space="preserve">165 <value>folder</value>166 </data>167 <data name=">>folder.Type" xml:space="preserve">168 <value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>169 </data>170 <data name=">>folder.Parent" xml:space="preserve">171 <value>$this</value>172 </data>173 <data name=">>folder.ZOrder" xml:space="preserve">174 <value>17</value>175 </data>176 <data name="unused.AutoSize" type="System.Boolean, mscorlib">177 <value>True</value>178 </data>179 <data name="unused.Location" type="System.Drawing.Point, System.Drawing">180 <value>8, 235</value>181 </data>182 <data name="unused.Size" type="System.Drawing.Size, System.Drawing">183 <value>122, 19</value>184 </data>185 <data name="unused.TabIndex" type="System.Int32, mscorlib">186 <value>14</value>187 </data>188 <data name="unused.Text" xml:space="preserve">189 <value>Unused disk space</value>190 </data>191 <data name=">>unused.Name" xml:space="preserve">192 <value>unused</value>193 </data>194 <data name=">>unused.Type" xml:space="preserve">195 <value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>196 </data>197 <data name=">>unused.Parent" xml:space="preserve">198 <value>$this</value>199 </data>200 <data name=">>unused.ZOrder" xml:space="preserve">201 <value>16</value>202 </data>203 <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />204 <data name="filePath.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">205 <value>Top, Left, Right</value>206 </data>207 <data name="filePath.Location" type="System.Drawing.Point, System.Drawing">208 <value>31, 69</value>209 </data>210 <data name="filePath.Size" type="System.Drawing.Size, System.Drawing">211 <value>206, 23</value>212 </data>213 <data name="filePath.TabIndex" type="System.Int32, mscorlib">214 <value>4</value>215 </data>216 <data name=">>filePath.Name" xml:space="preserve">217 <value>filePath</value>218 </data>219 <data name=">>filePath.Type" xml:space="preserve">220 <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>221 </data>222 <data name=">>filePath.Parent" xml:space="preserve">223 <value>$this</value>224 </data>225 <data name=">>filePath.ZOrder" xml:space="preserve">226 <value>15</value>227 </data>228 <data name="fileBrowse.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">229 <value>Top, Right</value>230 </data>231 <data name="fileBrowse.Location" type="System.Drawing.Point, System.Drawing">232 <value>243, 68</value>233 </data>234 <data name="fileBrowse.Size" type="System.Drawing.Size, System.Drawing">235 <value>75, 23</value>236 </data>237 <data name="fileBrowse.TabIndex" type="System.Int32, mscorlib">238 <value>5</value>239 </data>240 <data name="fileBrowse.Text" xml:space="preserve">241 <value>Browse...</value>242 </data>243 <data name=">>fileBrowse.Name" xml:space="preserve">244 <value>fileBrowse</value>245 </data>246 <data name=">>fileBrowse.Type" xml:space="preserve">247 <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>248 </data>249 <data name=">>fileBrowse.Parent" xml:space="preserve">250 <value>$this</value>251 </data>252 <data name=">>fileBrowse.ZOrder" xml:space="preserve">253 <value>14</value>254 </data>255 <data name="folderPath.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">256 <value>Top, Left, Right</value>257 </data>258 <data name="folderPath.Location" type="System.Drawing.Point, System.Drawing">259 <value>31, 123</value>260 </data>261 <data name="folderPath.Size" type="System.Drawing.Size, System.Drawing">262 <value>206, 23</value>263 </data>264 <data name="folderPath.TabIndex" type="System.Int32, mscorlib">265 <value>7</value>266 </data>267 <data name=">>folderPath.Name" xml:space="preserve">268 <value>folderPath</value>269 </data>270 <data name=">>folderPath.Type" xml:space="preserve">271 <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>272 </data>273 <data name=">>folderPath.Parent" xml:space="preserve">274 <value>$this</value>275 </data>276 <data name=">>folderPath.ZOrder" xml:space="preserve">277 <value>13</value>278 </data>279 <data name="folderBrowse.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">280 <value>Top, Right</value>281 </data>282 <data name="folderBrowse.Location" type="System.Drawing.Point, System.Drawing">283 <value>243, 123</value>284 </data>285 <data name="folderBrowse.Size" type="System.Drawing.Size, System.Drawing">286 <value>75, 23</value>287 </data>288 <data name="folderBrowse.TabIndex" type="System.Int32, mscorlib">289 <value>8</value>290 </data>291 <data name="folderBrowse.Text" xml:space="preserve">292 <value>Browse...</value>293 </data>294 <data name=">>folderBrowse.Name" xml:space="preserve">295 <value>folderBrowse</value>296 </data>297 <data name=">>folderBrowse.Type" xml:space="preserve">298 <value>System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>299 </data>300 <data name=">>folderBrowse.Parent" xml:space="preserve">301 <value>$this</value>302 </data>303 <data name=">>folderBrowse.ZOrder" xml:space="preserve">304 <value>12</value>305 </data>306 <data name="folderIncludeLbl.AutoSize" type="System.Boolean, mscorlib">307 <value>True</value>308 </data>309 <data name="folderIncludeLbl.Location" type="System.Drawing.Point, System.Drawing">310 <value>28, 155</value>311 </data>312 <data name="folderIncludeLbl.Size" type="System.Drawing.Size, System.Drawing">313 <value>80, 15</value>314 </data>315 <data name="folderIncludeLbl.TabIndex" type="System.Int32, mscorlib">316 <value>9</value>317 </data>318 <data name="folderIncludeLbl.Text" xml:space="preserve">319 <value>Include Mask:</value>320 </data>321 <data name=">>folderIncludeLbl.Name" xml:space="preserve">322 <value>folderIncludeLbl</value>323 </data>324 <data name=">>folderIncludeLbl.Type" xml:space="preserve">325 <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>326 </data>327 <data name=">>folderIncludeLbl.Parent" xml:space="preserve">328 <value>$this</value>329 </data>330 <data name=">>folderIncludeLbl.ZOrder" xml:space="preserve">331 <value>11</value>332 </data>333 <data name="folderInclude.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">334 <value>Top, Left, Right</value>335 </data>336 <data name="folderInclude.Location" type="System.Drawing.Point, System.Drawing">337 <value>129, 152</value>338 </data>339 <data name="folderInclude.Size" type="System.Drawing.Size, System.Drawing">340 <value>189, 23</value>341 </data>342 <data name="folderInclude.TabIndex" type="System.Int32, mscorlib">343 <value>10</value>344 </data>345 <data name=">>folderInclude.Name" xml:space="preserve">346 <value>folderInclude</value>347 </data>348 <data name=">>folderInclude.Type" xml:space="preserve">349 <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>350 </data>351 <data name=">>folderInclude.Parent" xml:space="preserve">352 <value>$this</value>353 </data>354 <data name=">>folderInclude.ZOrder" xml:space="preserve">355 <value>10</value>356 </data>357 <data name="folderExcludeLbl.AutoSize" type="System.Boolean, mscorlib">358 <value>True</value>359 </data>360 <data name="folderExcludeLbl.Location" type="System.Drawing.Point, System.Drawing">361 <value>28, 184</value>362 </data>363 <data name="folderExcludeLbl.Size" type="System.Drawing.Size, System.Drawing">364 <value>81, 15</value>365 </data>366 <data name="folderExcludeLbl.TabIndex" type="System.Int32, mscorlib">367 <value>11</value>368 </data>369 <data name="folderExcludeLbl.Text" xml:space="preserve">370 <value>Exclude Mask:</value>371 </data>372 <data name=">>folderExcludeLbl.Name" xml:space="preserve">373 <value>folderExcludeLbl</value>374 </data>375 <data name=">>folderExcludeLbl.Type" xml:space="preserve">376 <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>377 </data>378 <data name=">>folderExcludeLbl.Parent" xml:space="preserve">379 <value>$this</value>380 </data>381 <data name=">>folderExcludeLbl.ZOrder" xml:space="preserve">382 <value>9</value>383 </data>384 <data name="folderExclude.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">385 <value>Top, Left, Right</value>386 </data>387 <data name="folderExclude.Location" type="System.Drawing.Point, System.Drawing">388 <value>129, 181</value>389 </data>390 <data name="folderExclude.Size" type="System.Drawing.Size, System.Drawing">391 <value>189, 23</value>392 </data>393 <data name="folderExclude.TabIndex" type="System.Int32, mscorlib">394 <value>12</value>395 </data>396 <data name=">>folderExclude.Name" xml:space="preserve">397 <value>folderExclude</value>398 </data>399 <data name=">>folderExclude.Type" xml:space="preserve">400 <value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>401 </data>402 <data name=">>folderExclude.Parent" xml:space="preserve">403 <value>$this</value>404 </data>405 <data name=">>folderExclude.ZOrder" xml:space="preserve">406 <value>8</value>407 </data>408 <data name="folderDelete.AutoSize" type="System.Boolean, mscorlib">409 <value>True</value>410 </data>411 <data name="folderDelete.Location" type="System.Drawing.Point, System.Drawing">412 <value>31, 210</value>413 </data>414 <data name="folderDelete.Size" type="System.Drawing.Size, System.Drawing">415 <value>140, 19</value>416 </data>417 <data name="folderDelete.TabIndex" type="System.Int32, mscorlib">418 <value>13</value>419 </data>420 <data name="folderDelete.Text" xml:space="preserve">421 <value>Delete folder if empty</value>422 </data>423 <data name=">>folderDelete.Name" xml:space="preserve">424 <value>folderDelete</value>425 </data>426 <data name=">>folderDelete.Type" xml:space="preserve">427 <value>System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>428 </data>429 <data name=">>folderDelete.Parent" xml:space="preserve">430 <value>$this</value>431 </data>432 <data name=">>folderDelete.ZOrder" xml:space="preserve">433 <value>7</value>434 </data>435 <data name="unusedDisk.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">436 <value>Top, Left, Right</value>437 </data>438 <data name="unusedDisk.Location" type="System.Drawing.Point, System.Drawing">439 <value>31, 260</value>440 </data>441 <data name="unusedDisk.Size" type="System.Drawing.Size, System.Drawing">442 <value>287, 24</value>443 </data>444 <data name="unusedDisk.TabIndex" type="System.Int32, mscorlib">445 <value>15</value>446 </data>447 <data name=">>unusedDisk.Name" xml:space="preserve">448 <value>unusedDisk</value>449 </data>450 <data name=">>unusedDisk.Type" xml:space="preserve">451 <value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>452 </data>453 <data name=">>unusedDisk.Parent" xml:space="preserve">454 <value>$this</value>455 </data>456 <data name=">>unusedDisk.ZOrder" xml:space="preserve">457 <value>6</value>458 </data>459 121 <data name="methodLbl.AutoSize" type="System.Boolean, mscorlib"> 460 122 <value>True</value> 461 123 </data> 124 <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> 462 125 <data name="methodLbl.Location" type="System.Drawing.Point, System.Drawing"> 463 126 <value>5, 9</value> … … 482 145 </data> 483 146 <data name=">>methodLbl.ZOrder" xml:space="preserve"> 147 <value>6</value> 148 </data> 149 <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 150 <data name="methodCmb.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms"> 151 <value>Top, Left, Right</value> 152 </data> 153 <data name="methodCmb.Location" type="System.Drawing.Point, System.Drawing"> 154 <value>129, 6</value> 155 </data> 156 <data name="methodCmb.Size" type="System.Drawing.Size, System.Drawing"> 157 <value>189, 23</value> 158 </data> 159 <data name="methodCmb.TabIndex" type="System.Int32, mscorlib"> 160 <value>2</value> 161 </data> 162 <data name=">>methodCmb.Name" xml:space="preserve"> 163 <value>methodCmb</value> 164 </data> 165 <data name=">>methodCmb.Type" xml:space="preserve"> 166 <value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> 167 </data> 168 <data name=">>methodCmb.Parent" xml:space="preserve"> 169 <value>$this</value> 170 </data> 171 <data name=">>methodCmb.ZOrder" xml:space="preserve"> 484 172 <value>5</value> 485 </data>486 <data name="method.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">487 <value>Top, Left, Right</value>488 </data>489 <data name="method.Location" type="System.Drawing.Point, System.Drawing">490 <value>129, 6</value>491 </data>492 <data name="method.Size" type="System.Drawing.Size, System.Drawing">493 <value>189, 23</value>494 </data>495 <data name="method.TabIndex" type="System.Int32, mscorlib">496 <value>2</value>497 </data>498 <data name=">>method.Name" xml:space="preserve">499 <value>method</value>500 </data>501 <data name=">>method.Type" xml:space="preserve">502 <value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>503 </data>504 <data name=">>method.Parent" xml:space="preserve">505 <value>$this</value>506 </data>507 <data name=">>method.ZOrder" xml:space="preserve">508 <value>4</value>509 173 </data> 510 174 <data name="ok.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms"> … … 533 197 </data> 534 198 <data name=">>ok.ZOrder" xml:space="preserve"> 535 <value> 3</value>199 <value>4</value> 536 200 </data> 537 201 <data name="cancel.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms"> … … 560 224 </data> 561 225 <data name=">>cancel.ZOrder" xml:space="preserve"> 562 <value>2</value> 563 </data> 564 <metadata name="fileDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> 565 <value>17, 17</value> 566 </metadata> 567 <data name="fileDialog.Filter" xml:space="preserve"> 568 <value>All files (*.*)|*.*</value> 569 </data> 570 <metadata name="folderDialog.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> 571 <value>157, 17</value> 572 </metadata> 573 <data name="folderDialog.Description" xml:space="preserve"> 574 <value>Select a folder to erase.</value> 226 <value>3</value> 575 227 </data> 576 228 <metadata name="errorProvider.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> … … 586 238 <value>330, 375</value> 587 239 </data> 588 <data name="recycleBin.AutoSize" type="System.Boolean, mscorlib"> 240 <data name="typeSettingsPnl.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms"> 241 <value>Top, Bottom, Left, Right</value> 242 </data> 243 <data name="typeSettingsPnl.Location" type="System.Drawing.Point, System.Drawing"> 244 <value>8, 64</value> 245 </data> 246 <data name="typeSettingsPnl.Size" type="System.Drawing.Size, System.Drawing"> 247 <value>310, 270</value> 248 </data> 249 <data name="typeSettingsPnl.TabIndex" type="System.Int32, mscorlib"> 250 <value>22</value> 251 </data> 252 <data name=">>typeSettingsPnl.Name" xml:space="preserve"> 253 <value>typeSettingsPnl</value> 254 </data> 255 <data name=">>typeSettingsPnl.Type" xml:space="preserve"> 256 <value>System.Windows.Forms.Panel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> 257 </data> 258 <data name=">>typeSettingsPnl.Parent" xml:space="preserve"> 259 <value>$this</value> 260 </data> 261 <data name=">>typeSettingsPnl.ZOrder" xml:space="preserve"> 262 <value>0</value> 263 </data> 264 <data name="typeCmb.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms"> 265 <value>Top, Left, Right</value> 266 </data> 267 <data name="typeCmb.Location" type="System.Drawing.Point, System.Drawing"> 268 <value>129, 35</value> 269 </data> 270 <data name="typeCmb.Size" type="System.Drawing.Size, System.Drawing"> 271 <value>189, 23</value> 272 </data> 273 <data name="typeCmb.TabIndex" type="System.Int32, mscorlib"> 274 <value>21</value> 275 </data> 276 <data name=">>typeCmb.Name" xml:space="preserve"> 277 <value>typeCmb</value> 278 </data> 279 <data name=">>typeCmb.Type" xml:space="preserve"> 280 <value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> 281 </data> 282 <data name=">>typeCmb.Parent" xml:space="preserve"> 283 <value>$this</value> 284 </data> 285 <data name=">>typeCmb.ZOrder" xml:space="preserve"> 286 <value>1</value> 287 </data> 288 <data name="typeLbl.AutoSize" type="System.Boolean, mscorlib"> 589 289 <value>True</value> 590 290 </data> 591 <data name="recycleBin.Location" type="System.Drawing.Point, System.Drawing"> 592 <value>8, 315</value> 593 </data> 594 <data name="recycleBin.Size" type="System.Drawing.Size, System.Drawing"> 595 <value>85, 19</value> 596 </data> 597 <data name="recycleBin.TabIndex" type="System.Int32, mscorlib"> 598 <value>17</value> 599 </data> 600 <data name="recycleBin.Text" xml:space="preserve"> 601 <value>Recycle Bin</value> 602 </data> 603 <data name=">>recycleBin.Name" xml:space="preserve"> 604 <value>recycleBin</value> 605 </data> 606 <data name=">>recycleBin.Type" xml:space="preserve"> 607 <value>System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> 608 </data> 609 <data name=">>recycleBin.Parent" xml:space="preserve"> 610 <value>$this</value> 611 </data> 612 <data name=">>recycleBin.ZOrder" xml:space="preserve"> 613 <value>0</value> 614 </data> 615 <data name="unusedClusterTips.AutoSize" type="System.Boolean, mscorlib"> 616 <value>True</value> 617 </data> 618 <data name="unusedClusterTips.Location" type="System.Drawing.Point, System.Drawing"> 619 <value>31, 290</value> 620 </data> 621 <data name="unusedClusterTips.Size" type="System.Drawing.Size, System.Drawing"> 622 <value>113, 19</value> 623 </data> 624 <data name="unusedClusterTips.TabIndex" type="System.Int32, mscorlib"> 625 <value>16</value> 626 </data> 627 <data name="unusedClusterTips.Text" xml:space="preserve"> 628 <value>Erase cluster tips</value> 629 </data> 630 <data name=">>unusedClusterTips.Name" xml:space="preserve"> 631 <value>unusedClusterTips</value> 632 </data> 633 <data name=">>unusedClusterTips.Type" xml:space="preserve"> 634 <value>System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> 635 </data> 636 <data name=">>unusedClusterTips.Parent" xml:space="preserve"> 637 <value>$this</value> 638 </data> 639 <data name=">>unusedClusterTips.ZOrder" xml:space="preserve"> 640 <value>1</value> 291 <data name="typeLbl.Location" type="System.Drawing.Point, System.Drawing"> 292 <value>5, 38</value> 293 </data> 294 <data name="typeLbl.Size" type="System.Drawing.Size, System.Drawing"> 295 <value>70, 15</value> 296 </data> 297 <data name="typeLbl.TabIndex" type="System.Int32, mscorlib"> 298 <value>20</value> 299 </data> 300 <data name="typeLbl.Text" xml:space="preserve"> 301 <value>Target type:</value> 302 </data> 303 <data name=">>typeLbl.Name" xml:space="preserve"> 304 <value>typeLbl</value> 305 </data> 306 <data name=">>typeLbl.Type" xml:space="preserve"> 307 <value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> 308 </data> 309 <data name=">>typeLbl.Parent" xml:space="preserve"> 310 <value>$this</value> 311 </data> 312 <data name=">>typeLbl.ZOrder" xml:space="preserve"> 313 <value>2</value> 641 314 </data> 642 315 <data name="$this.Font" type="System.Drawing.Font, System.Drawing"> … … 649 322 <value>Select Data to Erase</value> 650 323 </data> 651 <data name=">>fileDialog.Name" xml:space="preserve">652 <value>fileDialog</value>653 </data>654 <data name=">>fileDialog.Type" xml:space="preserve">655 <value>System.Windows.Forms.OpenFileDialog, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>656 </data>657 <data name=">>folderDialog.Name" xml:space="preserve">658 <value>folderDialog</value>659 </data>660 <data name=">>folderDialog.Type" xml:space="preserve">661 <value>System.Windows.Forms.FolderBrowserDialog, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>662 </data>663 324 <data name=">>errorProvider.Name" xml:space="preserve"> 664 325 <value>errorProvider</value>
Note: See TracChangeset
for help on using the changeset viewer.
