IO-402 Power Mode Handling
This commit is contained in:
@@ -1,4 +1,5 @@
|
|||||||
using System;
|
using Microsoft.Win32;
|
||||||
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Configuration;
|
using System.Configuration;
|
||||||
using System.Data;
|
using System.Data;
|
||||||
@@ -21,6 +22,7 @@ namespace BodyshopPartner
|
|||||||
|
|
||||||
private void Application_Exit(object sender, ExitEventArgs e)
|
private void Application_Exit(object sender, ExitEventArgs e)
|
||||||
{
|
{
|
||||||
|
Utils.PowerModeEventHandler.DisposeEventHandler();
|
||||||
BodyshopPartner.Properties.Settings.Default.Save();
|
BodyshopPartner.Properties.Settings.Default.Save();
|
||||||
Utils.QuickBooksInterop.DisconnectFromQuickBooks();
|
Utils.QuickBooksInterop.DisconnectFromQuickBooks();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -400,6 +400,7 @@
|
|||||||
<Compile Include="Utils\JsonExtensions.cs" />
|
<Compile Include="Utils\JsonExtensions.cs" />
|
||||||
<Compile Include="Utils\LoginHelpers.cs" />
|
<Compile Include="Utils\LoginHelpers.cs" />
|
||||||
<Compile Include="Utils\Notifications.cs" />
|
<Compile Include="Utils\Notifications.cs" />
|
||||||
|
<Compile Include="Utils\PowerModeEventHandler.cs" />
|
||||||
<Compile Include="Utils\Queries\JobsQueries.cs" />
|
<Compile Include="Utils\Queries\JobsQueries.cs" />
|
||||||
<Compile Include="Utils\Queries\VehicleQueries.cs" />
|
<Compile Include="Utils\Queries\VehicleQueries.cs" />
|
||||||
<Compile Include="Utils\QuickBooksInterop.cs" />
|
<Compile Include="Utils\QuickBooksInterop.cs" />
|
||||||
|
|||||||
42
BodyshopUploader/Utils/PowerModeEventHandler.cs
Normal file
42
BodyshopUploader/Utils/PowerModeEventHandler.cs
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
using Microsoft.Win32;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows;
|
||||||
|
|
||||||
|
namespace BodyshopPartner.Utils
|
||||||
|
{
|
||||||
|
public static class PowerModeEventHandler
|
||||||
|
{
|
||||||
|
//public static event Microsoft.Win32.PowerModeChangedEventHandler PowerModeChanged;
|
||||||
|
private static NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger();
|
||||||
|
|
||||||
|
public static void InitEventHandler()
|
||||||
|
{
|
||||||
|
SystemEvents.PowerModeChanged += OnPowerModeChanged;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void OnPowerModeChanged(object sender, PowerModeChangedEventArgs e)
|
||||||
|
{
|
||||||
|
//Handle the event here.
|
||||||
|
if (e.Mode == PowerModes.Suspend)
|
||||||
|
{
|
||||||
|
logger.Debug("System is being suspended. Preparing...");
|
||||||
|
|
||||||
|
}
|
||||||
|
else if (e.Mode == PowerModes.Resume)
|
||||||
|
{
|
||||||
|
logger.Debug("System is no longer suspended. Restarting partner...");
|
||||||
|
Application.Current.MainWindow.UpdateLayout();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void DisposeEventHandler()
|
||||||
|
{
|
||||||
|
|
||||||
|
SystemEvents.PowerModeChanged -= OnPowerModeChanged;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -82,6 +82,7 @@ namespace BodyshopPartner.ViewModels
|
|||||||
Task.Run(() => Utils.HTTPServer.InitHttpServer(AddHttpStatus));
|
Task.Run(() => Utils.HTTPServer.InitHttpServer(AddHttpStatus));
|
||||||
Task.Run(() => updateCheck());
|
Task.Run(() => updateCheck());
|
||||||
StartAllFolderMonitors();
|
StartAllFolderMonitors();
|
||||||
|
Utils.PowerModeEventHandler.InitEventHandler();
|
||||||
_callingThread.ReportProgress(100);
|
_callingThread.ReportProgress(100);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user