Import / Export implementation complete now

This commit is contained in:
Jaex 2016-02-12 03:31:11 +02:00
parent 354996ca8a
commit 09df47979b
4 changed files with 42 additions and 32 deletions

View file

@ -460,6 +460,7 @@ private void btnExport_Click(object sender, EventArgs e)
TaskEx.Run(() =>
{
Program.SaveAllSettings();
ExportImportManager.Export(sfd.FileName);
},
() =>
@ -490,6 +491,7 @@ private void btnImport_Click(object sender, EventArgs e)
TaskEx.Run(() =>
{
ExportImportManager.Import(ofd.FileName);
Program.LoadAllSettings();
},
() =>
@ -503,7 +505,7 @@ private void btnImport_Click(object sender, EventArgs e)
btnImport.Enabled = true;
}
Program.MainForm.UpdateAll();
Program.MainForm.UpdateControls();
});
}
}

View file

@ -57,9 +57,6 @@ public MainForm()
private void MainForm_HandleCreated(object sender, EventArgs e)
{
UpdateControls();
InitHotkeys();
IsReady = true;
DebugHelper.WriteLine("Startup time: {0} ms", Program.StartTimer.ElapsedMilliseconds);
@ -173,8 +170,10 @@ private void InitializeControls()
HandleCreated += MainForm_HandleCreated;
}
private void UpdateControls()
public void UpdateControls()
{
IsReady = false;
niTray.Visible = Program.Settings.ShowTray;
if (Program.Settings.RecentLinksRemember)
@ -192,13 +191,8 @@ private void UpdateControls()
isPositionChanged = true;
}
// Adjust the menu width to the items
tsMain.Width = tsMain.PreferredSize.Width;
// Calculate the required height to view the whole menu
int height = Size.Height + tsMain.PreferredSize.Height - tsMain.Height;
// Set the minimum size of the form to prevent menu items from hidding
MinimumSize = new Size(MinimumSize.Width, height);
if (Program.Settings.RememberMainFormSize && !Program.Settings.MainFormSize.IsEmpty)
@ -214,7 +208,6 @@ private void UpdateControls()
}
else
{
// Adjust the size to the minimum if not loaded
Size = new Size(Size.Width, height);
}
@ -244,18 +237,10 @@ private void UpdateControls()
UpdateContextMenu();
UpdateToggleHotkeyButton();
AfterSettingsJobs();
}
public void UpdateAll()
{
UpdateControls();
InitHotkeys();
if (Program.HotkeyManager != null)
{
Program.HotkeyManager.UpdateHotkeys(Program.HotkeysConfig.Hotkeys, true);
}
UpdateWorkflowsMenu();
IsReady = true;
}
private void AfterShownJobs()
@ -1598,11 +1583,23 @@ private void InitHotkeys()
},
() =>
{
Program.HotkeyManager = new HotkeyManager(this, Program.HotkeysConfig.Hotkeys, !Program.NoHotkeys);
Program.HotkeyManager.HotkeyTrigger += HandleHotkeys;
if (Program.HotkeyManager == null)
{
Program.HotkeyManager = new HotkeyManager(this);
Program.HotkeyManager.HotkeyTrigger += HandleHotkeys;
}
Program.HotkeyManager.UpdateHotkeys(Program.HotkeysConfig.Hotkeys, !Program.NoHotkeys);
DebugHelper.WriteLine("HotkeyManager started");
Program.WatchFolderManager = new WatchFolderManager();
if (Program.WatchFolderManager == null)
{
Program.WatchFolderManager = new WatchFolderManager();
}
Program.WatchFolderManager.UpdateWatchFolders();
DebugHelper.WriteLine("WatchFolderManager started");
UpdateWorkflowsMenu();

View file

@ -46,13 +46,11 @@ public class HotkeyManager
private HotkeyForm hotkeyForm;
public HotkeyManager(HotkeyForm form, List<HotkeySettings> hotkeys, bool showFailedHotkeys)
public HotkeyManager(HotkeyForm form)
{
hotkeyForm = form;
hotkeyForm.HotkeyPress += hotkeyForm_HotkeyPress;
hotkeyForm.FormClosed += (sender, e) => hotkeyForm.InvokeSafe(() => UnregisterAllHotkeys(false));
UpdateHotkeys(hotkeys, showFailedHotkeys);
}
public void UpdateHotkeys(List<HotkeySettings> hotkeys, bool showFailedHotkeys)
@ -152,11 +150,14 @@ public void UnregisterHotkey(HotkeySettings hotkeySetting, bool removeFromList =
public void UnregisterAllHotkeys(bool removeFromList = true, bool temporary = false)
{
foreach (HotkeySettings hotkeySetting in Hotkeys.ToArray())
if (Hotkeys != null)
{
if (!temporary || (temporary && hotkeySetting.TaskSettings.Job != HotkeyType.DisableHotkeys))
foreach (HotkeySettings hotkeySetting in Hotkeys.ToArray())
{
UnregisterHotkey(hotkeySetting, removeFromList);
if (!temporary || (temporary && hotkeySetting.TaskSettings.Job != HotkeyType.DisableHotkeys))
{
UnregisterHotkey(hotkeySetting, removeFromList);
}
}
}
}

View file

@ -33,8 +33,13 @@ public class WatchFolderManager : IDisposable
{
public List<WatchFolder> WatchFolders { get; private set; }
public WatchFolderManager()
public void UpdateWatchFolders()
{
if (WatchFolders != null)
{
UnregisterAllWatchFolders();
}
WatchFolders = new List<WatchFolder>();
foreach (WatchFolderSettings defaultWatchFolderSetting in Program.DefaultTaskSettings.WatchFolderList)
@ -113,7 +118,7 @@ public void UpdateWatchFolderState(WatchFolderSettings watchFolderSetting)
}
}
public void Dispose()
public void UnregisterAllWatchFolders()
{
if (WatchFolders != null)
{
@ -126,5 +131,10 @@ public void Dispose()
}
}
}
public void Dispose()
{
UnregisterAllWatchFolders();
}
}
}