Save all settings before export, Load all settings and update controls after import

This commit is contained in:
Jaex 2016-02-10 23:14:23 +02:00
parent eb0539a941
commit cf38ce1b93
4 changed files with 39 additions and 9 deletions

View file

@ -45,9 +45,12 @@ public TabControl MainTabControl
} }
set set
{ {
mainTabControl = value; if (mainTabControl != value)
FillTreeView(tvMain.Nodes, mainTabControl); {
tvMain.ExpandAll(); mainTabControl = value;
FillTreeView(tvMain.Nodes, mainTabControl);
tvMain.ExpandAll();
}
} }
} }

View file

@ -118,6 +118,7 @@ private void UpdateSettings()
cbExportSettings.Checked = Program.Settings.ExportSettings; cbExportSettings.Checked = Program.Settings.ExportSettings;
cbExportHistory.Checked = Program.Settings.ExportHistory; cbExportHistory.Checked = Program.Settings.ExportHistory;
cbExportLogs.Checked = Program.Settings.ExportLogs; cbExportLogs.Checked = Program.Settings.ExportLogs;
UpdateExportButton();
// Proxy // Proxy
if (firstLoad) if (firstLoad)
@ -285,6 +286,11 @@ private void UpdatePersonalFolderPathPreview()
lblPreviewPersonalFolderPath.Text = personalPath; lblPreviewPersonalFolderPath.Text = personalPath;
} }
private void UpdateExportButton()
{
btnExport.Enabled = Program.Settings.ExportSettings || Program.Settings.ExportHistory || Program.Settings.ExportLogs;
}
#region General #region General
private void llTranslators_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) private void llTranslators_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
@ -429,16 +435,19 @@ private void btnOpenScreenshotsFolder_Click(object sender, EventArgs e)
private void cbExportSettings_CheckedChanged(object sender, EventArgs e) private void cbExportSettings_CheckedChanged(object sender, EventArgs e)
{ {
Program.Settings.ExportSettings = cbExportSettings.Checked; Program.Settings.ExportSettings = cbExportSettings.Checked;
UpdateExportButton();
} }
private void cbExportHistory_CheckedChanged(object sender, EventArgs e) private void cbExportHistory_CheckedChanged(object sender, EventArgs e)
{ {
Program.Settings.ExportHistory = cbExportHistory.Checked; Program.Settings.ExportHistory = cbExportHistory.Checked;
UpdateExportButton();
} }
private void cbExportLogs_CheckedChanged(object sender, EventArgs e) private void cbExportLogs_CheckedChanged(object sender, EventArgs e)
{ {
Program.Settings.ExportLogs = cbExportLogs.Checked; Program.Settings.ExportLogs = cbExportLogs.Checked;
UpdateExportButton();
} }
private void btnExport_Click(object sender, EventArgs e) private void btnExport_Click(object sender, EventArgs e)
@ -455,7 +464,12 @@ private void btnExport_Click(object sender, EventArgs e)
btnImport.Enabled = false; btnImport.Enabled = false;
pbExportImport.Visible = true; pbExportImport.Visible = true;
TaskEx.Run(() => ExportImportManager.Export(sfd.FileName), () => TaskEx.Run(() =>
{
Program.SaveAllSettings();
ExportImportManager.Export(sfd.FileName);
},
() =>
{ {
pbExportImport.Visible = false; pbExportImport.Visible = false;
btnExport.Enabled = true; btnExport.Enabled = true;
@ -477,8 +491,14 @@ private void btnImport_Click(object sender, EventArgs e)
btnImport.Enabled = false; btnImport.Enabled = false;
pbExportImport.Visible = true; pbExportImport.Visible = true;
TaskEx.Run(() => ExportImportManager.Import(ofd.FileName), () => TaskEx.Run(() =>
{ {
ExportImportManager.Import(ofd.FileName);
Program.LoadAllSettings();
},
() =>
{
UpdateSettings();
pbExportImport.Visible = false; pbExportImport.Visible = false;
btnExport.Enabled = true; btnExport.Enabled = true;
btnImport.Enabled = true; btnImport.Enabled = true;

View file

@ -951,7 +951,7 @@ private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
{ {
e.Cancel = true; e.Cancel = true;
Hide(); Hide();
Program.SaveSettingsAsync(); Program.SaveAllSettingsAsync();
} }
} }

View file

@ -315,7 +315,7 @@ private static void Run()
Application.Run(MainForm); Application.Run(MainForm);
if (WatchFolderManager != null) WatchFolderManager.Dispose(); if (WatchFolderManager != null) WatchFolderManager.Dispose();
SaveSettings(); SaveAllSettings();
BackupSettings(); BackupSettings();
DebugHelper.Logger.Async = false; DebugHelper.Logger.Async = false;
@ -399,14 +399,21 @@ public static void LoadHotkeySettings()
HotkeysConfig = HotkeysConfig.Load(HotkeysConfigFilePath); HotkeysConfig = HotkeysConfig.Load(HotkeysConfigFilePath);
} }
public static void SaveSettings() public static void LoadAllSettings()
{
LoadProgramSettings();
LoadUploadersConfig();
LoadHotkeySettings();
}
public static void SaveAllSettings()
{ {
if (Settings != null) Settings.Save(ApplicationConfigFilePath); if (Settings != null) Settings.Save(ApplicationConfigFilePath);
if (UploadersConfig != null) UploadersConfig.Save(UploadersConfigFilePath); if (UploadersConfig != null) UploadersConfig.Save(UploadersConfigFilePath);
if (HotkeysConfig != null) HotkeysConfig.Save(HotkeysConfigFilePath); if (HotkeysConfig != null) HotkeysConfig.Save(HotkeysConfigFilePath);
} }
public static void SaveSettingsAsync() public static void SaveAllSettingsAsync()
{ {
if (Settings != null) Settings.SaveAsync(ApplicationConfigFilePath); if (Settings != null) Settings.SaveAsync(ApplicationConfigFilePath);
UploadersConfigSaveAsync(); UploadersConfigSaveAsync();