diff --git a/RGB.NET.Core/Devices/AbstractRGBDevice.cs b/RGB.NET.Core/Devices/AbstractRGBDevice.cs
index feefc99..5e74c61 100644
--- a/RGB.NET.Core/Devices/AbstractRGBDevice.cs
+++ b/RGB.NET.Core/Devices/AbstractRGBDevice.cs
@@ -4,7 +4,9 @@
using System;
using System.Collections;
using System.Collections.Generic;
+using System.IO;
using System.Linq;
+using RGB.NET.Core.Layout;
namespace RGB.NET.Core
{
@@ -46,7 +48,7 @@ namespace RGB.NET.Core
///
/// Gets a dictionary containing all of the .
///
- protected Dictionary LedMapping { get; } = new Dictionary();
+ protected Dictionary LedMapping { get; } = new Dictionary();
///
/// Gets a dictionary containing all associated with this .
@@ -56,7 +58,7 @@ namespace RGB.NET.Core
#region Indexer
///
- Led IRGBDevice.this[ILedId ledId] => LedMapping.TryGetValue(ledId, out Led led) ? led : null;
+ Led IRGBDevice.this[LedId ledId] => LedMapping.TryGetValue(ledId, out Led led) ? led : null;
///
Led IRGBDevice.this[Point location] => LedMapping.Values.FirstOrDefault(x => x.LedRectangle.Contains(location));
@@ -111,18 +113,66 @@ namespace RGB.NET.Core
///
/// Initializes the with the specified id.
///
- /// The to initialize.
+ /// The to initialize.
/// The representing the position of the to initialize.
///
- protected virtual Led InitializeLed(ILedId ledId, Rectangle ledRectangle)
+ protected virtual Led InitializeLed(LedId ledId, Rectangle ledRectangle)
{
- if (LedMapping.ContainsKey(ledId)) return null;
+ if ((ledId == LedId.Invalid) || LedMapping.ContainsKey(ledId)) return null;
- Led led = new Led(this, ledId, ledRectangle);
+ Led led = new Led(this, ledId, ledRectangle, CreateLedCustomData(ledId));
LedMapping.Add(ledId, led);
return led;
}
+ ///
+ /// Applies the given layout.
+ ///
+ /// The file containing the layout.
+ /// The name of the layout used to get the images of the leds.
+ /// The path images for this device are collected in.
+ /// If set to true a new led is initialized for every id in the layout if it doesn't already exist.
+ protected virtual void ApplyLayoutFromFile(string layoutPath, string imageLayout, string imageBasePath, bool createMissingLeds = false)
+ {
+ DeviceLayout layout = DeviceLayout.Load(layoutPath);
+ if (layout != null)
+ {
+ LedImageLayout ledImageLayout = layout.LedImageLayouts.FirstOrDefault(x => string.Equals(x.Layout, imageLayout, StringComparison.OrdinalIgnoreCase));
+
+ Size = new Size(layout.Width, layout.Height);
+
+ if (layout.Leds != null)
+ foreach (LedLayout layoutLed in layout.Leds)
+ {
+ if (Enum.TryParse(layoutLed.Id, true, out LedId ledId))
+ {
+ if (!LedMapping.TryGetValue(ledId, out Led led) && createMissingLeds)
+ led = InitializeLed(ledId, new Rectangle());
+
+ if (led != null)
+ {
+ led.LedRectangle.Location = new Point(layoutLed.X, layoutLed.Y);
+ led.LedRectangle.Size = new Size(layoutLed.Width, layoutLed.Height);
+
+ led.Shape = layoutLed.Shape;
+ led.ShapeData = layoutLed.ShapeData;
+
+ LedImage image = ledImageLayout?.LedImages.FirstOrDefault(x => x.Id == layoutLed.Id);
+ led.Image = (!string.IsNullOrEmpty(image?.Image))
+ ? new Uri(Path.Combine(imageBasePath, image.Image), UriKind.Absolute)
+ : new Uri(Path.Combine(imageBasePath, "Missing.png"), UriKind.Absolute);
+ }
+ }
+ }
+ }
+ }
+
+ ///
+ /// Creates provider-specific data associated with this .
+ ///
+ /// The .
+ protected virtual object CreateLedCustomData(LedId ledId) => null;
+
///
public void AddSpecialDevicePart(T specialDevicePart)
where T : class, IRGBDeviceSpecialPart
diff --git a/RGB.NET.Core/Devices/DeviceUpdateMode.cs b/RGB.NET.Core/Devices/DeviceUpdateMode.cs
index 5f958b9..b6e27d9 100644
--- a/RGB.NET.Core/Devices/DeviceUpdateMode.cs
+++ b/RGB.NET.Core/Devices/DeviceUpdateMode.cs
@@ -2,14 +2,31 @@
namespace RGB.NET.Core
{
+ ///
+ /// Contains a list of different device device update modes.
+ ///
[Flags]
public enum DeviceUpdateMode
{
+ ///
+ /// Represents nothing.
+ ///
None = 0,
+ ///
+ /// Represents a mode which updates the leds of the device.
+ ///
Sync = 1 << 0,
+
+ ///
+ /// Represents a mode which reads the color of the leds of the device.
+ /// This isn't supported by all devices!
+ ///
SyncBack = 1 << 1,
+ ///
+ /// Represents all update modes.
+ ///
NoUpdate = 1 << 0xFF
}
}
diff --git a/RGB.NET.Core/Devices/IRGBDevice.cs b/RGB.NET.Core/Devices/IRGBDevice.cs
index b766b65..1576cc6 100644
--- a/RGB.NET.Core/Devices/IRGBDevice.cs
+++ b/RGB.NET.Core/Devices/IRGBDevice.cs
@@ -38,11 +38,11 @@ namespace RGB.NET.Core
#region Indexer
///
- /// Gets the with the specified .
+ /// Gets the with the specified .
///
- /// The of the to get.
- /// The with the specified or null if no is found.
- Led this[ILedId ledId] { get; }
+ /// The of the to get.
+ /// The with the specified or null if no is found.
+ Led this[LedId ledId] { get; }
///
/// Gets the at the given physical location.
diff --git a/RGB.NET.Core/Groups/ILedGroup.cs b/RGB.NET.Core/Groups/ILedGroup.cs
index 6869d0e..638f146 100644
--- a/RGB.NET.Core/Groups/ILedGroup.cs
+++ b/RGB.NET.Core/Groups/ILedGroup.cs
@@ -28,12 +28,12 @@ namespace RGB.NET.Core
IEnumerable GetLeds();
///
- /// Called when the is attached to the .
+ /// Called when the is attached to the .
///
void OnAttach();
///
- /// Called when the is detached from the .
+ /// Called when the is detached from the .
///
void OnDetach();
}
diff --git a/RGB.NET.Core/Leds/ILedId.cs b/RGB.NET.Core/Leds/ILedId.cs
deleted file mode 100644
index 92aefd3..0000000
--- a/RGB.NET.Core/Leds/ILedId.cs
+++ /dev/null
@@ -1,18 +0,0 @@
-namespace RGB.NET.Core
-{
- ///
- /// Represents a generic Id of a .
- ///
- public interface ILedId
- {
- ///
- /// Gets the the belongs to.
- ///
- IRGBDevice Device { get; }
-
- ///
- /// Gets a value indicating if this is valid.
- ///
- bool IsValid { get; }
- }
-}
diff --git a/RGB.NET.Core/Leds/Led.cs b/RGB.NET.Core/Leds/Led.cs
index a97c4bd..84eb272 100644
--- a/RGB.NET.Core/Leds/Led.cs
+++ b/RGB.NET.Core/Leds/Led.cs
@@ -20,9 +20,9 @@ namespace RGB.NET.Core
public IRGBDevice Device { get; }
///
- /// Gets the of the .
+ /// Gets the of the .
///
- public ILedId Id { get; }
+ public LedId Id { get; }
private Shape _shape = Shape.Rectangle;
///
@@ -99,6 +99,11 @@ namespace RGB.NET.Core
///
public Uri Image { get; set; }
+ ///
+ /// Gets the provider-specific data associated with this led.
+ ///
+ public object CustomData { get; }
+
#endregion
#region Constructors
@@ -107,13 +112,15 @@ namespace RGB.NET.Core
/// Initializes a new instance of the class.
///
/// The the is associated with.
- /// The of the .
+ /// The of the .
/// The representing the physical location of the relative to the .
- internal Led(IRGBDevice device, ILedId id, Rectangle ledRectangle)
+ /// The provider-specific data associated with this led.
+ internal Led(IRGBDevice device, LedId id, Rectangle ledRectangle, object customData = null)
{
this.Device = device;
this.Id = id;
this.LedRectangle = ledRectangle;
+ this.CustomData = customData;
}
#endregion
@@ -124,10 +131,7 @@ namespace RGB.NET.Core
/// Converts the and the of this to a human-readable string.
///
/// A string that contains the and the of this . For example "Enter [A: 255, R: 255, G: 0, B: 0]".
- public override string ToString()
- {
- return $"{Id} {Color}";
- }
+ public override string ToString() => $"{Id} {Color}";
///
/// Updates the to the requested .
diff --git a/RGB.NET.Core/Leds/LedId.cs b/RGB.NET.Core/Leds/LedId.cs
index d749c72..abef1fe 100644
--- a/RGB.NET.Core/Leds/LedId.cs
+++ b/RGB.NET.Core/Leds/LedId.cs
@@ -9,6 +9,8 @@ namespace RGB.NET.Core
{
Invalid = -1,
+ Logo = 0,
+
/*### Keyboard ###*/
Keyboard_Escape = 0x00000001,
Keyboard_F1 = 0x00000002,
@@ -35,61 +37,64 @@ namespace RGB.NET.Core
Keyboard_9 = 0x00000018,
Keyboard_0 = 0x00000019,
Keyboard_MinusAndUnderscore = 0x0000001A,
- Keyboard_Backspace = 0x0000001B,
- Keyboard_Tab = 0x0000001C,
- Keyboard_Q = 0x0000001D,
- Keyboard_W = 0x0000001E,
- Keyboard_E = 0x0000001F,
- Keyboard_R = 0x00000020,
- Keyboard_T = 0x00000021,
- Keyboard_Y = 0x00000022,
- Keyboard_U = 0x00000023,
- Keyboard_I = 0x00000024,
- Keyboard_O = 0x00000025,
- Keyboard_P = 0x00000026,
- Keyboard_BracketLeft = 0x000000027,
- Keyboard_Backslash = 0x000000028,
- Keyboard_Enter = 0x00000029,
- Keyboard_CapsLock = 0x0000002A,
- Keyboard_A = 0x0000002B,
- Keyboard_S = 0x0000002C,
- Keyboard_D = 0x0000002D,
- Keyboard_F = 0x0000002E,
- Keyboard_G = 0x0000002F,
- Keyboard_H = 0x00000030,
- Keyboard_J = 0x00000031,
- Keyboard_K = 0x00000032,
- Keyboard_L = 0x00000033,
- Keyboard_SemicolonAndColon = 0x00000034,
- Keyboard_ApostropheAndDoubleQuote = 0x00000035,
- Keyboard_NonUsTilde = 0x00000036,
- Keyboard_LeftShift = 0x00000037,
- Keyboard_NonUsBackslash = 0x00000038,
- Keyboard_Z = 0x00000039,
- Keyboard_X = 0x0000003A,
- Keyboard_C = 0x0000003B,
- Keyboard_V = 0x0000003C,
- Keyboard_B = 0x0000003D,
- Keyboard_N = 0x0000003E,
- Keyboard_M = 0x0000003F,
- Keyboard_CommaAndLessThan = 0x00000040,
- Keyboard_RightShift = 0x00000041,
- Keyboard_PeriodAndBiggerThan = 0x00000042,
- Keyboard_SlashAndQuestionMark = 0x00000043,
- Keyboard_LeftCtrl = 0x00000044,
- Keyboard_LeftGui = 0x00000045,
- Keyboard_LeftAlt = 0x00000046,
- Keyboard_Lang2 = 0x00000047,
- Keyboard_Space = 0x00000048,
- Keyboard_Lang1 = 0x00000049,
- Keyboard_International2 = 0x0000004A,
- Keyboard_RightAlt = 0x0000004B,
- Keyboard_RightGui = 0x0000004C,
- Keyboard_Application = 0x0000004D,
- Keyboard_RightCtrl = 0x0000004E,
- International3 = 0x0000004F,
- International5 = 0x00000050,
- International4 = 0x00000051,
+ Keyboard_EqualsAndPlus = 0x0000001B,
+ Keyboard_Backspace = 0x0000001C,
+ Keyboard_Tab = 0x0000001D,
+ Keyboard_Q = 0x0000001E,
+ Keyboard_W = 0x0000001F,
+ Keyboard_E = 0x00000020,
+ Keyboard_R = 0x00000021,
+ Keyboard_T = 0x00000022,
+ Keyboard_Y = 0x00000023,
+ Keyboard_U = 0x00000024,
+ Keyboard_I = 0x00000025,
+ Keyboard_O = 0x00000026,
+ Keyboard_P = 0x00000027,
+ Keyboard_BracketLeft = 0x000000028,
+ Keyboard_BracketRight = 0x000000029,
+ Keyboard_Backslash = 0x00000002A,
+ Keyboard_Enter = 0x0000002B,
+ Keyboard_CapsLock = 0x0000002C,
+ Keyboard_A = 0x0000002D,
+ Keyboard_S = 0x0000002E,
+ Keyboard_D = 0x0000002F,
+ Keyboard_F = 0x00000030,
+ Keyboard_G = 0x00000031,
+ Keyboard_H = 0x00000032,
+ Keyboard_J = 0x00000033,
+ Keyboard_K = 0x00000034,
+ Keyboard_L = 0x00000035,
+ Keyboard_SemicolonAndColon = 0x00000036,
+ Keyboard_ApostropheAndDoubleQuote = 0x00000037,
+ Keyboard_NonUsTilde = 0x00000038,
+ Keyboard_LeftShift = 0x00000039,
+ Keyboard_NonUsBackslash = 0x0000003A,
+ Keyboard_Z = 0x0000003B,
+ Keyboard_X = 0x0000003C,
+ Keyboard_C = 0x0000003D,
+ Keyboard_V = 0x0000003E,
+ Keyboard_B = 0x0000003F,
+ Keyboard_N = 0x00000040,
+ Keyboard_M = 0x00000041,
+ Keyboard_CommaAndLessThan = 0x00000042,
+ Keyboard_PeriodAndBiggerThan = 0x00000043,
+ Keyboard_SlashAndQuestionMark = 0x00000044,
+ Keyboard_RightShift = 0x00000045,
+ Keyboard_LeftCtrl = 0x00000046,
+ Keyboard_LeftGui = 0x00000047,
+ Keyboard_LeftAlt = 0x00000048,
+ Keyboard_Lang2 = 0x00000049,
+ Keyboard_Space = 0x0000004A,
+ Keyboard_Lang1 = 0x0000004B,
+ Keyboard_RightAlt = 0x0000004C,
+ Keyboard_RightGui = 0x0000004D,
+ Keyboard_Application = 0x0000004E,
+ Keyboard_RightCtrl = 0x0000004F,
+ Keyboard_International1 = 0x00000050,
+ Keyboard_International2 = 0x00000051,
+ Keyboard_International3 = 0x00000052,
+ Keyboard_International5 = 0x00000053,
+ Keyboard_International4 = 0x00000054,
Keyboard_PrintScreen = 0x00001001,
Keyboard_ScrollLock = 0x000001002,
@@ -100,10 +105,10 @@ namespace RGB.NET.Core
Keyboard_Delete = 0x00001007,
Keyboard_End = 0x00001008,
Keyboard_PageDown = 0x00001009,
- Keyboard_UpArrow = 0x0000100A,
- Keyboard_LeftArrow = 0x0000100B,
- Keyboard_DownArrow = 0x0000100C,
- Keyboard_RightArrow = 0x0000100D,
+ Keyboard_ArrowUp = 0x0000100A,
+ Keyboard_ArrowLeft = 0x0000100B,
+ Keyboard_ArrowDown = 0x0000100C,
+ Keyboard_ArrowRight = 0x0000100D,
Keyboard_NumLock = 0x00002001,
Keyboard_NumSlash = 0x00002002,
@@ -112,20 +117,22 @@ namespace RGB.NET.Core
Keyboard_Num7 = 0x00002005,
Keyboard_Num8 = 0x00002006,
Keyboard_Num9 = 0x00002007,
- Keyboard_NumPlus = 0x00002008,
- Keyboard_Num4 = 0x00002009,
- Keyboard_Num5 = 0x0000200A,
- Keyboard_Num6 = 0x0000200B,
- Keyboard_Num1 = 0x0000200C,
- Keyboard_Num2 = 0x0000200D,
- Keyboard_Num3 = 0x0000200E,
- Keyboard_NumEnter = 0x0000200F,
- Keyboard_Num0 = 0x00002010,
- Keyboard_NumComma = 0x00002011,
+ Keyboard_NumComma = 0x00002008,
+ Keyboard_NumPlus = 0x00002009,
+ Keyboard_Num4 = 0x0000200A,
+ Keyboard_Num5 = 0x0000200B,
+ Keyboard_Num6 = 0x0000200C,
+ Keyboard_Num1 = 0x0000200D,
+ Keyboard_Num2 = 0x0000200E,
+ Keyboard_Num3 = 0x0000200F,
+ Keyboard_NumEnter = 0x00002010,
+ Keyboard_Num0 = 0x00002011,
+ Keyboard_Num00 = 0x00002012,
+ Keyboard_NumPeriodAndDelete = 0x00002013,
Keyboard_MediaMute = 0x00003001,
Keyboard_MediaVolumeDown = 0x00003002,
- Keyboard_MediaVokumeUp = 0x00003003,
+ Keyboard_MediaVolumeUp = 0x00003003,
Keyboard_MediaStop = 0x00003004,
Keyboard_MediaPreviousTrack = 0x00003005,
Keyboard_MediaPlay = 0x00003006,
@@ -207,8 +214,6 @@ namespace RGB.NET.Core
Keyboard_Custom31 = 0x0000701F,
Keyboard_Custom32 = 0x00007020,
- Keyboard_Logo = 0x000FFFFF,
-
/*### Mouse ###*/
Mouse1 = 0x00100001,
Mouse2 = 0x00100002,
diff --git a/RGB.NET.Core/RGB.NET.Core.csproj b/RGB.NET.Core/RGB.NET.Core.csproj
index 47bae2f..a37acfa 100644
--- a/RGB.NET.Core/RGB.NET.Core.csproj
+++ b/RGB.NET.Core/RGB.NET.Core.csproj
@@ -79,7 +79,6 @@
-
diff --git a/RGB.NET.Devices.Asus/Enum/AsusLedIds.cs b/RGB.NET.Devices.Asus/Enum/AsusLedIds.cs
deleted file mode 100644
index 67c9d7e..0000000
--- a/RGB.NET.Devices.Asus/Enum/AsusLedIds.cs
+++ /dev/null
@@ -1,30 +0,0 @@
-// ReSharper disable InconsistentNaming
-
-#pragma warning disable 1591 // Missing XML comment for publicly visible type or member
-
-namespace RGB.NET.Devices.Asus
-{
- ///
- /// Contains list of all LEDs available for all Asus devices.
- ///
- public enum AsusLedIds
- {
- Invalid = -1,
-
- //TODO DarthAffe 07.10.2017: Create useful Ids for all devices
-
- MainboardLed1 = 0x01,
- MainboardLed2 = 0x02,
- MainboardLed3 = 0x03,
- MainboardLed4 = 0x04,
- MainboardLed5 = 0x05,
-
- GraphicsCardLed1 = 0x11,
-
- DramLed1 = 0x21,
-
- MouseLed1 = 0x31,
-
- KeyboardLed1 = 0x41,
- }
-}
diff --git a/RGB.NET.Devices.Asus/Generic/AsusLedId.cs b/RGB.NET.Devices.Asus/Generic/AsusLedId.cs
deleted file mode 100644
index a122968..0000000
--- a/RGB.NET.Devices.Asus/Generic/AsusLedId.cs
+++ /dev/null
@@ -1,111 +0,0 @@
-using System.Diagnostics;
-using RGB.NET.Core;
-
-namespace RGB.NET.Devices.Asus
-{
- ///
- ///
- /// Represents a Id of a on a .
- ///
- [DebuggerDisplay("{" + nameof(LedId) + "}")]
- public class AsusLedId : ILedId
- {
- #region Properties & Fields
-
- internal readonly AsusLedIds LedId;
-
- internal readonly int Index;
-
- ///
- public IRGBDevice Device { get; }
-
- ///
- public bool IsValid => LedId != AsusLedIds.Invalid;
-
- #endregion
-
- #region Constructors
-
- ///
- /// Initializes a new instance of the class.
- ///
- /// The the belongs to.
- /// The of the represented .
- public AsusLedId(IRGBDevice device, AsusLedIds ledId)
- {
- this.Device = device;
- this.LedId = ledId;
- }
-
- ///
- /// Initializes a new instance of the class.
- ///
- /// The the belongs to.
- /// The of the represented .
- /// The index in the mapping array of the device.
- public AsusLedId(IRGBDevice device, AsusLedIds ledId, int index)
- {
- this.Device = device;
- this.LedId = ledId;
- this.Index = index;
- }
-
- #endregion
-
- #region Methods
-
- ///
- /// Converts the Id of this to a human-readable string.
- ///
- /// A string that contains the Id of this . For example "Enter".
- public override string ToString() => LedId.ToString();
-
- ///
- /// Tests whether the specified object is a and is equivalent to this .
- ///
- /// The object to test.
- /// true if is a equivalent to this ; otherwise, false.
- public override bool Equals(object obj)
- {
- AsusLedId compareLedId = obj as AsusLedId;
- if (ReferenceEquals(compareLedId, null))
- return false;
-
- if (ReferenceEquals(this, compareLedId))
- return true;
-
- if (GetType() != compareLedId.GetType())
- return false;
-
- return compareLedId.LedId == LedId;
- }
-
- ///
- /// Returns a hash code for this .
- ///
- /// An integer value that specifies the hash code for this .
- public override int GetHashCode() => LedId.GetHashCode();
-
- #endregion
-
- #region Operators
-
- ///
- /// Returns a value that indicates whether two specified are equal.
- ///
- /// The first to compare.
- /// The second to compare.
- /// true if and are equal; otherwise, false.
- public static bool operator ==(AsusLedId ledId1, AsusLedId ledId2) => ReferenceEquals(ledId1, null) ? ReferenceEquals(ledId2, null) : ledId1.Equals(ledId2);
-
- ///
- /// Returns a value that indicates whether two specified are equal.
- ///
- /// The first to compare.
- /// The second to compare.
- /// true if and are not equal; otherwise, false.
- public static bool operator !=(AsusLedId ledId1, AsusLedId ledId2) => !(ledId1 == ledId2);
-
- #endregion
- }
-}
diff --git a/RGB.NET.Devices.Asus/Generic/AsusRGBDevice.cs b/RGB.NET.Devices.Asus/Generic/AsusRGBDevice.cs
index 471626d..68885cc 100644
--- a/RGB.NET.Devices.Asus/Generic/AsusRGBDevice.cs
+++ b/RGB.NET.Devices.Asus/Generic/AsusRGBDevice.cs
@@ -1,10 +1,8 @@
using System;
using System.Collections.Generic;
-using System.IO;
using System.Linq;
using System.Runtime.InteropServices;
using RGB.NET.Core;
-using RGB.NET.Core.Layout;
namespace RGB.NET.Devices.Asus
{
@@ -67,44 +65,6 @@ namespace RGB.NET.Devices.Asus
///
protected abstract void InitializeLayout();
- ///
- /// Applies the given layout.
- ///
- /// The file containing the layout.
- /// The name of the layout used to get the images of the leds.
- /// The path images for this device are collected in.
- protected void ApplyLayoutFromFile(string layoutPath, string imageLayout, string imageBasePath)
- {
- DeviceLayout layout = DeviceLayout.Load(layoutPath);
- if (layout != null)
- {
- LedImageLayout ledImageLayout = layout.LedImageLayouts.FirstOrDefault(x => string.Equals(x.Layout, imageLayout, StringComparison.OrdinalIgnoreCase));
-
- Size = new Size(layout.Width, layout.Height);
-
- if (layout.Leds != null)
- foreach (LedLayout layoutLed in layout.Leds)
- {
- if (Enum.TryParse(layoutLed.Id, true, out AsusLedIds ledId))
- {
- if (LedMapping.TryGetValue(new AsusLedId(this, ledId), out Led led))
- {
- led.LedRectangle.Location = new Point(layoutLed.X, layoutLed.Y);
- led.LedRectangle.Size = new Size(layoutLed.Width, layoutLed.Height);
-
- led.Shape = layoutLed.Shape;
- led.ShapeData = layoutLed.ShapeData;
-
- LedImage image = ledImageLayout?.LedImages.FirstOrDefault(x => x.Id == layoutLed.Id);
- led.Image = (!string.IsNullOrEmpty(image?.Image))
- ? new Uri(Path.Combine(imageBasePath, image.Image), UriKind.Absolute)
- : new Uri(Path.Combine(imageBasePath, "Missing.png"), UriKind.Absolute);
- }
- }
- }
- }
- }
-
///
protected override void UpdateLeds(IEnumerable ledsToUpdate)
{
@@ -114,7 +74,7 @@ namespace RGB.NET.Devices.Asus
{
foreach (Led led in leds)
{
- int index = (((AsusLedId)led.Id).Index) * 3;
+ int index = ((int)led.CustomData) * 3;
ColorData[index] = led.Color.R;
ColorData[index + 1] = led.Color.G;
ColorData[index + 2] = led.Color.B;
diff --git a/RGB.NET.Devices.Asus/GraphicsCard/AsusGraphicsCardRGBDevice.cs b/RGB.NET.Devices.Asus/GraphicsCard/AsusGraphicsCardRGBDevice.cs
index bf77de2..dd02fc4 100644
--- a/RGB.NET.Devices.Asus/GraphicsCard/AsusGraphicsCardRGBDevice.cs
+++ b/RGB.NET.Devices.Asus/GraphicsCard/AsusGraphicsCardRGBDevice.cs
@@ -30,13 +30,16 @@ namespace RGB.NET.Devices.Asus
//TODO DarthAffe 07.10.2017: Look for a good default layout
int ledCount = _AsusSDK.GetGPULedCount(DeviceInfo.Handle);
for (int i = 0; i < ledCount; i++)
- InitializeLed(new AsusLedId(this, AsusLedIds.GraphicsCardLed1 + i, i), new Rectangle(i * 10, 0, 10, 10));
+ InitializeLed(LedId.GraphicsCard1 + i, new Rectangle(i * 10, 0, 10, 10));
- //TODO DarthAffe 07.10.2017: We don'T know the model, how to save layouts and images?
+ //TODO DarthAffe 07.10.2017: We don't know the model, how to save layouts and images?
ApplyLayoutFromFile(PathHelper.GetAbsolutePath($@"Layouts\Asus\GraphicsCards\{DeviceInfo.Model.Replace(" ", string.Empty).ToUpper()}.xml"),
null, PathHelper.GetAbsolutePath(@"Images\Asus\GraphicsCards"));
}
+ ///
+ protected override object CreateLedCustomData(LedId ledId) => (int)ledId - (int)LedId.GraphicsCard1;
+
///
protected override void ApplyColorData() => _AsusSDK.SetGPUColor(DeviceInfo.Handle, ColorData);
diff --git a/RGB.NET.Devices.Asus/Keyboard/AsusKeyboardRGBDevice.cs b/RGB.NET.Devices.Asus/Keyboard/AsusKeyboardRGBDevice.cs
index 5a17dff..d333e7b 100644
--- a/RGB.NET.Devices.Asus/Keyboard/AsusKeyboardRGBDevice.cs
+++ b/RGB.NET.Devices.Asus/Keyboard/AsusKeyboardRGBDevice.cs
@@ -27,16 +27,19 @@ namespace RGB.NET.Devices.Asus
///
protected override void InitializeLayout()
{
- //TODO DarthAffe 07.10.2017: Look for a good default layout
+ //TODO DarthAffe 07.10.2017: This doesn't make sense at all ... Find someone with such a keyboard!
int ledCount = _AsusSDK.GetClaymoreKeyboardLedCount(DeviceInfo.Handle);
for (int i = 0; i < ledCount; i++)
- InitializeLed(new AsusLedId(this, AsusLedIds.KeyboardLed1 + i, i), new Rectangle(i * 19, 0, 19, 19));
+ InitializeLed(LedId.Keyboard_Escape + i, new Rectangle(i * 19, 0, 19, 19));
string model = DeviceInfo.Model.Replace(" ", string.Empty).ToUpper();
ApplyLayoutFromFile(PathHelper.GetAbsolutePath($@"Layouts\Asus\Keyboards\{model}\{DeviceInfo.PhysicalLayout.ToString().ToUpper()}.xml"),
DeviceInfo.LogicalLayout.ToString(), PathHelper.GetAbsolutePath(@"Images\Asus\Keyboards"));
}
+ ///
+ protected override object CreateLedCustomData(LedId ledId) => (int)ledId - (int)LedId.Keyboard_Escape;
+
///
protected override void ApplyColorData() => _AsusSDK.SetClaymoreKeyboardColor(DeviceInfo.Handle, ColorData);
diff --git a/RGB.NET.Devices.Asus/Mainboard/AsusMainboardRGBDevice.cs b/RGB.NET.Devices.Asus/Mainboard/AsusMainboardRGBDevice.cs
index 6b91f5a..dc36764 100644
--- a/RGB.NET.Devices.Asus/Mainboard/AsusMainboardRGBDevice.cs
+++ b/RGB.NET.Devices.Asus/Mainboard/AsusMainboardRGBDevice.cs
@@ -30,19 +30,22 @@ namespace RGB.NET.Devices.Asus
//TODO DarthAffe 07.10.2017: Look for a good default layout
int ledCount = _AsusSDK.GetMbLedCount(DeviceInfo.Handle);
for (int i = 0; i < ledCount; i++)
- InitializeLed(new AsusLedId(this, AsusLedIds.MainboardLed1 + i, i), new Rectangle(i * 40, 0, 40, 8));
+ InitializeLed(LedId.Mainboard1 + i, new Rectangle(i * 40, 0, 40, 8));
//TODO DarthAffe 07.10.2017: We don'T know the model, how to save layouts and images?
ApplyLayoutFromFile(PathHelper.GetAbsolutePath($@"Layouts\Asus\Mainboards\{DeviceInfo.Model.Replace(" ", string.Empty).ToUpper()}.xml"),
null, PathHelper.GetAbsolutePath(@"Images\Asus\Mainboards"));
}
+ ///
+ protected override object CreateLedCustomData(LedId ledId) => (int)ledId - (int)LedId.Mainboard1;
+
///
public override void SyncBack()
{
byte[] colorData = _AsusSDK.GetMbColor(DeviceInfo.Handle);
for (int i = 0; i < LedMapping.Count; i++)
- LedMapping[new AsusLedId(this, AsusLedIds.MainboardLed1 + i)].Color = new Color(colorData[(i * 3)], colorData[(i * 3) + 2], colorData[(i * 3) + 1]);
+ LedMapping[LedId.Mainboard1 + i].Color = new Color(colorData[(i * 3)], colorData[(i * 3) + 2], colorData[(i * 3) + 1]);
}
///
diff --git a/RGB.NET.Devices.Asus/Mouse/AsusMouseRGBDevice.cs b/RGB.NET.Devices.Asus/Mouse/AsusMouseRGBDevice.cs
index d83963e..c1b689b 100644
--- a/RGB.NET.Devices.Asus/Mouse/AsusMouseRGBDevice.cs
+++ b/RGB.NET.Devices.Asus/Mouse/AsusMouseRGBDevice.cs
@@ -30,12 +30,15 @@ namespace RGB.NET.Devices.Asus
//TODO DarthAffe 07.10.2017: Look for a good default layout
int ledCount = _AsusSDK.GetRogMouseLedCount(DeviceInfo.Handle);
for (int i = 0; i < ledCount; i++)
- InitializeLed(new AsusLedId(this, AsusLedIds.MouseLed1 + i, i), new Rectangle(i * 10, 0, 10, 10));
+ InitializeLed(LedId.Mouse1 + i, new Rectangle(i * 10, 0, 10, 10));
ApplyLayoutFromFile(PathHelper.GetAbsolutePath($@"Layouts\Asus\Mouses\{DeviceInfo.Model.Replace(" ", string.Empty).ToUpper()}.xml"),
null, PathHelper.GetAbsolutePath(@"Images\Asus\Mouses"));
}
+ ///
+ protected override object CreateLedCustomData(LedId ledId) => (int)ledId - (int)LedId.Mouse1;
+
///
protected override void ApplyColorData() => _AsusSDK.SetRogMouseColor(DeviceInfo.Handle, ColorData);
diff --git a/RGB.NET.Devices.Asus/RGB.NET.Devices.Asus.csproj b/RGB.NET.Devices.Asus/RGB.NET.Devices.Asus.csproj
index cde110d..733d9d1 100644
--- a/RGB.NET.Devices.Asus/RGB.NET.Devices.Asus.csproj
+++ b/RGB.NET.Devices.Asus/RGB.NET.Devices.Asus.csproj
@@ -48,11 +48,9 @@
-
-
diff --git a/RGB.NET.Devices.CoolerMaster/Enum/CoolerMasterLedIds.cs b/RGB.NET.Devices.CoolerMaster/Enum/CoolerMasterLedIds.cs
deleted file mode 100644
index eac0146..0000000
--- a/RGB.NET.Devices.CoolerMaster/Enum/CoolerMasterLedIds.cs
+++ /dev/null
@@ -1,137 +0,0 @@
-// ReSharper disable InconsistentNaming
-
-#pragma warning disable 1591 // Missing XML comment for publicly visible type or member
-
-namespace RGB.NET.Devices.CoolerMaster
-{
- ///
- /// Contains list of all LEDs available for all CoolerMaster devices.
- ///
- public enum CoolerMasterLedIds
- {
- Invalid = -1,
-
- Esc = 0,
- F1 = 1,
- F2 = 2,
- F3 = 3,
- F4 = 4,
- F5 = 6,
- F6 = 7,
- F7 = 8,
- F8 = 9,
- F9 = 11,
- F10 = 12,
- F11 = 13,
- F12 = 14,
- Snapshot = 15,
- ScrollLock = 16,
- Pause = 17,
- P1 = 18,
- P2 = 19,
- P3 = 20,
- P4 = 21,
-
- Gravis = 22,
- D1 = 23,
- D2 = 24,
- D3 = 25,
- D4 = 26,
- D5 = 27,
- D6 = 28,
- D7 = 29,
- D8 = 30,
- D9 = 31,
- D0 = 32,
- Minus = 33,
- Equals = 34,
- Backspace = 36,
- Insert = 37,
- Home = 38,
- PageUp = 39,
- Numlock = 40,
- KeypadSlash = 41,
- KeypadAsterisk = 42,
- KeypadMinus = 43,
-
- Tab = 44,
- Q = 45,
- W = 46,
- E = 47,
- R = 48,
- T = 49,
- Y = 50,
- U = 51,
- I = 52,
- O = 53,
- P = 54,
- BracketLeft = 55,
- BracketRight = 56,
- Backslash = 58,
- Delete = 59,
- End = 60,
- PageDown = 61,
- Keypad7 = 62,
- Keypad8 = 63,
- Keypad9 = 64,
- KeypadPlus = 65,
-
- CapsLock = 66,
- A = 67,
- S = 68,
- D = 69,
- F = 70,
- G = 71,
- H = 72,
- J = 73,
- K = 74,
- L = 75,
- Semicolon = 76,
- Apostroph = 77,
- CODEA2 = 78,
- Enter = 80,
- Keypad4 = 84,
- Keypad5 = 85,
- Keypad6 = 86,
-
- LShift = 88,
- CODEA5 = 89,
- Z = 90,
- X = 91,
- C = 92,
- V = 93,
- B = 94,
- N = 95,
- M = 96,
- Comma = 97,
- Period = 98,
- Slash = 99,
- RShift = 102,
- Up = 104,
- Keypad1 = 106,
- Keypad2 = 107,
- Keypad3 = 108,
- KeypadEnter = 109,
-
- LCtrl = 110,
- LWin = 111,
- LAlt = 112,
- Space = 116,
- RAlt = 120,
- RWin = 121,
- App = 122,
- RCtrl = 124,
- Left = 125,
- Down = 126,
- Right = 127,
- Keypad0 = 128,
- Keypad00 = 129,
- KeypadPeriod = 130,
-
- Side1 = 132,
- Side2 = 133,
- Side3 = 134,
- Back1 = 135,
- Wheel = 136
- }
-}
diff --git a/RGB.NET.Devices.CoolerMaster/Generic/CoolerMasterLedId.cs b/RGB.NET.Devices.CoolerMaster/Generic/CoolerMasterLedId.cs
deleted file mode 100644
index f14d517..0000000
--- a/RGB.NET.Devices.CoolerMaster/Generic/CoolerMasterLedId.cs
+++ /dev/null
@@ -1,126 +0,0 @@
-using System.Diagnostics;
-using RGB.NET.Core;
-
-namespace RGB.NET.Devices.CoolerMaster
-{
- ///
- ///
- /// Represents a Id of a on a .
- ///
- [DebuggerDisplay("{" + nameof(LedId) + "}")]
- public class CoolerMasterLedId : ILedId
- {
- #region Properties & Fields
-
- internal readonly CoolerMasterLedIds LedId;
-
- internal readonly int Row;
- internal readonly int Column;
-
- ///
- public IRGBDevice Device { get; }
-
- ///
- public bool IsValid => LedId != CoolerMasterLedIds.Invalid;
-
- #endregion
-
- #region Constructors
-
- ///
- /// Initializes a new instance of the class.
- ///
- /// The the belongs to.
- /// The of the represented .
- public CoolerMasterLedId(IRGBDevice device, CoolerMasterLedIds ledId)
- {
- this.Device = device;
- this.LedId = ledId;
- }
-
- ///
- /// Initializes a new instance of the class.
- ///
- /// The the belongs to.
- /// The of the represented .
- /// The row in the mapping table of the device.
- /// The column in the mapping table of the device.
- public CoolerMasterLedId(IRGBDevice device, CoolerMasterLedIds ledId, int row, int column)
- {
- this.Device = device;
- this.LedId = ledId;
- this.Row = row;
- this.Column = column;
- }
-
- #endregion
-
- #region Methods
-
- ///
- /// Converts the Id of this to a human-readable string.
- ///
- /// A string that contains the Id of this . For example "Enter".
- public override string ToString()
- {
- return LedId.ToString();
- }
-
- ///
- /// Tests whether the specified object is a and is equivalent to this .
- ///
- /// The object to test.
- /// true if is a equivalent to this ; otherwise, false.
- public override bool Equals(object obj)
- {
- CoolerMasterLedId compareLedId = obj as CoolerMasterLedId;
- if (ReferenceEquals(compareLedId, null))
- return false;
-
- if (ReferenceEquals(this, compareLedId))
- return true;
-
- if (GetType() != compareLedId.GetType())
- return false;
-
- return compareLedId.LedId == LedId;
- }
-
- ///
- /// Returns a hash code for this .
- ///
- /// An integer value that specifies the hash code for this .
- public override int GetHashCode()
- {
- return LedId.GetHashCode();
- }
-
- #endregion
-
- #region Operators
-
- ///
- /// Returns a value that indicates whether two specified are equal.
- ///
- /// The first to compare.
- /// The second to compare.
- /// true if and are equal; otherwise, false.
- public static bool operator ==(CoolerMasterLedId ledId1, CoolerMasterLedId ledId2)
- {
- return ReferenceEquals(ledId1, null) ? ReferenceEquals(ledId2, null) : ledId1.Equals(ledId2);
- }
-
- ///
- /// Returns a value that indicates whether two specified are equal.
- ///
- /// The first to compare.
- /// The second to compare.
- /// true if and are not equal; otherwise, false.
- public static bool operator !=(CoolerMasterLedId ledId1, CoolerMasterLedId ledId2)
- {
- return !(ledId1 == ledId2);
- }
-
- #endregion
- }
-}
diff --git a/RGB.NET.Devices.CoolerMaster/Generic/CoolerMasterRGBDevice.cs b/RGB.NET.Devices.CoolerMaster/Generic/CoolerMasterRGBDevice.cs
index b920640..3a59b96 100644
--- a/RGB.NET.Devices.CoolerMaster/Generic/CoolerMasterRGBDevice.cs
+++ b/RGB.NET.Devices.CoolerMaster/Generic/CoolerMasterRGBDevice.cs
@@ -1,9 +1,7 @@
using System;
using System.Collections.Generic;
-using System.IO;
using System.Linq;
using RGB.NET.Core;
-using RGB.NET.Core.Layout;
using RGB.NET.Devices.CoolerMaster.Native;
namespace RGB.NET.Devices.CoolerMaster
@@ -60,44 +58,6 @@ namespace RGB.NET.Devices.CoolerMaster
///
protected abstract void InitializeLayout();
- ///
- /// Applies the given layout.
- ///
- /// The file containing the layout.
- /// The name of the layout used to get the images of the leds.
- /// The path images for this device are collected in.
- protected void ApplyLayoutFromFile(string layoutPath, string imageLayout, string imageBasePath)
- {
- DeviceLayout layout = DeviceLayout.Load(layoutPath);
- if (layout != null)
- {
- LedImageLayout ledImageLayout = layout.LedImageLayouts.FirstOrDefault(x => string.Equals(x.Layout, imageLayout, StringComparison.OrdinalIgnoreCase));
-
- Size = new Size(layout.Width, layout.Height);
-
- if (layout.Leds != null)
- foreach (LedLayout layoutLed in layout.Leds)
- {
- if (Enum.TryParse(layoutLed.Id, true, out CoolerMasterLedIds ledId))
- {
- if (LedMapping.TryGetValue(new CoolerMasterLedId(this, ledId), out Led led))
- {
- led.LedRectangle.Location = new Point(layoutLed.X, layoutLed.Y);
- led.LedRectangle.Size = new Size(layoutLed.Width, layoutLed.Height);
-
- led.Shape = layoutLed.Shape;
- led.ShapeData = layoutLed.ShapeData;
-
- LedImage image = ledImageLayout?.LedImages.FirstOrDefault(x => x.Id == layoutLed.Id);
- led.Image = (!string.IsNullOrEmpty(image?.Image))
- ? new Uri(Path.Combine(imageBasePath, image.Image), UriKind.Absolute)
- : new Uri(Path.Combine(imageBasePath, "Missing.png"), UriKind.Absolute);
- }
- }
- }
- }
- }
-
///
protected override void UpdateLeds(IEnumerable ledsToUpdate)
{
@@ -109,8 +69,8 @@ namespace RGB.NET.Devices.CoolerMaster
foreach (Led led in leds)
{
- CoolerMasterLedId ledId = (CoolerMasterLedId)led.Id;
- _CoolerMasterSDK.SetLedColor(ledId.Row, ledId.Column, led.Color.R, led.Color.G, led.Color.B);
+ (int row, int column) = ((int, int))led.CustomData;
+ _CoolerMasterSDK.SetLedColor(row, column, led.Color.R, led.Color.G, led.Color.B);
}
_CoolerMasterSDK.RefreshLed(false);
diff --git a/RGB.NET.Devices.CoolerMaster/Keyboard/CoolerMasterKeyboardLedMappings.cs b/RGB.NET.Devices.CoolerMaster/Keyboard/CoolerMasterKeyboardLedMappings.cs
index df91e93..3bd2dba 100644
--- a/RGB.NET.Devices.CoolerMaster/Keyboard/CoolerMasterKeyboardLedMappings.cs
+++ b/RGB.NET.Devices.CoolerMaster/Keyboard/CoolerMasterKeyboardLedMappings.cs
@@ -1,7 +1,7 @@
// ReSharper disable InconsistentNaming
-using System;
using System.Collections.Generic;
+using RGB.NET.Core;
namespace RGB.NET.Devices.CoolerMaster
{
@@ -14,691 +14,691 @@ namespace RGB.NET.Devices.CoolerMaster
#region MasterKeysL
- private static readonly Dictionary> MasterKeysL_US = new Dictionary>
+ private static readonly Dictionary MasterKeysL_US = new Dictionary
{
- { CoolerMasterLedIds.Esc, new Tuple(0,0) },
- { CoolerMasterLedIds.F1, new Tuple(0,1) },
- { CoolerMasterLedIds.F2, new Tuple(0,2) },
- { CoolerMasterLedIds.F3, new Tuple(0,3) },
- { CoolerMasterLedIds.F4, new Tuple(0,4) },
- { CoolerMasterLedIds.F5, new Tuple(0,6) },
- { CoolerMasterLedIds.F6, new Tuple(0,7) },
- { CoolerMasterLedIds.F7, new Tuple(0,8) },
- { CoolerMasterLedIds.F8, new Tuple(0,9) },
- { CoolerMasterLedIds.F9, new Tuple(0,11) },
- { CoolerMasterLedIds.F10, new Tuple(0,12) },
- { CoolerMasterLedIds.F11, new Tuple(0,13) },
- { CoolerMasterLedIds.F12, new Tuple(0,14) },
- { CoolerMasterLedIds.Snapshot, new Tuple(0,15) },
- { CoolerMasterLedIds.ScrollLock, new Tuple(0,16) },
- { CoolerMasterLedIds.Pause, new Tuple(0,17) },
- { CoolerMasterLedIds.P1, new Tuple(0,18) },
- { CoolerMasterLedIds.P2, new Tuple(0,19) },
- { CoolerMasterLedIds.P3, new Tuple(0,20) },
- { CoolerMasterLedIds.P4, new Tuple(0,21) },
+ { LedId.Keyboard_Escape, (0,0) },
+ { LedId.Keyboard_F1, (0,1) },
+ { LedId.Keyboard_F2, (0,2) },
+ { LedId.Keyboard_F3, (0,3) },
+ { LedId.Keyboard_F4, (0,4) },
+ { LedId.Keyboard_F5, (0,6) },
+ { LedId.Keyboard_F6, (0,7) },
+ { LedId.Keyboard_F7, (0,8) },
+ { LedId.Keyboard_F8, (0,9) },
+ { LedId.Keyboard_F9, (0,11) },
+ { LedId.Keyboard_F10, (0,12) },
+ { LedId.Keyboard_F11, (0,13) },
+ { LedId.Keyboard_F12, (0,14) },
+ { LedId.Keyboard_PrintScreen, (0,15) },
+ { LedId.Keyboard_ScrollLock, (0,16) },
+ { LedId.Keyboard_PauseBreak, (0,17) },
+ { LedId.Keyboard_Programmable1, (0,18) },
+ { LedId.Keyboard_Programmable2, (0,19) },
+ { LedId.Keyboard_Programmable3, (0,20) },
+ { LedId.Keyboard_Programmable4, (0,21) },
- { CoolerMasterLedIds.Gravis, new Tuple(1,0) },
- { CoolerMasterLedIds.D1, new Tuple(1,1) },
- { CoolerMasterLedIds.D2, new Tuple(1,2) },
- { CoolerMasterLedIds.D3, new Tuple(1,3) },
- { CoolerMasterLedIds.D4, new Tuple(1,4) },
- { CoolerMasterLedIds.D5, new Tuple(1,5) },
- { CoolerMasterLedIds.D6, new Tuple(1,6) },
- { CoolerMasterLedIds.D7, new Tuple(1,7) },
- { CoolerMasterLedIds.D8, new Tuple(1,8) },
- { CoolerMasterLedIds.D9, new Tuple(1,9) },
- { CoolerMasterLedIds.D0, new Tuple(1,10) },
- { CoolerMasterLedIds.Minus, new Tuple(1,11) },
- { CoolerMasterLedIds.Equals, new Tuple(1,12) },
- { CoolerMasterLedIds.Backspace, new Tuple(1,14) },
- { CoolerMasterLedIds.Insert, new Tuple(1,15) },
- { CoolerMasterLedIds.Home, new Tuple(1,16) },
- { CoolerMasterLedIds.PageUp, new Tuple(1,17) },
- { CoolerMasterLedIds.Numlock, new Tuple(1,18) },
- { CoolerMasterLedIds.KeypadSlash, new Tuple(1,19) },
- { CoolerMasterLedIds.KeypadAsterisk, new Tuple(1,20) },
- { CoolerMasterLedIds.KeypadMinus, new Tuple(1,21) },
+ { LedId.Keyboard_GraveAccentAndTilde, (1,0) },
+ { LedId.Keyboard_1, (1,1) },
+ { LedId.Keyboard_2, (1,2) },
+ { LedId.Keyboard_3, (1,3) },
+ { LedId.Keyboard_4, (1,4) },
+ { LedId.Keyboard_5, (1,5) },
+ { LedId.Keyboard_6, (1,6) },
+ { LedId.Keyboard_7, (1,7) },
+ { LedId.Keyboard_8, (1,8) },
+ { LedId.Keyboard_9, (1,9) },
+ { LedId.Keyboard_0, (1,10) },
+ { LedId.Keyboard_MinusAndUnderscore, (1,11) },
+ { LedId.Keyboard_EqualsAndPlus, (1,12) },
+ { LedId.Keyboard_Backspace, (1,14) },
+ { LedId.Keyboard_Insert, (1,15) },
+ { LedId.Keyboard_Home, (1,16) },
+ { LedId.Keyboard_PageUp, (1,17) },
+ { LedId.Keyboard_NumLock, (1,18) },
+ { LedId.Keyboard_NumSlash, (1,19) },
+ { LedId.Keyboard_NumAsterisk, (1,20) },
+ { LedId.Keyboard_NumMinus, (1,21) },
- { CoolerMasterLedIds.Tab, new Tuple(2,0) },
- { CoolerMasterLedIds.Q, new Tuple(2,1) },
- { CoolerMasterLedIds.W, new Tuple(2,2) },
- { CoolerMasterLedIds.E, new Tuple(2,3) },
- { CoolerMasterLedIds.R, new Tuple(2,4) },
- { CoolerMasterLedIds.T, new Tuple(2,5) },
- { CoolerMasterLedIds.Y, new Tuple(2,6) },
- { CoolerMasterLedIds.U, new Tuple(2,7) },
- { CoolerMasterLedIds.I, new Tuple(2,8) },
- { CoolerMasterLedIds.O, new Tuple(2,9) },
- { CoolerMasterLedIds.P, new Tuple(2,10) },
- { CoolerMasterLedIds.BracketLeft, new Tuple(2,11) },
- { CoolerMasterLedIds.BracketRight, new Tuple(2,12) },
- { CoolerMasterLedIds.Backslash, new Tuple(2,14) },
- { CoolerMasterLedIds.Delete, new Tuple(2,15) },
- { CoolerMasterLedIds.End, new Tuple(2,16) },
- { CoolerMasterLedIds.PageDown, new Tuple(2,17) },
- { CoolerMasterLedIds.Keypad7, new Tuple(2,18) },
- { CoolerMasterLedIds.Keypad8, new Tuple(2,19) },
- { CoolerMasterLedIds.Keypad9, new Tuple(2,20) },
- { CoolerMasterLedIds.KeypadPlus, new Tuple(2,21) },
+ { LedId.Keyboard_Tab, (2,0) },
+ { LedId.Keyboard_Q, (2,1) },
+ { LedId.Keyboard_W, (2,2) },
+ { LedId.Keyboard_E, (2,3) },
+ { LedId.Keyboard_R, (2,4) },
+ { LedId.Keyboard_T, (2,5) },
+ { LedId.Keyboard_Y, (2,6) },
+ { LedId.Keyboard_U, (2,7) },
+ { LedId.Keyboard_I, (2,8) },
+ { LedId.Keyboard_O, (2,9) },
+ { LedId.Keyboard_P, (2,10) },
+ { LedId.Keyboard_BracketLeft, (2,11) },
+ { LedId.Keyboard_BracketRight, (2,12) },
+ { LedId.Keyboard_Backslash, (2,14) },
+ { LedId.Keyboard_Delete, (2,15) },
+ { LedId.Keyboard_End, (2,16) },
+ { LedId.Keyboard_PageDown, (2,17) },
+ { LedId.Keyboard_Num7, (2,18) },
+ { LedId.Keyboard_Num8, (2,19) },
+ { LedId.Keyboard_Num9, (2,20) },
+ { LedId.Keyboard_NumPlus, (2,21) },
- { CoolerMasterLedIds.CapsLock, new Tuple(3,0) },
- { CoolerMasterLedIds.A, new Tuple(3,1) },
- { CoolerMasterLedIds.S, new Tuple(3,2) },
- { CoolerMasterLedIds.D, new Tuple(3,3) },
- { CoolerMasterLedIds.F, new Tuple(3,4) },
- { CoolerMasterLedIds.G, new Tuple(3,5) },
- { CoolerMasterLedIds.H, new Tuple(3,6) },
- { CoolerMasterLedIds.J, new Tuple(3,7) },
- { CoolerMasterLedIds.K, new Tuple(3,8) },
- { CoolerMasterLedIds.L, new Tuple(3,9) },
- { CoolerMasterLedIds.Semicolon, new Tuple(3,10) },
- { CoolerMasterLedIds.Apostroph, new Tuple(3,11) },
- { CoolerMasterLedIds.Enter, new Tuple(3,14) },
- { CoolerMasterLedIds.Keypad4, new Tuple(3,18) },
- { CoolerMasterLedIds.Keypad5, new Tuple(3,19) },
- { CoolerMasterLedIds.Keypad6, new Tuple(3,20) },
+ { LedId.Keyboard_CapsLock, (3,0) },
+ { LedId.Keyboard_A, (3,1) },
+ { LedId.Keyboard_S, (3,2) },
+ { LedId.Keyboard_D, (3,3) },
+ { LedId.Keyboard_F, (3,4) },
+ { LedId.Keyboard_G, (3,5) },
+ { LedId.Keyboard_H, (3,6) },
+ { LedId.Keyboard_J, (3,7) },
+ { LedId.Keyboard_K, (3,8) },
+ { LedId.Keyboard_L, (3,9) },
+ { LedId.Keyboard_SemicolonAndColon, (3,10) },
+ { LedId.Keyboard_ApostropheAndDoubleQuote, (3,11) },
+ { LedId.Keyboard_Enter, (3,14) },
+ { LedId.Keyboard_Num4, (3,18) },
+ { LedId.Keyboard_Num5, (3,19) },
+ { LedId.Keyboard_Num6, (3,20) },
- { CoolerMasterLedIds.LShift, new Tuple(4,0) },
- { CoolerMasterLedIds.Z, new Tuple(4,2) },
- { CoolerMasterLedIds.X, new Tuple(4,3) },
- { CoolerMasterLedIds.C, new Tuple(4,4) },
- { CoolerMasterLedIds.V, new Tuple(4,5) },
- { CoolerMasterLedIds.B, new Tuple(4,6) },
- { CoolerMasterLedIds.N, new Tuple(4,7) },
- { CoolerMasterLedIds.M, new Tuple(4,8) },
- { CoolerMasterLedIds.Comma, new Tuple(4,9) },
- { CoolerMasterLedIds.Period, new Tuple(4,10) },
- { CoolerMasterLedIds.Slash, new Tuple(4,11) },
- { CoolerMasterLedIds.RShift, new Tuple(4,14) },
- { CoolerMasterLedIds.Up, new Tuple(4,16) },
- { CoolerMasterLedIds.Keypad1, new Tuple(4,18) },
- { CoolerMasterLedIds.Keypad2, new Tuple(4,19) },
- { CoolerMasterLedIds.Keypad3, new Tuple(4,20) },
- { CoolerMasterLedIds.KeypadEnter, new Tuple(4,21) },
+ { LedId.Keyboard_LeftShift, (4,0) },
+ { LedId.Keyboard_Z, (4,2) },
+ { LedId.Keyboard_X, (4,3) },
+ { LedId.Keyboard_C, (4,4) },
+ { LedId.Keyboard_V, (4,5) },
+ { LedId.Keyboard_B, (4,6) },
+ { LedId.Keyboard_N, (4,7) },
+ { LedId.Keyboard_M, (4,8) },
+ { LedId.Keyboard_CommaAndLessThan, (4,9) },
+ { LedId.Keyboard_PeriodAndBiggerThan, (4,10) },
+ { LedId.Keyboard_SlashAndQuestionMark, (4,11) },
+ { LedId.Keyboard_RightShift, (4,14) },
+ { LedId.Keyboard_ArrowUp, (4,16) },
+ { LedId.Keyboard_Num1, (4,18) },
+ { LedId.Keyboard_Num2, (4,19) },
+ { LedId.Keyboard_Num3, (4,20) },
+ { LedId.Keyboard_NumEnter, (4,21) },
- { CoolerMasterLedIds.LCtrl, new Tuple(5,0) },
- { CoolerMasterLedIds.LWin, new Tuple(5,1) },
- { CoolerMasterLedIds.LAlt, new Tuple(5,2) },
- { CoolerMasterLedIds.Space, new Tuple(5,6) },
- { CoolerMasterLedIds.RAlt, new Tuple(5,10) },
- { CoolerMasterLedIds.RWin, new Tuple(5,11) },
- { CoolerMasterLedIds.App, new Tuple(5,12) },
- { CoolerMasterLedIds.RCtrl, new Tuple(5,14) },
- { CoolerMasterLedIds.Left, new Tuple(5,15) },
- { CoolerMasterLedIds.Down, new Tuple(5,16) },
- { CoolerMasterLedIds.Right, new Tuple(5,17) },
- { CoolerMasterLedIds.Keypad0, new Tuple(5,18) },
- { CoolerMasterLedIds.KeypadPeriod, new Tuple(5,20) }
+ { LedId.Keyboard_LeftCtrl, (5,0) },
+ { LedId.Keyboard_LeftGui, (5,1) },
+ { LedId.Keyboard_LeftAlt, (5,2) },
+ { LedId.Keyboard_Space, (5,6) },
+ { LedId.Keyboard_RightAlt, (5,10) },
+ { LedId.Keyboard_RightGui, (5,11) },
+ { LedId.Keyboard_Application, (5,12) },
+ { LedId.Keyboard_RightCtrl, (5,14) },
+ { LedId.Keyboard_ArrowLeft, (5,15) },
+ { LedId.Keyboard_ArrowDown, (5,16) },
+ { LedId.Keyboard_ArrowRight, (5,17) },
+ { LedId.Keyboard_Num0, (5,18) },
+ { LedId.Keyboard_NumPeriodAndDelete, (5,20) }
};
- private static readonly Dictionary> MasterKeysL_EU = new Dictionary>
+ private static readonly Dictionary MasterKeysL_EU = new Dictionary
{
- { CoolerMasterLedIds.Esc, new Tuple(0,0) },
- { CoolerMasterLedIds.F1, new Tuple(0,1) },
- { CoolerMasterLedIds.F2, new Tuple(0,2) },
- { CoolerMasterLedIds.F3, new Tuple(0,3) },
- { CoolerMasterLedIds.F4, new Tuple(0,4) },
- { CoolerMasterLedIds.F5, new Tuple(0,6) },
- { CoolerMasterLedIds.F6, new Tuple(0,7) },
- { CoolerMasterLedIds.F7, new Tuple(0,8) },
- { CoolerMasterLedIds.F8, new Tuple(0,9) },
- { CoolerMasterLedIds.F9, new Tuple(0,11) },
- { CoolerMasterLedIds.F10, new Tuple(0,12) },
- { CoolerMasterLedIds.F11, new Tuple(0,13) },
- { CoolerMasterLedIds.F12, new Tuple(0,14) },
- { CoolerMasterLedIds.Snapshot, new Tuple(0,15) },
- { CoolerMasterLedIds.ScrollLock, new Tuple(0,16) },
- { CoolerMasterLedIds.Pause, new Tuple(0,17) },
- { CoolerMasterLedIds.P1, new Tuple(0,18) },
- { CoolerMasterLedIds.P2, new Tuple(0,19) },
- { CoolerMasterLedIds.P3, new Tuple(0,20) },
- { CoolerMasterLedIds.P4, new Tuple(0,21) },
+ { LedId.Keyboard_Escape, (0,0) },
+ { LedId.Keyboard_F1, (0,1) },
+ { LedId.Keyboard_F2, (0,2) },
+ { LedId.Keyboard_F3, (0,3) },
+ { LedId.Keyboard_F4, (0,4) },
+ { LedId.Keyboard_F5, (0,6) },
+ { LedId.Keyboard_F6, (0,7) },
+ { LedId.Keyboard_F7, (0,8) },
+ { LedId.Keyboard_F8, (0,9) },
+ { LedId.Keyboard_F9, (0,11) },
+ { LedId.Keyboard_F10, (0,12) },
+ { LedId.Keyboard_F11, (0,13) },
+ { LedId.Keyboard_F12, (0,14) },
+ { LedId.Keyboard_PrintScreen, (0,15) },
+ { LedId.Keyboard_ScrollLock, (0,16) },
+ { LedId.Keyboard_PauseBreak, (0,17) },
+ { LedId.Keyboard_Programmable1, (0,18) },
+ { LedId.Keyboard_Programmable2, (0,19) },
+ { LedId.Keyboard_Programmable3, (0,20) },
+ { LedId.Keyboard_Programmable4, (0,21) },
- { CoolerMasterLedIds.Gravis, new Tuple(1,0) },
- { CoolerMasterLedIds.D1, new Tuple(1,1) },
- { CoolerMasterLedIds.D2, new Tuple(1,2) },
- { CoolerMasterLedIds.D3, new Tuple(1,3) },
- { CoolerMasterLedIds.D4, new Tuple(1,4) },
- { CoolerMasterLedIds.D5, new Tuple(1,5) },
- { CoolerMasterLedIds.D6, new Tuple(1,6) },
- { CoolerMasterLedIds.D7, new Tuple(1,7) },
- { CoolerMasterLedIds.D8, new Tuple(1,8) },
- { CoolerMasterLedIds.D9, new Tuple(1,9) },
- { CoolerMasterLedIds.D0, new Tuple(1,10) },
- { CoolerMasterLedIds.Minus, new Tuple(1,11) },
- { CoolerMasterLedIds.Equals, new Tuple(1,12) },
- { CoolerMasterLedIds.Backspace, new Tuple(1,14) },
- { CoolerMasterLedIds.Insert, new Tuple(1,15) },
- { CoolerMasterLedIds.Home, new Tuple(1,16) },
- { CoolerMasterLedIds.PageUp, new Tuple(1,17) },
- { CoolerMasterLedIds.Numlock, new Tuple(1,18) },
- { CoolerMasterLedIds.KeypadSlash, new Tuple(1,19) },
- { CoolerMasterLedIds.KeypadAsterisk, new Tuple(1,20) },
- { CoolerMasterLedIds.KeypadMinus, new Tuple(1,21) },
+ { LedId.Keyboard_GraveAccentAndTilde, (1,0) },
+ { LedId.Keyboard_1, (1,1) },
+ { LedId.Keyboard_2, (1,2) },
+ { LedId.Keyboard_3, (1,3) },
+ { LedId.Keyboard_4, (1,4) },
+ { LedId.Keyboard_5, (1,5) },
+ { LedId.Keyboard_6, (1,6) },
+ { LedId.Keyboard_7, (1,7) },
+ { LedId.Keyboard_8, (1,8) },
+ { LedId.Keyboard_9, (1,9) },
+ { LedId.Keyboard_0, (1,10) },
+ { LedId.Keyboard_MinusAndUnderscore, (1,11) },
+ { LedId.Keyboard_EqualsAndPlus, (1,12) },
+ { LedId.Keyboard_Backspace, (1,14) },
+ { LedId.Keyboard_Insert, (1,15) },
+ { LedId.Keyboard_Home, (1,16) },
+ { LedId.Keyboard_PageUp, (1,17) },
+ { LedId.Keyboard_NumLock, (1,18) },
+ { LedId.Keyboard_NumSlash, (1,19) },
+ { LedId.Keyboard_NumAsterisk, (1,20) },
+ { LedId.Keyboard_NumMinus, (1,21) },
- { CoolerMasterLedIds.Tab, new Tuple(2,0) },
- { CoolerMasterLedIds.Q, new Tuple(2,1) },
- { CoolerMasterLedIds.W, new Tuple(2,2) },
- { CoolerMasterLedIds.E, new Tuple(2,3) },
- { CoolerMasterLedIds.R, new Tuple(2,4) },
- { CoolerMasterLedIds.T, new Tuple(2,5) },
- { CoolerMasterLedIds.Y, new Tuple(2,6) },
- { CoolerMasterLedIds.U, new Tuple(2,7) },
- { CoolerMasterLedIds.I, new Tuple(2,8) },
- { CoolerMasterLedIds.O, new Tuple(2,9) },
- { CoolerMasterLedIds.P, new Tuple(2,10) },
- { CoolerMasterLedIds.BracketLeft, new Tuple(2,11) },
- { CoolerMasterLedIds.BracketRight, new Tuple(2,12) },
- { CoolerMasterLedIds.Enter, new Tuple(2,14) },
- { CoolerMasterLedIds.Delete, new Tuple(2,15) },
- { CoolerMasterLedIds.End, new Tuple(2,16) },
- { CoolerMasterLedIds.PageDown, new Tuple(2,17) },
- { CoolerMasterLedIds.Keypad7, new Tuple(2,18) },
- { CoolerMasterLedIds.Keypad8, new Tuple(2,19) },
- { CoolerMasterLedIds.Keypad9, new Tuple(2,20) },
- { CoolerMasterLedIds.KeypadPlus, new Tuple(2,21) },
+ { LedId.Keyboard_Tab, (2,0) },
+ { LedId.Keyboard_Q, (2,1) },
+ { LedId.Keyboard_W, (2,2) },
+ { LedId.Keyboard_E, (2,3) },
+ { LedId.Keyboard_R, (2,4) },
+ { LedId.Keyboard_T, (2,5) },
+ { LedId.Keyboard_Y, (2,6) },
+ { LedId.Keyboard_U, (2,7) },
+ { LedId.Keyboard_I, (2,8) },
+ { LedId.Keyboard_O, (2,9) },
+ { LedId.Keyboard_P, (2,10) },
+ { LedId.Keyboard_BracketLeft, (2,11) },
+ { LedId.Keyboard_BracketRight, (2,12) },
+ { LedId.Keyboard_Enter, (2,14) },
+ { LedId.Keyboard_Delete, (2,15) },
+ { LedId.Keyboard_End, (2,16) },
+ { LedId.Keyboard_PageDown, (2,17) },
+ { LedId.Keyboard_Num7, (2,18) },
+ { LedId.Keyboard_Num8, (2,19) },
+ { LedId.Keyboard_Num9, (2,20) },
+ { LedId.Keyboard_NumPlus, (2,21) },
- { CoolerMasterLedIds.CapsLock, new Tuple(3,0) },
- { CoolerMasterLedIds.A, new Tuple(3,1) },
- { CoolerMasterLedIds.S, new Tuple(3,2) },
- { CoolerMasterLedIds.D, new Tuple(3,3) },
- { CoolerMasterLedIds.F, new Tuple(3,4) },
- { CoolerMasterLedIds.G, new Tuple(3,5) },
- { CoolerMasterLedIds.H, new Tuple(3,6) },
- { CoolerMasterLedIds.J, new Tuple(3,7) },
- { CoolerMasterLedIds.K, new Tuple(3,8) },
- { CoolerMasterLedIds.L, new Tuple(3,9) },
- { CoolerMasterLedIds.Semicolon, new Tuple(3,10) },
- { CoolerMasterLedIds.Apostroph, new Tuple(3,11) },
- { CoolerMasterLedIds.CODEA2, new Tuple(3,12) },
- { CoolerMasterLedIds.Keypad4, new Tuple(3,18) },
- { CoolerMasterLedIds.Keypad5, new Tuple(3,19) },
- { CoolerMasterLedIds.Keypad6, new Tuple(3,20) },
+ { LedId.Keyboard_CapsLock, (3,0) },
+ { LedId.Keyboard_A, (3,1) },
+ { LedId.Keyboard_S, (3,2) },
+ { LedId.Keyboard_D, (3,3) },
+ { LedId.Keyboard_F, (3,4) },
+ { LedId.Keyboard_G, (3,5) },
+ { LedId.Keyboard_H, (3,6) },
+ { LedId.Keyboard_J, (3,7) },
+ { LedId.Keyboard_K, (3,8) },
+ { LedId.Keyboard_L, (3,9) },
+ { LedId.Keyboard_SemicolonAndColon, (3,10) },
+ { LedId.Keyboard_ApostropheAndDoubleQuote, (3,11) },
+ { LedId.Keyboard_NonUsTilde, (3,12) },
+ { LedId.Keyboard_Num4, (3,18) },
+ { LedId.Keyboard_Num5, (3,19) },
+ { LedId.Keyboard_Num6, (3,20) },
- { CoolerMasterLedIds.LShift, new Tuple(4,0) },
- { CoolerMasterLedIds.CODEA5, new Tuple(4,1) },
- { CoolerMasterLedIds.Z, new Tuple(4,2) },
- { CoolerMasterLedIds.X, new Tuple(4,3) },
- { CoolerMasterLedIds.C, new Tuple(4,4) },
- { CoolerMasterLedIds.V, new Tuple(4,5) },
- { CoolerMasterLedIds.B, new Tuple(4,6) },
- { CoolerMasterLedIds.N, new Tuple(4,7) },
- { CoolerMasterLedIds.M, new Tuple(4,8) },
- { CoolerMasterLedIds.Comma, new Tuple(4,9) },
- { CoolerMasterLedIds.Period, new Tuple(4,10) },
- { CoolerMasterLedIds.Slash, new Tuple(4,11) },
- { CoolerMasterLedIds.RShift, new Tuple(4,14) },
- { CoolerMasterLedIds.Up, new Tuple(4,16) },
- { CoolerMasterLedIds.Keypad1, new Tuple(4,18) },
- { CoolerMasterLedIds.Keypad2, new Tuple(4,19) },
- { CoolerMasterLedIds.Keypad3, new Tuple(4,20) },
- { CoolerMasterLedIds.KeypadEnter, new Tuple(4,21) },
+ { LedId.Keyboard_LeftShift, (4,0) },
+ { LedId.Keyboard_NonUsBackslash, (4,1) },
+ { LedId.Keyboard_Z, (4,2) },
+ { LedId.Keyboard_X, (4,3) },
+ { LedId.Keyboard_C, (4,4) },
+ { LedId.Keyboard_V, (4,5) },
+ { LedId.Keyboard_B, (4,6) },
+ { LedId.Keyboard_N, (4,7) },
+ { LedId.Keyboard_M, (4,8) },
+ { LedId.Keyboard_CommaAndLessThan, (4,9) },
+ { LedId.Keyboard_PeriodAndBiggerThan, (4,10) },
+ { LedId.Keyboard_SlashAndQuestionMark, (4,11) },
+ { LedId.Keyboard_RightShift, (4,14) },
+ { LedId.Keyboard_ArrowUp, (4,16) },
+ { LedId.Keyboard_Num1, (4,18) },
+ { LedId.Keyboard_Num2, (4,19) },
+ { LedId.Keyboard_Num3, (4,20) },
+ { LedId.Keyboard_NumEnter, (4,21) },
- { CoolerMasterLedIds.LCtrl, new Tuple(5,0) },
- { CoolerMasterLedIds.LWin, new Tuple(5,1) },
- { CoolerMasterLedIds.LAlt, new Tuple(5,2) },
- { CoolerMasterLedIds.Space, new Tuple(5,6) },
- { CoolerMasterLedIds.RAlt, new Tuple(5,10) },
- { CoolerMasterLedIds.RWin, new Tuple(5,11) },
- { CoolerMasterLedIds.App, new Tuple(5,12) },
- { CoolerMasterLedIds.RCtrl, new Tuple(5,14) },
- { CoolerMasterLedIds.Left, new Tuple(5,15) },
- { CoolerMasterLedIds.Down, new Tuple(5,16) },
- { CoolerMasterLedIds.Right, new Tuple(5,17) },
- { CoolerMasterLedIds.Keypad0, new Tuple(5,18) },
- { CoolerMasterLedIds.KeypadPeriod, new Tuple(5,20) }
+ { LedId.Keyboard_LeftCtrl, (5,0) },
+ { LedId.Keyboard_LeftGui, (5,1) },
+ { LedId.Keyboard_LeftAlt, (5,2) },
+ { LedId.Keyboard_Space, (5,6) },
+ { LedId.Keyboard_RightAlt, (5,10) },
+ { LedId.Keyboard_RightGui, (5,11) },
+ { LedId.Keyboard_Application, (5,12) },
+ { LedId.Keyboard_RightCtrl, (5,14) },
+ { LedId.Keyboard_ArrowLeft, (5,15) },
+ { LedId.Keyboard_ArrowDown, (5,16) },
+ { LedId.Keyboard_ArrowRight, (5,17) },
+ { LedId.Keyboard_Num0, (5,18) },
+ { LedId.Keyboard_NumPeriodAndDelete, (5,20) }
};
#endregion
#region MasterKeysM
- private static readonly Dictionary> MasterKeysM_US = new Dictionary>
+ private static readonly Dictionary MasterKeysM_US = new Dictionary
{
- { CoolerMasterLedIds.Esc, new Tuple(0,0) },
- { CoolerMasterLedIds.F1, new Tuple(0,1) },
- { CoolerMasterLedIds.F2, new Tuple(0,2) },
- { CoolerMasterLedIds.F3, new Tuple(0,3) },
- { CoolerMasterLedIds.F4, new Tuple(0,4) },
- { CoolerMasterLedIds.F5, new Tuple(0,6) },
- { CoolerMasterLedIds.F6, new Tuple(0,7) },
- { CoolerMasterLedIds.F7, new Tuple(0,8) },
- { CoolerMasterLedIds.F8, new Tuple(0,9) },
- { CoolerMasterLedIds.F9, new Tuple(0,11) },
- { CoolerMasterLedIds.F10, new Tuple(0,12) },
- { CoolerMasterLedIds.F11, new Tuple(0,13) },
- { CoolerMasterLedIds.F12, new Tuple(0,14) },
+ { LedId.Keyboard_Escape, (0,0) },
+ { LedId.Keyboard_F1, (0,1) },
+ { LedId.Keyboard_F2, (0,2) },
+ { LedId.Keyboard_F3, (0,3) },
+ { LedId.Keyboard_F4, (0,4) },
+ { LedId.Keyboard_F5, (0,6) },
+ { LedId.Keyboard_F6, (0,7) },
+ { LedId.Keyboard_F7, (0,8) },
+ { LedId.Keyboard_F8, (0,9) },
+ { LedId.Keyboard_F9, (0,11) },
+ { LedId.Keyboard_F10, (0,12) },
+ { LedId.Keyboard_F11, (0,13) },
+ { LedId.Keyboard_F12, (0,14) },
- { CoolerMasterLedIds.Gravis, new Tuple(1,0) },
- { CoolerMasterLedIds.D1, new Tuple(1,1) },
- { CoolerMasterLedIds.D2, new Tuple(1,2) },
- { CoolerMasterLedIds.D3, new Tuple(1,3) },
- { CoolerMasterLedIds.D4, new Tuple(1,4) },
- { CoolerMasterLedIds.D5, new Tuple(1,5) },
- { CoolerMasterLedIds.D6, new Tuple