summaryrefslogtreecommitdiff
path: root/grapher/Models/Serialized/SettingsManager.cs
diff options
context:
space:
mode:
authora1xd <[email protected]>2020-09-25 18:46:04 -0400
committera1xd <[email protected]>2020-09-25 18:46:04 -0400
commitfd184b6ffeaf5b1d1dceb7de58a8ebb7c3d8c760 (patch)
tree4e00b478ac1d888c50beaa782733cf52c61d038b /grapher/Models/Serialized/SettingsManager.cs
parentMerge pull request #22 from JacobPalecki/GUI (diff)
downloadrawaccel-fd184b6ffeaf5b1d1dceb7de58a8ebb7c3d8c760.tar.xz
rawaccel-fd184b6ffeaf5b1d1dceb7de58a8ebb7c3d8c760.zip
add initial writer
move managed settings into wrapper move gui build into driver build dir
Diffstat (limited to 'grapher/Models/Serialized/SettingsManager.cs')
-rw-r--r--grapher/Models/Serialized/SettingsManager.cs41
1 files changed, 23 insertions, 18 deletions
diff --git a/grapher/Models/Serialized/SettingsManager.cs b/grapher/Models/Serialized/SettingsManager.cs
index cac2bd0..26160f5 100644
--- a/grapher/Models/Serialized/SettingsManager.cs
+++ b/grapher/Models/Serialized/SettingsManager.cs
@@ -1,6 +1,7 @@
using Newtonsoft.Json;
using System;
using System.Windows.Forms;
+using System.Threading;
namespace grapher.Models.Serialized
{
@@ -46,29 +47,28 @@ namespace grapher.Models.Serialized
#region Methods
- public void UpdateActiveSettings(DriverSettings settings, Action afterAccelSettingsUpdate = null)
+ public void UpdateActiveSettings(DriverSettings settings)
{
- settings.SendToDriverAndUpdate(ActiveAccel, () =>
- {
- RawAccelSettings.AccelerationSettings = settings;
- RawAccelSettings.GUISettings = new GUISettings
- {
- AutoWriteToDriverOnStartup = AutoWriteMenuItem.Checked,
- DPI = (int)DpiField.Data,
- PollRate = (int)PollRateField.Data,
- ShowLastMouseMove = ShowLastMouseMoveMenuItem.Checked,
- ShowVelocityAndGain = ShowVelocityAndGainMoveMenuItem.Checked,
- };
+ ActiveAccel.UpdateFromSettings(settings);
+ SendToDriver(settings);
- RawAccelSettings.Save();
+ RawAccelSettings.AccelerationSettings = settings;
+ RawAccelSettings.GUISettings = new GUISettings
+ {
+ AutoWriteToDriverOnStartup = AutoWriteMenuItem.Checked,
+ DPI = (int)DpiField.Data,
+ PollRate = (int)PollRateField.Data,
+ ShowLastMouseMove = ShowLastMouseMoveMenuItem.Checked,
+ ShowVelocityAndGain = ShowVelocityAndGainMoveMenuItem.Checked,
+ };
- afterAccelSettingsUpdate?.Invoke();
- });
+ RawAccelSettings.Save();
}
public void UpdateActiveAccelFromFileSettings(DriverSettings settings)
- {
- settings.SendToDriverAndUpdate(ActiveAccel);
+ {
+ ActiveAccel.UpdateFromSettings(settings);
+ SendToDriver(settings);
DpiField.SetToEntered(RawAccelSettings.GUISettings.DPI);
PollRateField.SetToEntered(RawAccelSettings.GUISettings.PollRate);
@@ -77,6 +77,11 @@ namespace grapher.Models.Serialized
ShowVelocityAndGainMoveMenuItem.Checked = RawAccelSettings.GUISettings.ShowVelocityAndGain;
}
+ public static void SendToDriver(DriverSettings settings)
+ {
+ new Thread(() => DriverInterop.SetActiveSettings(settings)).Start();
+ }
+
public void Startup()
{
if (RawAccelSettings.Exists())
@@ -97,7 +102,7 @@ namespace grapher.Models.Serialized
}
RawAccelSettings = new RawAccelSettings(
- DriverSettings.GetActive(),
+ DriverInterop.GetActiveSettings(),
new GUISettings
{
AutoWriteToDriverOnStartup = AutoWriteMenuItem.Checked,