diff --git a/RGB.NET.Devices.CoolerMaster/Enum/CoolerMasterLedIds.cs b/RGB.NET.Devices.CoolerMaster/Enum/CoolerMasterLedIds.cs index 072cfe0..eac0146 100644 --- a/RGB.NET.Devices.CoolerMaster/Enum/CoolerMasterLedIds.cs +++ b/RGB.NET.Devices.CoolerMaster/Enum/CoolerMasterLedIds.cs @@ -9,17 +9,129 @@ namespace RGB.NET.Devices.CoolerMaster /// public enum CoolerMasterLedIds { - Invalid = 0, + Invalid = -1, - A, - S, - D, - F, + 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, - Side1, - Side2, - Side3, - Back1, - Wheel + 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/Keyboard/CoolerMasterKeyboardLedMappings.cs b/RGB.NET.Devices.CoolerMaster/Keyboard/CoolerMasterKeyboardLedMappings.cs index 01256dc..df91e93 100644 --- a/RGB.NET.Devices.CoolerMaster/Keyboard/CoolerMasterKeyboardLedMappings.cs +++ b/RGB.NET.Devices.CoolerMaster/Keyboard/CoolerMasterKeyboardLedMappings.cs @@ -1,4 +1,6 @@ -using System; +// ReSharper disable InconsistentNaming + +using System; using System.Collections.Generic; namespace RGB.NET.Devices.CoolerMaster @@ -10,58 +12,654 @@ namespace RGB.NET.Devices.CoolerMaster { #region Properties & Fields + #region MasterKeysL + 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) }, + + { 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) }, + + { 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) }, + + { 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) }, + + { 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) }, + + { 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) } }; 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) }, + + { 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) }, + + { 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) }, + + { 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) }, + + { 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) }, + + { 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) } }; + #endregion + + #region MasterKeysM + 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) }, + + { 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.Numlock, new Tuple(1,15) }, + { CoolerMasterLedIds.KeypadSlash, new Tuple(1,16) }, + { CoolerMasterLedIds.KeypadAsterisk, new Tuple(1,17) }, + { CoolerMasterLedIds.KeypadMinus, new Tuple(1,18) }, + + { 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.Keypad7, new Tuple(2,15) }, + { CoolerMasterLedIds.Keypad8, new Tuple(2,16) }, + { CoolerMasterLedIds.Keypad9, new Tuple(2,17) }, + { CoolerMasterLedIds.KeypadPlus, new Tuple(2,18) }, + + { 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,15) }, + { CoolerMasterLedIds.Keypad5, new Tuple(3,16) }, + { CoolerMasterLedIds.Keypad6, new Tuple(3,17) }, + + { 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.U, new Tuple(4,16) }, + { CoolerMasterLedIds.Keypad1, new Tuple(4,15) }, + { CoolerMasterLedIds.Keypad2, new Tuple(4,16) }, + { CoolerMasterLedIds.Keypad3, new Tuple(4,17) }, + { CoolerMasterLedIds.KeypadEnter, new Tuple(4,18) }, + + { 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.Keypad0, new Tuple(5,15) }, + { CoolerMasterLedIds.Keypad00, new Tuple(5,16) }, + { CoolerMasterLedIds.KeypadPeriod, new Tuple(5,17) } }; private static readonly Dictionary> MasterKeysM_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.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.Numlock, new Tuple(1,15) }, + { CoolerMasterLedIds.KeypadSlash, new Tuple(1,16) }, + { CoolerMasterLedIds.KeypadAsterisk, new Tuple(1,17) }, + { CoolerMasterLedIds.KeypadMinus, new Tuple(1,18) }, + + { 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.Keypad7, new Tuple(2,15) }, + { CoolerMasterLedIds.Keypad8, new Tuple(2,16) }, + { CoolerMasterLedIds.Keypad9, new Tuple(2,17) }, + { CoolerMasterLedIds.KeypadPlus, new Tuple(2,18) }, + + { 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,15) }, + { CoolerMasterLedIds.Keypad5, new Tuple(3,16) }, + { CoolerMasterLedIds.Keypad6, new Tuple(3,17) }, + + { 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.U, new Tuple(4,16) }, + { CoolerMasterLedIds.Keypad1, new Tuple(4,15) }, + { CoolerMasterLedIds.Keypad2, new Tuple(4,16) }, + { CoolerMasterLedIds.Keypad3, new Tuple(4,17) }, + { CoolerMasterLedIds.KeypadEnter, new Tuple(4,18) }, + + { 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.Keypad0, new Tuple(5,15) }, + { CoolerMasterLedIds.Keypad00, new Tuple(5,16) }, + { CoolerMasterLedIds.KeypadPeriod, new Tuple(5,17) } }; + #endregion + + #region MasterKeysS + private static readonly Dictionary> MasterKeysS_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.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.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.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.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.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) } }; private static readonly Dictionary> MasterKeysS_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.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.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.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.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.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) } }; + + #endregion /// /// Contains all the hardware-id mappings for CoolerMaster devices. /// - // ReSharper disable once InconsistentNaming public static readonly Dictionary>>> Mapping = new Dictionary>>> {