Fixed an issue with the wizard re-displaying warnings

git-svn-id: https://duplicati.googlecode.com/svn/trunk@504 59da171f-624f-0410-aa54-27559c288bec
This commit is contained in:
kenneth.skovhede@gmail.com
2010-09-11 10:42:50 +00:00
parent 5bc2dc3d35
commit de357ec4bc
5 changed files with 215 additions and 60 deletions
+39 -1
View File
@@ -201,6 +201,14 @@ namespace Duplicati.Datamodel
private const string SELECTFILES_INCLUDEIMAGES = "Select Files - Include Images";
private const string SELECTFILES_INCLUDEAPPDATA = "Select Files - Include AppData";
private const string SELECTWHEN_WARNEDNOSCHEDULE = "Select When - Warned No Schedule";
private const string SELECTWHEN_WARNEDTOOMANYINCREMENTALS = "Select When - Warned Too Many Incrementals";
private const string SELECTWHEN_WARNEDNOINCREMENTALS = "Select When - Warned No Incrementals";
private const string PASSWORDSETTINGS_WARNEDNOPASSWORD = "Password Settings - Warned No Password";
private const string CLEANUPSETTINGS_WARNEDNOCLEANUP = "Cleanup Settings - Warned No Cleanup";
private Task m_owner;
public TaskExtensionWrapper(Task owner)
@@ -321,6 +329,36 @@ namespace Duplicati.Datamodel
get { return Duplicati.Library.Core.Utility.ParseBool(m_owner.TaskExtensionsLookup[SELECTFILES_INCLUDEAPPDATA], false); }
set { m_owner.TaskExtensionsLookup[SELECTFILES_INCLUDEAPPDATA] = value.ToString(); }
}
}
public bool SelectWhen_WarnedNoSchedule
{
get { return Duplicati.Library.Core.Utility.ParseBool(m_owner.TaskExtensionsLookup[SELECTWHEN_WARNEDNOSCHEDULE], false); }
set { m_owner.TaskExtensionsLookup[SELECTWHEN_WARNEDNOSCHEDULE] = value.ToString(); }
}
public bool SelectWhen_WarnedNoIncrementals
{
get { return Duplicati.Library.Core.Utility.ParseBool(m_owner.TaskExtensionsLookup[SELECTWHEN_WARNEDNOINCREMENTALS], false); }
set { m_owner.TaskExtensionsLookup[SELECTWHEN_WARNEDNOINCREMENTALS] = value.ToString(); }
}
public bool SelectWhen_WarnedTooManyIncrementals
{
get { return Duplicati.Library.Core.Utility.ParseBool(m_owner.TaskExtensionsLookup[SELECTWHEN_WARNEDTOOMANYINCREMENTALS], false); }
set { m_owner.TaskExtensionsLookup[SELECTWHEN_WARNEDTOOMANYINCREMENTALS] = value.ToString(); }
}
public bool PasswordSettings_WarnedNoPassword
{
get { return Duplicati.Library.Core.Utility.ParseBool(m_owner.TaskExtensionsLookup[PASSWORDSETTINGS_WARNEDNOPASSWORD], false); }
set { m_owner.TaskExtensionsLookup[PASSWORDSETTINGS_WARNEDNOPASSWORD] = value.ToString(); }
}
public bool CleanupSettings_WarnedNoCleanup
{
get { return Duplicati.Library.Core.Utility.ParseBool(m_owner.TaskExtensionsLookup[CLEANUPSETTINGS_WARNEDNOCLEANUP], false); }
set { m_owner.TaskExtensionsLookup[CLEANUPSETTINGS_WARNEDNOCLEANUP] = value.ToString(); }
}
}
}
}
@@ -32,8 +32,6 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
{
public partial class CleanupSettings : WizardControl
{
private bool m_warnedClean = false;
private WizardSettingsWrapper m_wrapper;
public CleanupSettings()
@@ -54,8 +52,6 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
void IncrementalSettings_PageLeave(object sender, PageChangedArgs args)
{
m_settings["Incremental:WarnedClean"] = m_warnedClean;
if (args.Direction == PageChangedDirection.Back)
return;
@@ -78,18 +74,16 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
}
}
if (!m_warnedClean && !(EnableCleanupDuration.Checked || EnableFullBackupClean.Checked))
if (!m_wrapper.CleanupSettingsUI.HasWarnedClean && !(EnableCleanupDuration.Checked || EnableFullBackupClean.Checked))
{
if (MessageBox.Show(this, Strings.CleanupSettings.DisabledCleanupWarning, Application.ProductName, MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning) != DialogResult.Yes)
{
args.Cancel = true;
return;
}
m_warnedClean = true;
m_wrapper.CleanupSettingsUI.HasWarnedClean = true;
}
m_settings["Incremental:WarnedClean"] = m_warnedClean;
m_wrapper.MaxFullBackups = EnableFullBackupClean.Checked ? (int)CleanFullBackupCount.Value : 0;
m_wrapper.BackupExpireInterval = EnableCleanupDuration.Checked ? CleanupDuration.Value : "";
m_wrapper.IgnoreFileTimestamps = IgnoreTimestamps.Checked;
@@ -101,7 +95,9 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
void IncrementalSettings_PageEnter(object sender, PageChangedArgs args)
{
m_wrapper = new WizardSettingsWrapper(m_settings);
bool hasWarnedClean = m_wrapper.CleanupSettingsUI.HasWarnedClean;
if (!m_valuesAutoLoaded)
{
if (m_wrapper.MaxFullBackups > 0)
@@ -111,7 +107,7 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
}
else
{
CleanFullBackupCount.Value = 0;
CleanFullBackupCount.Value = 4;
EnableFullBackupClean.Checked = false;
}
@@ -123,30 +119,29 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
IgnoreTimestamps.Checked = m_wrapper.IgnoreFileTimestamps;
}
if (m_settings.ContainsKey("Incremental:WarnedClean"))
m_warnedClean = (bool)m_settings["Incremental:WarnedClean"];
m_wrapper.CleanupSettingsUI.HasWarnedClean = hasWarnedClean;
}
private void EnableFullBackupClean_CheckedChanged(object sender, EventArgs e)
{
CleanFullBackupCount.Enabled = EnableFullBackupClean.Checked;
m_warnedClean = false;
m_wrapper.CleanupSettingsUI.HasWarnedClean = false;
}
private void EnableCleanupDuration_CheckedChanged(object sender, EventArgs e)
{
CleanupDuration.Enabled = EnableCleanupDuration.Checked;
m_warnedClean = false;
m_wrapper.CleanupSettingsUI.HasWarnedClean = false;
}
private void CleanFullBackupCount_ValueChanged(object sender, EventArgs e)
{
m_warnedClean = false;
m_wrapper.CleanupSettingsUI.HasWarnedClean = false;
}
private void CleanupDuration_ValueChanged(object sender, EventArgs e)
{
m_warnedClean = false;
m_wrapper.CleanupSettingsUI.HasWarnedClean = false;
}
}
@@ -32,7 +32,6 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
{
public partial class PasswordSettings : WizardControl
{
private bool m_warnedNoPassword = false;
private bool m_warnedChanged = false;
private bool m_settingsChanged = false;
private bool m_hasGeneratedNewPassword = false;
@@ -76,7 +75,6 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
void PasswordSettings_PageLeave(object sender, PageChangedArgs args)
{
m_settings["Password:WarnedNoPassword"] = m_warnedNoPassword;
m_settings["Password:WarnedChanged"] = m_warnedChanged;
m_settings["Password:SettingsChanged"] = m_settingsChanged;
m_settings["Password:NewPasswordGenerated"] = m_hasGeneratedNewPassword;
@@ -91,7 +89,7 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
return;
}
if (!m_warnedNoPassword && !EnablePassword.Checked && m_wrapper.PrimayAction == WizardSettingsWrapper.MainAction.Add)
if (!m_wrapper.PasswordSettingsUI.WarnedNoPassword && !EnablePassword.Checked && m_wrapper.PrimayAction == WizardSettingsWrapper.MainAction.Add)
{
if (MessageBox.Show(this, Strings.PasswordSettings.NoPasswordWarning, Application.ProductName, MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning) != DialogResult.Yes)
{
@@ -99,7 +97,7 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
return;
}
m_warnedNoPassword = true;
m_wrapper.PasswordSettingsUI.WarnedNoPassword = true;
}
if (EnablePassword.Checked)
@@ -144,7 +142,6 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
}
m_settings["Password:SettingsChanged"] = m_settingsChanged;
m_settings["Password:WarnedNoPassword"] = m_warnedNoPassword;
m_settings["Password:WarnedChanged"] = m_warnedChanged;
m_settings["Password:NewPasswordGenerated"] = m_hasGeneratedNewPassword;
@@ -173,6 +170,7 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
void PasswordSettings_PageEnter(object sender, PageChangedArgs args)
{
m_wrapper = new WizardSettingsWrapper(m_settings);
bool hasWarnedNoPassword = m_wrapper.PasswordSettingsUI.WarnedNoPassword;
if (!m_valuesAutoLoaded)
{
@@ -200,8 +198,7 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
EncryptionModule_SelectedIndexChanged(EncryptionModule, null);
m_settingsChanged = tmp;
if (m_settings.ContainsKey("Password:WarnedNoPassword"))
m_warnedNoPassword = (bool)m_settings["Password:WarnedNoPassword"];
m_wrapper.PasswordSettingsUI.WarnedNoPassword = hasWarnedNoPassword;
if (m_settings.ContainsKey("Password:WarnedChanged"))
m_warnedChanged = (bool)m_settings["Password:WarnedChanged"];
if (m_settings.ContainsKey("Password:SettingsChanged"))
@@ -223,7 +220,7 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
private void EnablePassword_CheckedChanged(object sender, EventArgs e)
{
Password.Enabled = EncryptionModule.Enabled = GeneratePasswordButton.Enabled = EncryptionControlContainer.Enabled = EnablePassword.Checked;
m_warnedNoPassword = false;
m_wrapper.PasswordSettingsUI.WarnedNoPassword = false;
m_settingsChanged = true;
}
@@ -263,7 +260,7 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
private void Password_TextChanged(object sender, EventArgs e)
{
m_settingsChanged = true;
m_warnedNoPassword = false;
m_wrapper.PasswordSettingsUI.WarnedNoPassword = false;
}
private void GeneratePasswordButton_Click(object sender, EventArgs e)
@@ -32,10 +32,6 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
{
public partial class SelectWhen : WizardControl
{
private bool m_hasWarnedNoSchedule;
private bool m_hasWarnedNotRecommendedIncremental;
private bool m_hasWarnedTooManyIncremental;
private WizardSettingsWrapper m_wrapper;
public SelectWhen()
@@ -49,24 +45,20 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
void SelectWhen_PageLeave(object sender, PageChangedArgs args)
{
m_settings["When:HasWarnedNoSchedule"] = m_hasWarnedNoSchedule;
m_settings["When:HasWarnedNotRecommendedIncremental"] = m_hasWarnedNotRecommendedIncremental;
m_settings["When:HasWarnedTooManyIncremental"] = m_hasWarnedTooManyIncremental;
if (args.Direction == PageChangedDirection.Back)
return;
if (!m_hasWarnedNoSchedule && NoScheduleRadio.Checked)
if (!m_wrapper.SelectWhenUI.HasWarnedNoSchedule && NoScheduleRadio.Checked)
{
if (MessageBox.Show(this, Strings.SelectWhen.NoScheduleWarning, Application.ProductName, MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button3) != DialogResult.Yes)
{
args.Cancel = true;
return;
}
m_hasWarnedNoSchedule = true;
m_wrapper.SelectWhenUI.HasWarnedNoSchedule = true;
}
if (!m_hasWarnedNotRecommendedIncremental && !IncrementalPeriodRadio.Checked)
if (!m_wrapper.SelectWhenUI.HasWarnedNoIncrementals && !IncrementalPeriodRadio.Checked)
{
string s = NeverFullRadio.Checked ? Strings.SelectWhen.OnlyIncrementalBackupsWarning : Strings.SelectWhen.OnlyFullBackupsWarning;
if (MessageBox.Show(this, s, Application.ProductName, MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button3) != DialogResult.Yes)
@@ -74,7 +66,7 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
args.Cancel = true;
return;
}
m_hasWarnedNoSchedule = true;
m_wrapper.SelectWhenUI.HasWarnedNoIncrementals = true;
}
DateTime scheduledTime = OffsetDate.Value.Date.Add(OffsetTime.Value.TimeOfDay);
@@ -130,7 +122,7 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
return;
}
if (!m_hasWarnedTooManyIncremental && fullDuration.Ticks / scheduleInterval.Ticks > 100)
if (!m_wrapper.SelectWhenUI.HasWarnedTooManyIncremental && fullDuration.Ticks / scheduleInterval.Ticks > 100)
{
if (MessageBox.Show(this, string.Format(Strings.SelectWhen.TooManyIncrementalsWarning,fullDuration.Ticks / scheduleInterval.Ticks), Application.ProductName, MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning) != DialogResult.Yes)
{
@@ -138,14 +130,10 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
return;
}
m_hasWarnedTooManyIncremental = true;
m_wrapper.SelectWhenUI.HasWarnedTooManyIncremental = true;
}
}
m_settings["When:HasWarnedNoSchedule"] = m_hasWarnedNoSchedule;
m_settings["When:HasWarnedNotRecommendedIncremental"] = m_hasWarnedNotRecommendedIncremental;
m_settings["When:HasWarnedTooManyIncremental"] = m_hasWarnedTooManyIncremental;
m_wrapper.BackupTimeOffset = scheduledTime;
if (ScheduleRadio.Checked)
{
@@ -190,6 +178,10 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
{
m_wrapper = new WizardSettingsWrapper(m_settings);
bool hasWarnedNoSchedule = m_wrapper.SelectWhenUI.HasWarnedNoSchedule;
bool HasWarnedTooManyIncremental = m_wrapper.SelectWhenUI.HasWarnedTooManyIncremental;
bool hasWarnedNoIncrementals = m_wrapper.SelectWhenUI.HasWarnedNoIncrementals;
DayOfWeek d = System.Globalization.CultureInfo.CurrentUICulture.DateTimeFormat.FirstDayOfWeek;
CheckBox[] chks = new CheckBox[] { Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday };
Label[] lbls = new Label[] { Day1Label, Day2Label, Day3Label, Day4Label, Day5Label, Day6Label, Day7Label };
@@ -245,52 +237,49 @@ namespace Duplicati.GUI.Wizard_pages.Add_backup
}
}
if (m_settings.ContainsKey("When:HasWarnedNoSchedule"))
m_hasWarnedNoSchedule = (bool)m_settings["When:HasWarnedNoSchedule"];
if (m_settings.ContainsKey("When:HasWarnedNotRecommendedIncremental"))
m_hasWarnedNotRecommendedIncremental = (bool)m_settings["When:HasWarnedNotRecommendedIncremental"];
if (m_settings.ContainsKey("When:HasWarnedTooManyIncremental"))
m_hasWarnedTooManyIncremental = (bool)m_settings["When:HasWarnedTooManyIncremental"];
m_wrapper.SelectWhenUI.HasWarnedNoSchedule = hasWarnedNoSchedule;
m_wrapper.SelectWhenUI.HasWarnedNoIncrementals = hasWarnedNoIncrementals;
m_wrapper.SelectWhenUI.HasWarnedTooManyIncremental = HasWarnedTooManyIncremental;
}
private void ScheduleRadio_CheckedChanged(object sender, EventArgs e)
{
m_hasWarnedNoSchedule = false;
m_hasWarnedTooManyIncremental = false;
m_wrapper.SelectWhenUI.HasWarnedNoSchedule = false;
m_wrapper.SelectWhenUI.HasWarnedTooManyIncremental = false;
ScheduleGroup.Enabled = ScheduleRadio.Checked;
}
private void NoScheduleRadio_CheckedChanged(object sender, EventArgs e)
{
m_hasWarnedNoSchedule = false;
m_wrapper.SelectWhenUI.HasWarnedNoSchedule = false;
}
private void IncrementalPeriodRadio_CheckedChanged(object sender, EventArgs e)
{
m_hasWarnedNotRecommendedIncremental = false;
m_hasWarnedTooManyIncremental = false;
m_wrapper.SelectWhenUI.HasWarnedNoIncrementals = false;
m_wrapper.SelectWhenUI.HasWarnedTooManyIncremental = false;
FullDuration.Enabled = IncrementalPeriodRadio.Checked;
}
private void NeverFullRadio_CheckedChanged(object sender, EventArgs e)
{
m_hasWarnedTooManyIncremental = false;
m_hasWarnedNotRecommendedIncremental = false;
m_wrapper.SelectWhenUI.HasWarnedTooManyIncremental = false;
m_wrapper.SelectWhenUI.HasWarnedNoIncrementals = false;
}
private void AlwaysFullRadio_CheckedChanged(object sender, EventArgs e)
{
m_hasWarnedNotRecommendedIncremental = false;
m_wrapper.SelectWhenUI.HasWarnedNoIncrementals = false;
}
private void RepeatInterval_ValueChanged(object sender, EventArgs e)
{
m_hasWarnedTooManyIncremental = false;
m_wrapper.SelectWhenUI.HasWarnedTooManyIncremental = false;
}
private void AllowedDay_CheckedChanged(object sender, EventArgs e)
{
m_hasWarnedTooManyIncremental = false;
m_wrapper.SelectWhenUI.HasWarnedTooManyIncremental = false;
}
}
}
@@ -29,6 +29,13 @@ namespace Duplicati.GUI.Wizard_pages
/// </summary>
public class WizardSettingsWrapper
{
/*
* Most of the properties in this class are just copies
* of the actual data object properties and most of this
* class could be removed if they mapped directly to
* the data objects instead.
*/
private Dictionary<string, object> m_settings;
private const string PREFIX = "WSW_";
@@ -149,6 +156,14 @@ namespace Duplicati.GUI.Wizard_pages
this.SelectFilesUI.IncludeImages = schedule.Task.Extensions.SelectFiles_IncludeImages;
this.SelectFilesUI.IncludeSettings = schedule.Task.Extensions.SelectFiles_IncludeAppData;
this.SelectWhenUI.HasWarnedNoSchedule = schedule.Task.Extensions.SelectWhen_WarnedNoSchedule;
this.SelectWhenUI.HasWarnedTooManyIncremental = schedule.Task.Extensions.SelectWhen_WarnedTooManyIncrementals;
this.SelectWhenUI.HasWarnedNoIncrementals = schedule.Task.Extensions.SelectWhen_WarnedNoIncrementals;
this.PasswordSettingsUI.WarnedNoPassword = schedule.Task.Extensions.PasswordSettings_WarnedNoPassword;
this.CleanupSettingsUI.HasWarnedClean = schedule.Task.Extensions.CleanupSettings_WarnedNoCleanup;
this.Overrides = new Dictionary<string, string>(schedule.Task.TaskOverridesLookup);
this.EncryptionSettings = new Dictionary<string, string>(schedule.Task.EncryptionSettingsLookup);
this.CompressionSettings = new Dictionary<string, string>(schedule.Task.CompressionSettingsLookup);
@@ -208,6 +223,14 @@ namespace Duplicati.GUI.Wizard_pages
schedule.Task.Extensions.SelectFiles_IncludeImages = this.SelectFilesUI.IncludeImages;
schedule.Task.Extensions.SelectFiles_IncludeAppData = this.SelectFilesUI.IncludeSettings;
schedule.Task.Extensions.SelectWhen_WarnedNoSchedule = this.SelectWhenUI.HasWarnedNoSchedule;
schedule.Task.Extensions.SelectWhen_WarnedTooManyIncrementals = this.SelectWhenUI.HasWarnedTooManyIncremental;
schedule.Task.Extensions.SelectWhen_WarnedNoIncrementals = this.SelectWhenUI.HasWarnedNoIncrementals;
schedule.Task.Extensions.PasswordSettings_WarnedNoPassword = this.PasswordSettingsUI.WarnedNoPassword;
schedule.Task.Extensions.CleanupSettings_WarnedNoCleanup = this.CleanupSettingsUI.HasWarnedClean;
SyncLookupTables(this.Overrides, schedule.Task.TaskOverridesLookup);
SyncLookupTables(this.EncryptionSettings, schedule.Task.EncryptionSettingsLookup);
@@ -650,6 +673,21 @@ namespace Duplicati.GUI.Wizard_pages
/// </summary>
public SelectFilesUI SelectFilesUI { get { return new SelectFilesUI(this); } }
/// <summary>
/// Gets a wrapper for the settings that are available on the SelectWhen UI
/// </summary>
public SelectWhenUI SelectWhenUI { get { return new SelectWhenUI(this); } }
/// <summary>
/// Gets a wrapper for the settings that are available on the CleanupSettings UI
/// </summary>
public CleanupSettingsUI CleanupSettingsUI { get { return new CleanupSettingsUI(this); } }
/// <summary>
/// Gets a wrapper for the settings that are available on the PasswordSettings UI
/// </summary>
public PasswordSettingsUI PasswordSettingsUI { get { return new PasswordSettingsUI(this); } }
/// <summary>
/// Gets all the encryption settings present on the task
/// </summary>
@@ -966,6 +1004,104 @@ namespace Duplicati.GUI.Wizard_pages
get { return m_parent.GetItem<bool>("UI:SelectFiles:IncludeSettings", true); }
set { m_parent.SetItem("UI:SelectFiles:IncludeSettings", value); }
}
}
/// <summary>
/// Represents a set of settings related to the SelectWhen wizard page
/// </summary>
public class SelectWhenUI
{
private WizardSettingsWrapper m_parent;
/// <summary>
/// Initializes a new instance of the <see cref="SelectWhenUI"/> class.
/// </summary>
/// <param name="parent">The parent.</param>
public SelectWhenUI(WizardSettingsWrapper parent)
{
m_parent = parent;
}
/// <summary>
/// Gets or sets a value indicating if the user has been warned that there is no schedule
/// </summary>
public bool HasWarnedNoSchedule
{
get { return m_parent.GetItem<bool>("UI:SelectWhen:HasWarnedNoSchedule", false); }
set { m_parent.SetItem("UI:SelectWhen:HasWarnedNoSchedule", value); }
}
/// <summary>
/// Gets or sets a value indicating if the user has been warned about not selecting incremental backups
/// </summary>
public bool HasWarnedNoIncrementals
{
get { return m_parent.GetItem<bool>("UI:SelectWhen:HasWarnedNoIncrementals", false); }
set { m_parent.SetItem("UI:SelectWhen:HasWarnedNoIncrementals", value); }
}
/// <summary>
/// Gets or sets a value indicating if the user has been warned that the settings generate too many incrementals
/// </summary>
public bool HasWarnedTooManyIncremental
{
get { return m_parent.GetItem<bool>("UI:SelectWhen:HasWarnedTooManyIncremental", false); }
set { m_parent.SetItem("UI:SelectWhen:HasWarnedTooManyIncremental", value); }
}
}
/// <summary>
/// Represents the persisted settings for the CleanupSettings UI
/// </summary>
public class CleanupSettingsUI
{
private WizardSettingsWrapper m_parent;
/// <summary>
/// Initializes a new instance of the <see cref="CleanupSettingsUI"/> class.
/// </summary>
/// <param name="parent">The parent.</param>
public CleanupSettingsUI(WizardSettingsWrapper parent)
{
m_parent = parent;
}
/// <summary>
/// Gets or sets a value indicating if the user has been warned that cleanup is disabled
/// </summary>
public bool HasWarnedClean
{
get { return m_parent.GetItem<bool>("UI:CleanupSettings:WarnedClean", false); }
set { m_parent.SetItem("UI:CleanupSettings:WarnedClean", value); }
}
}
/// <summary>
/// Represents a set of settings related to the SelectWhen wizard page
/// </summary>
public class PasswordSettingsUI
{
private WizardSettingsWrapper m_parent;
/// <summary>
/// Initializes a new instance of the <see cref="PasswordSettingsUI"/> class.
/// </summary>
/// <param name="parent">The parent.</param>
public PasswordSettingsUI(WizardSettingsWrapper parent)
{
m_parent = parent;
}
/// <summary>
/// Gets or sets a value indicating if the user has been warned that the backup is not encrypted
/// </summary>
public bool WarnedNoPassword
{
get { return m_parent.GetItem<bool>("UI:PasswordSettings:WarnedNoPassword", false); }
set { m_parent.SetItem("UI:PasswordSettings:WarnedNoPassword", value); }
}
}
}