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:
@@ -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); }
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user