From 7b6c2c184e891f7ff36c1cc9e64a5e7c78408003 Mon Sep 17 00:00:00 2001 From: Darth Affe Date: Sun, 15 Jul 2018 17:33:21 +0200 Subject: [PATCH] Updated RGB.NET and included new device-types --- KeyboardAudioVisualizer/ApplicationManager.cs | 16 +++++- .../KeyboardAudioVisualizer.csproj | 55 ++++++++++--------- .../UI/ConfigurationViewModel.cs | 4 +- KeyboardAudioVisualizer/packages.config | 37 ++++++++----- 4 files changed, 65 insertions(+), 47 deletions(-) diff --git a/KeyboardAudioVisualizer/ApplicationManager.cs b/KeyboardAudioVisualizer/ApplicationManager.cs index 66d1e62..45db39f 100644 --- a/KeyboardAudioVisualizer/ApplicationManager.cs +++ b/KeyboardAudioVisualizer/ApplicationManager.cs @@ -37,6 +37,8 @@ namespace KeyboardAudioVisualizer private readonly Dictionary> _groups = new Dictionary>(); + public TimerUpdateTrigger UpdateTrigger { get; } = new TimerUpdateTrigger(); + #endregion #region Commands @@ -61,8 +63,8 @@ namespace KeyboardAudioVisualizer { RGBSurface surface = RGBSurface.Instance; - surface.UpdateFrequency = 1.0 / MathHelper.Clamp(Settings.UpdateRate, 1, 60); - surface.UpdateMode = UpdateMode.Continuous; + UpdateTrigger.UpdateFrequency = 1.0 / MathHelper.Clamp(Settings.UpdateRate, 1, 60); + surface.RegisterUpdateTrigger(UpdateTrigger); LoadDevices(surface, CorsairDeviceProvider.Instance); LoadDevices(surface, CoolerMasterDeviceProvider.Instance); @@ -86,6 +88,7 @@ namespace KeyboardAudioVisualizer switch (device.DeviceInfo.DeviceType) { case RGBDeviceType.Keyboard: + case RGBDeviceType.Keypad: case RGBDeviceType.LedMatrix: ListLedGroup primary = new ListLedGroup(device); @@ -113,6 +116,7 @@ namespace KeyboardAudioVisualizer case RGBDeviceType.Mousepad: case RGBDeviceType.LedStripe: + case RGBDeviceType.HeadsetStand: ILedGroup left = new RectangleLedGroup(new Rectangle(device.Location.X, device.Location.Y, device.Size.Width / 2.0, device.Size.Height)); left.Brush = new LinearGradientBrush(new Point(0.5, 1), new Point(0.5, 0), tertiaryGradient); tertiaryGroups.Add((left, (visualizationType, visualizer) => CreateDecorator(visualizationType, visualizer, LevelBarDirection.Top, 0))); @@ -124,6 +128,11 @@ namespace KeyboardAudioVisualizer case RGBDeviceType.Mouse: case RGBDeviceType.Headset: + case RGBDeviceType.Speaker: + case RGBDeviceType.Fan: + case RGBDeviceType.GraphicsCard: + case RGBDeviceType.DRAM: + case RGBDeviceType.Mainboard: ILedGroup deviceGroup = new ListLedGroup(device); deviceGroup.Brush = new LinearGradientBrush(secondaryGradient); secondaryGroups.Add((deviceGroup, (visualizationType, visualizer) => CreateDecorator(visualizationType, visualizer))); @@ -145,7 +154,8 @@ namespace KeyboardAudioVisualizer { surface.LoadDevices(deviceProvider, RGBDeviceType.Keyboard | RGBDeviceType.LedMatrix | RGBDeviceType.Mousepad | RGBDeviceType.LedStripe - | RGBDeviceType.Mouse | RGBDeviceType.Headset); + | RGBDeviceType.Mouse | RGBDeviceType.Headset + | RGBDeviceType.HeadsetStand); } //TODO DarthAffe 12.09.2017: This is just a big mess - is this worth to rework before arge? diff --git a/KeyboardAudioVisualizer/KeyboardAudioVisualizer.csproj b/KeyboardAudioVisualizer/KeyboardAudioVisualizer.csproj index 3efd0a8..ebf0b07 100644 --- a/KeyboardAudioVisualizer/KeyboardAudioVisualizer.csproj +++ b/KeyboardAudioVisualizer/KeyboardAudioVisualizer.csproj @@ -47,8 +47,8 @@ ..\packages\Hardcodet.NotifyIcon.Wpf.1.0.8\lib\net451\Hardcodet.Wpf.TaskbarNotification.dll - - ..\packages\HidSharp.1.5\lib\net35\HidSharp.dll + + ..\packages\HidSharp.2.0.1\lib\net35\HidSharp.dll ..\packages\MathNet.Numerics.3.20.2\lib\net40\MathNet.Numerics.dll @@ -57,44 +57,45 @@ ..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll - ..\packages\RGB.NET.Brushes.0.0.1.35\lib\net45\RGB.NET.Brushes.dll + ..\packages\RGB.NET.Brushes.0.0.1.65\lib\net45\RGB.NET.Brushes.dll - ..\packages\RGB.NET.Core.0.0.1.35\lib\net45\RGB.NET.Core.dll + ..\packages\RGB.NET.Core.0.0.1.65\lib\net45\RGB.NET.Core.dll - ..\packages\RGB.NET.Decorators.0.0.1.35\lib\net45\RGB.NET.Decorators.dll + ..\packages\RGB.NET.Decorators.0.0.1.65\lib\net45\RGB.NET.Decorators.dll - ..\packages\RGB.NET.Devices.Asus.0.0.1.35\lib\net45\RGB.NET.Devices.Asus.dll + ..\packages\RGB.NET.Devices.Asus.0.0.1.65\lib\net45\RGB.NET.Devices.Asus.dll - ..\packages\RGB.NET.Devices.CoolerMaster.0.0.1.35\lib\net45\RGB.NET.Devices.CoolerMaster.dll + ..\packages\RGB.NET.Devices.CoolerMaster.0.0.1.65\lib\net45\RGB.NET.Devices.CoolerMaster.dll - ..\packages\RGB.NET.Devices.Corsair.0.0.1.35\lib\net45\RGB.NET.Devices.Corsair.dll + ..\packages\RGB.NET.Devices.Corsair.0.0.1.65\lib\net45\RGB.NET.Devices.Corsair.dll - ..\packages\RGB.NET.Devices.Logitech.0.0.1.35\lib\net45\RGB.NET.Devices.Logitech.dll + ..\packages\RGB.NET.Devices.Logitech.0.0.1.65\lib\net45\RGB.NET.Devices.Logitech.dll - ..\packages\RGB.NET.Devices.Msi.0.0.1.35\lib\net45\RGB.NET.Devices.Msi.dll + ..\packages\RGB.NET.Devices.Msi.0.0.1.41\lib\net45\RGB.NET.Devices.Msi.dll - ..\packages\RGB.NET.Devices.Novation.0.0.1.35\lib\net45\RGB.NET.Devices.Novation.dll + ..\packages\RGB.NET.Devices.Novation.0.0.1.65\lib\net45\RGB.NET.Devices.Novation.dll - ..\packages\RGB.NET.Devices.Razer.0.0.1.35\lib\net45\RGB.NET.Devices.Razer.dll + ..\packages\RGB.NET.Devices.Razer.0.0.1.65\lib\net45\RGB.NET.Devices.Razer.dll - ..\packages\RGB.NET.Groups.0.0.1.35\lib\net45\RGB.NET.Groups.dll + ..\packages\RGB.NET.Groups.0.0.1.65\lib\net45\RGB.NET.Groups.dll - - ..\packages\Sanford.Multimedia.Midi.6.5.0\lib\net20\Sanford.Multimedia.Midi.dll + + ..\packages\Sanford.Multimedia.Midi.Standard.6.6.0\lib\net35\Sanford.Multimedia.Midi.dll + ..\packages\System.ValueTuple.4.4.0\lib\net461\System.ValueTuple.dll @@ -328,21 +329,21 @@ - This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. - - - - - - + + + + + + - - - - - + + + + + + \ No newline at end of file diff --git a/KeyboardAudioVisualizer/UI/ConfigurationViewModel.cs b/KeyboardAudioVisualizer/UI/ConfigurationViewModel.cs index dffd4f1..4cbe0f7 100644 --- a/KeyboardAudioVisualizer/UI/ConfigurationViewModel.cs +++ b/KeyboardAudioVisualizer/UI/ConfigurationViewModel.cs @@ -15,12 +15,12 @@ namespace KeyboardAudioVisualizer.UI public double UpdateRate { - get => 1.0 / RGBSurface.Instance.UpdateFrequency; + get => 1.0 / ApplicationManager.Instance.UpdateTrigger.UpdateFrequency; set { double val = MathHelper.Clamp(value, 1, 60); ApplicationManager.Instance.Settings.UpdateRate = val; - RGBSurface.Instance.UpdateFrequency = 1.0 / val; + ApplicationManager.Instance.UpdateTrigger.UpdateFrequency = 1.0 / val; OnPropertyChanged(); } } diff --git a/KeyboardAudioVisualizer/packages.config b/KeyboardAudioVisualizer/packages.config index feec68e..5d1175b 100644 --- a/KeyboardAudioVisualizer/packages.config +++ b/KeyboardAudioVisualizer/packages.config @@ -2,23 +2,30 @@ - + - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file