diff --git a/DS4Control/Mapping.cs b/DS4Control/Mapping.cs index 44bfcfa..a0ce8d9 100644 --- a/DS4Control/Mapping.cs +++ b/DS4Control/Mapping.cs @@ -468,14 +468,427 @@ namespace DS4Control /** Map DS4 Buttons/Axes to other DS4 Buttons/Axes (largely the same as Xinput ones) and to keyboard and mouse buttons. */ public static async void MapCustom(int device, DS4State cState, DS4State MappedState, DS4StateExposed eState) { + bool shift; cState.CopyTo(MappedState); SyntheticState deviceState = Mapping.deviceState[device]; - foreach (KeyValuePair customKey in Global.getCustomMacros(device)) //with delays + switch (Global.getShiftModifier(device)) { - DS4KeyType keyType = Global.getCustomKeyType(device, customKey.Key); + case 1: shift = getBoolMapping(DS4Controls.Cross, cState, eState); break; + case 2: shift = getBoolMapping(DS4Controls.Circle, cState, eState); break; + case 3: shift = getBoolMapping(DS4Controls.Square, cState, eState); break; + case 4: shift = getBoolMapping(DS4Controls.Triangle, cState, eState); break; + case 5: shift = getBoolMapping(DS4Controls.Options, cState, eState); break; + case 6: shift = getBoolMapping(DS4Controls.Share, cState, eState); break; + case 7: shift = getBoolMapping(DS4Controls.DpadUp, cState, eState); break; + case 8: shift = getBoolMapping(DS4Controls.DpadDown, cState, eState); break; + case 9: shift = getBoolMapping(DS4Controls.DpadLeft, cState, eState); break; + case 10: shift = getBoolMapping(DS4Controls.DpadRight, cState, eState); break; + case 11: shift = getBoolMapping(DS4Controls.PS, cState, eState); break; + case 12: shift = getBoolMapping(DS4Controls.L1, cState, eState); break; + case 13: shift = getBoolMapping(DS4Controls.R1, cState, eState); break; + case 14: shift = getBoolMapping(DS4Controls.L2, cState, eState); break; + case 15: shift = getBoolMapping(DS4Controls.R2, cState, eState); break; + case 16: shift = getBoolMapping(DS4Controls.L3, cState, eState); break; + case 17: shift = getBoolMapping(DS4Controls.R3, cState, eState); break; + case 18: shift = getBoolMapping(DS4Controls.TouchLeft, cState, eState); break; + case 19: shift = getBoolMapping(DS4Controls.TouchUpper, cState, eState); break; + case 20: shift = getBoolMapping(DS4Controls.TouchMulti, cState, eState); break; + case 21: shift = getBoolMapping(DS4Controls.TouchRight, cState, eState); break; + case 22: shift = getBoolMapping(DS4Controls.GyroZNeg, cState, eState); break; + case 23: shift = getBoolMapping(DS4Controls.GyroZPos, cState, eState); break; + case 24: shift = getBoolMapping(DS4Controls.GyroXPos, cState, eState); break; + case 25: shift = getBoolMapping(DS4Controls.GyroXNeg, cState, eState); break; + case 26: shift = cState.Touch1; break; + default: shift = false; break; + } + if (shift) + MapShiftCustom(device, cState, MappedState, eState); + foreach (KeyValuePair customKey in Global.getCustomMacros(device)) + { + if (shift == false || + (Global.getShiftCustomMacro(device, customKey.Key) == "0" && + Global.getShiftCustomKey(device, customKey.Key) == 0 && + (Global.getShiftCustomButton(device, customKey.Key) == X360Controls.None || + Global.getShiftCustomButton(device, customKey.Key) == X360Controls.Unbound))) + { + DS4KeyType keyType = Global.getCustomKeyType(device, customKey.Key); + if (getBoolMapping(customKey.Key, cState, eState)) + { + resetToDefaultValue(customKey.Key, MappedState); + bool LXChanged = (Math.Abs(127 - MappedState.LX) < 5); + bool LYChanged = (Math.Abs(127 - MappedState.LY) < 5); + bool RXChanged = (Math.Abs(127 - MappedState.RX) < 5); + bool RYChanged = (Math.Abs(127 - MappedState.RY) < 5); + string[] skeys; + int[] keys; + if (!string.IsNullOrEmpty(customKey.Value)) + { + skeys = customKey.Value.Split('/'); + keys = new int[skeys.Length]; + } + else + { + skeys = new string[0]; + keys = new int[0]; + } + for (int i = 0; i < keys.Length; i++) + keys[i] = ushort.Parse(skeys[i]); + bool[] keydown = new bool[261]; + if (keys.Length > 0 && keys[0] > 260 && keys[0] < 300) + { + if (keys[0] == 261 && !MappedState.Cross) MappedState.Cross = getBoolMapping(customKey.Key, cState, eState); + if (keys[0] == 262 && !MappedState.Circle) MappedState.Circle = getBoolMapping(customKey.Key, cState, eState); + if (keys[0] == 263 && !MappedState.Square) MappedState.Square = getBoolMapping(customKey.Key, cState, eState); + if (keys[0] == 264 && !MappedState.Triangle) MappedState.Triangle = getBoolMapping(customKey.Key, cState, eState); + if (keys[0] == 265 && !MappedState.DpadUp) MappedState.DpadUp = getBoolMapping(customKey.Key, cState, eState); + if (keys[0] == 266 && !MappedState.DpadDown) MappedState.DpadDown = getBoolMapping(customKey.Key, cState, eState); + if (keys[0] == 267 && !MappedState.DpadLeft) MappedState.DpadLeft = getBoolMapping(customKey.Key, cState, eState); + if (keys[0] == 268 && !MappedState.DpadRight) MappedState.DpadRight = getBoolMapping(customKey.Key, cState, eState); + if (keys[0] == 269 && !MappedState.Options) MappedState.Options = getBoolMapping(customKey.Key, cState, eState); + if (keys[0] == 270 && !MappedState.Share) MappedState.Share = getBoolMapping(customKey.Key, cState, eState); + if (keys[0] == 271 && !MappedState.PS) MappedState.PS = getBoolMapping(customKey.Key, cState, eState); + if (keys[0] == 272 && !MappedState.L1) MappedState.L1 = getBoolMapping(customKey.Key, cState, eState); + if (keys[0] == 273 && !MappedState.R1) MappedState.R1 = getBoolMapping(customKey.Key, cState, eState); + if (keys[0] == 274 && MappedState.L2 == 0) MappedState.L2 = getByteMapping(device, customKey.Key, cState, eState); + if (keys[0] == 275 && MappedState.R2 == 0) MappedState.R2 = getByteMapping(device, customKey.Key, cState, eState); + if (keys[0] == 276 && !MappedState.L3) MappedState.L3 = getBoolMapping(customKey.Key, cState, eState); + if (keys[0] == 277 && !MappedState.R3) MappedState.R3 = getBoolMapping(customKey.Key, cState, eState); + if (keys[0] == 278 && LYChanged) MappedState.LY = getXYAxisMapping(device, customKey.Key, cState, eState); + if (keys[0] == 279 && LYChanged) MappedState.LY = getXYAxisMapping(device, customKey.Key, cState, eState, true); + if (keys[0] == 280 && LXChanged) MappedState.LX = getXYAxisMapping(device, customKey.Key, cState, eState); + if (keys[0] == 281 && LXChanged) MappedState.LX = getXYAxisMapping(device, customKey.Key, cState, eState, true); + if (keys[0] == 282 && RYChanged) MappedState.RY = getXYAxisMapping(device, customKey.Key, cState, eState); + if (keys[0] == 283 && RYChanged) MappedState.RY = getXYAxisMapping(device, customKey.Key, cState, eState, true); + if (keys[0] == 284 && RXChanged) MappedState.RX = getXYAxisMapping(device, customKey.Key, cState, eState); + if (keys[0] == 285 && RXChanged) MappedState.RX = getXYAxisMapping(device, customKey.Key, cState, eState, true); + } + if (!macrodone[DS4ControltoInt(customKey.Key)]) + { + macrodone[DS4ControltoInt(customKey.Key)] = true; + for (int i = 0; i < keys.Length; i++) + { + if (keys[i] >= 300) //ints over 300 used to delay + await Task.Delay(keys[i] - 300); + else if (keys[i] < 261 && !keydown[keys[i]]) + { + if (keys[i] == 256) InputMethods.MouseEvent(InputMethods.MOUSEEVENTF_LEFTDOWN); //anything above 255 is not a keyvalue + else if (keys[i] == 257) InputMethods.MouseEvent(InputMethods.MOUSEEVENTF_RIGHTDOWN); + else if (keys[i] == 258) InputMethods.MouseEvent(InputMethods.MOUSEEVENTF_MIDDLEDOWN); + else if (keys[i] == 259) InputMethods.MouseEvent(InputMethods.MOUSEEVENTF_XBUTTONDOWN, 1); + else if (keys[i] == 260) InputMethods.MouseEvent(InputMethods.MOUSEEVENTF_XBUTTONDOWN, 2); + else if (keyType.HasFlag(DS4KeyType.ScanCode)) + InputMethods.performSCKeyPress((ushort)keys[i]); + else + InputMethods.performKeyPress((ushort)keys[i]); + keydown[keys[i]] = true; + } + else if (keys[i] < 261) + { + if (keys[i] == 256) InputMethods.MouseEvent(InputMethods.MOUSEEVENTF_LEFTUP); //anything above 255 is not a keyvalue + else if (keys[i] == 257) InputMethods.MouseEvent(InputMethods.MOUSEEVENTF_RIGHTUP); + else if (keys[i] == 258) InputMethods.MouseEvent(InputMethods.MOUSEEVENTF_MIDDLEUP); + else if (keys[i] == 259) InputMethods.MouseEvent(InputMethods.MOUSEEVENTF_XBUTTONUP, 1); + else if (keys[i] == 260) InputMethods.MouseEvent(InputMethods.MOUSEEVENTF_XBUTTONUP, 2); + else if (keyType.HasFlag(DS4KeyType.ScanCode)) + InputMethods.performSCKeyRelease((ushort)keys[i]); + else + InputMethods.performKeyRelease((ushort)keys[i]); + keydown[keys[i]] = false; + } + } + for (ushort i = 0; i < keydown.Length; i++) + { + if (keydown[i]) + if (keyType.HasFlag(DS4KeyType.ScanCode)) + InputMethods.performSCKeyRelease(i); + else + InputMethods.performKeyRelease(i); + } + if (keyType.HasFlag(DS4KeyType.HoldMacro)) + { + await Task.Delay(50); + macrodone[DS4ControltoInt(customKey.Key)] = false; + } + } + } + else if (!getBoolMapping(customKey.Key, cState, eState)) + macrodone[DS4ControltoInt(customKey.Key)] = false; + } + } + foreach (KeyValuePair customKey in Global.getCustomKeys(device)) + { + if (shift == false || + (Global.getShiftCustomMacro(device, customKey.Key) == "0" && + Global.getShiftCustomKey(device, customKey.Key) == 0 && + (Global.getShiftCustomButton(device, customKey.Key) == X360Controls.None || + Global.getShiftCustomButton(device, customKey.Key) == X360Controls.Unbound))) + { + DS4KeyType keyType = Global.getCustomKeyType(device, customKey.Key); + if (getBoolMapping(customKey.Key, cState, eState)) + { + resetToDefaultValue(customKey.Key, MappedState); + SyntheticState.KeyPresses kp; + if (!deviceState.keyPresses.TryGetValue(customKey.Value, out kp)) + deviceState.keyPresses[customKey.Value] = kp = new SyntheticState.KeyPresses(); + if (keyType.HasFlag(DS4KeyType.ScanCode)) + kp.current.scanCodeCount++; + else + kp.current.vkCount++; + if (keyType.HasFlag(DS4KeyType.Toggle)) + { + if (!pressedonce[customKey.Value]) + { + kp.current.toggle = !kp.current.toggle; + pressedonce[customKey.Value] = true; + } + kp.current.toggleCount++; + } + kp.current.repeatCount++; + } + else + pressedonce[customKey.Value] = false; + } + } + + MappedState.LX = 127; + MappedState.LY = 127; + MappedState.RX = 127; + MappedState.RY = 127; + int MouseDeltaX = 0; + int MouseDeltaY = 0; + + Dictionary customButtons = Global.getCustomButtons(device); + //foreach (KeyValuePair customButton in customButtons) + // resetToDefaultValue(customButton.Key, MappedState); // erase default mappings for things that are remapped + foreach (KeyValuePair customButton in customButtons) + { + if (shift == false || + (Global.getShiftCustomMacro(device, customButton.Key) == "0" && + Global.getShiftCustomKey(device, customButton.Key) == 0 && + (Global.getShiftCustomButton(device, customButton.Key) == X360Controls.None || + Global.getShiftCustomButton(device, customButton.Key) == X360Controls.Unbound))) + { + if (customButton.Key == DS4Controls.Square) + Console.WriteLine("hello"); + DS4KeyType keyType = Global.getCustomKeyType(device, customButton.Key); + int keyvalue = 0; + switch (customButton.Value) + { + case X360Controls.LeftMouse: keyvalue = 256; break; + case X360Controls.RightMouse: keyvalue = 257; break; + case X360Controls.MiddleMouse: keyvalue = 258; break; + case X360Controls.FourthMouse: keyvalue = 259; break; + case X360Controls.FifthMouse: keyvalue = 260; break; + } + if (keyType.HasFlag(DS4KeyType.Toggle)) + { + if (getBoolMapping(customButton.Key, cState, eState)) + { + resetToDefaultValue(customButton.Key, MappedState); + if (!pressedonce[keyvalue]) + { + deviceState.currentClicks.toggle = !deviceState.currentClicks.toggle; + test++; + pressedonce[keyvalue] = true; + } + deviceState.currentClicks.toggleCount++; + } + else// if (test = 1)// && pressedonce[keyvalue]) + { + pressedonce[keyvalue] = false; + } + } + bool LXChanged = Math.Abs(127 - MappedState.LX) <= 5; + bool LYChanged = Math.Abs(127 - MappedState.LY) <= 5; + bool RXChanged = Math.Abs(127 - MappedState.RX) <= 5; + bool RYChanged = Math.Abs(127 - MappedState.RY) <= 5; + + //once++; + + resetToDefaultValue(customButton.Key, MappedState); // erase default mappings for things that are remapped + switch (customButton.Value) + { + case X360Controls.A: + if (!MappedState.Cross) + MappedState.Cross = getBoolMapping(customButton.Key, cState, eState); + break; + case X360Controls.B: + if (!MappedState.Circle) + MappedState.Circle = getBoolMapping(customButton.Key, cState, eState); + break; + case X360Controls.X: + if (!MappedState.Square) + MappedState.Square = getBoolMapping(customButton.Key, cState, eState); + break; + case X360Controls.Y: + if (!MappedState.Triangle) + MappedState.Triangle = getBoolMapping(customButton.Key, cState, eState); + break; + case X360Controls.LB: + if (!MappedState.L1) + MappedState.L1 = getBoolMapping(customButton.Key, cState, eState); + break; + case X360Controls.LS: + if (!MappedState.L3) + MappedState.L3 = getBoolMapping(customButton.Key, cState, eState); + break; + case X360Controls.RB: + if (!MappedState.R1) + MappedState.R1 = getBoolMapping(customButton.Key, cState, eState); + break; + case X360Controls.RS: + if (!MappedState.R3) + MappedState.R3 = getBoolMapping(customButton.Key, cState, eState); + break; + case X360Controls.DpadUp: + if (!MappedState.DpadUp) + MappedState.DpadUp = getBoolMapping(customButton.Key, cState, eState); + break; + case X360Controls.DpadDown: + if (!MappedState.DpadDown) + MappedState.DpadDown = getBoolMapping(customButton.Key, cState, eState); + break; + case X360Controls.DpadLeft: + if (!MappedState.DpadLeft) + MappedState.DpadLeft = getBoolMapping(customButton.Key, cState, eState); + break; + case X360Controls.DpadRight: + if (!MappedState.DpadRight) + MappedState.DpadRight = getBoolMapping(customButton.Key, cState, eState); + break; + case X360Controls.Guide: + if (!MappedState.PS) + MappedState.PS = getBoolMapping(customButton.Key, cState, eState); + break; + case X360Controls.Back: + if (!MappedState.Share) + MappedState.Share = getBoolMapping(customButton.Key, cState, eState); + break; + case X360Controls.Start: + if (!MappedState.Options) + MappedState.Options = getBoolMapping(customButton.Key, cState, eState); + break; + case X360Controls.LXNeg: + if (LXChanged) + MappedState.LX = getXYAxisMapping(device, customButton.Key, cState, eState); + break; + case X360Controls.LYNeg: + if (LYChanged) + MappedState.LY = getXYAxisMapping(device, customButton.Key, cState, eState); + break; + case X360Controls.RXNeg: + if (RXChanged) + MappedState.RX = getXYAxisMapping(device, customButton.Key, cState, eState); + break; + case X360Controls.RYNeg: + if (RYChanged) + MappedState.RY = getXYAxisMapping(device, customButton.Key, cState, eState); + break; + case X360Controls.LXPos: + if (LXChanged) + MappedState.LX = getXYAxisMapping(device, customButton.Key, cState, eState, true); + break; + case X360Controls.LYPos: + if (LYChanged) + MappedState.LY = getXYAxisMapping(device, customButton.Key, cState, eState, true); + break; + case X360Controls.RXPos: + if (RXChanged) + MappedState.RX = getXYAxisMapping(device, customButton.Key, cState, eState, true); + break; + case X360Controls.RYPos: + if (RYChanged) + MappedState.RY = getXYAxisMapping(device, customButton.Key, cState, eState, true); + break; + case X360Controls.LT: + if (MappedState.L2 == 0) + MappedState.L2 = getByteMapping(device, customButton.Key, cState, eState); + break; + case X360Controls.RT: + if (MappedState.R2 == 0) + MappedState.R2 = getByteMapping(device, customButton.Key, cState, eState); + break; + case X360Controls.LeftMouse: + if (getBoolMapping(customButton.Key, cState, eState)) + deviceState.currentClicks.leftCount++; + break; + case X360Controls.RightMouse: + if (getBoolMapping(customButton.Key, cState, eState)) + deviceState.currentClicks.rightCount++; + break; + case X360Controls.MiddleMouse: + if (getBoolMapping(customButton.Key, cState, eState)) + deviceState.currentClicks.middleCount++; + break; + case X360Controls.FourthMouse: + if (getBoolMapping(customButton.Key, cState, eState)) + deviceState.currentClicks.fourthCount++; + break; + case X360Controls.FifthMouse: + if (getBoolMapping(customButton.Key, cState, eState)) + deviceState.currentClicks.fifthCount++; + break; + case X360Controls.WUP: + if (getBoolMapping(customButton.Key, cState, eState)) + deviceState.currentClicks.wUpCount++; + break; + case X360Controls.WDOWN: + if (getBoolMapping(customButton.Key, cState, eState)) + deviceState.currentClicks.wDownCount++; + break; + case X360Controls.MouseUp: + if (MouseDeltaY == 0) + { + MouseDeltaY = getMouseMapping(device, customButton.Key, cState, eState, 0); + MouseDeltaY = -Math.Abs((MouseDeltaY == -2147483648 ? 0 : MouseDeltaY)); + } + break; + case X360Controls.MouseDown: + if (MouseDeltaY == 0) + { + MouseDeltaY = getMouseMapping(device, customButton.Key, cState, eState, 1); + MouseDeltaY = Math.Abs((MouseDeltaY == -2147483648 ? 0 : MouseDeltaY)); + } + break; + case X360Controls.MouseLeft: + if (MouseDeltaX == 0) + { + MouseDeltaX = getMouseMapping(device, customButton.Key, cState, eState, 2); + MouseDeltaX = -Math.Abs((MouseDeltaX == -2147483648 ? 0 : MouseDeltaX)); + } + break; + case X360Controls.MouseRight: + if (MouseDeltaX == 0) + { + MouseDeltaX = getMouseMapping(device, customButton.Key, cState, eState, 3); + MouseDeltaX = Math.Abs((MouseDeltaX == -2147483648 ? 0 : MouseDeltaX)); + } + break; + } + } + } + //if (!LX) + if (Math.Abs(127 - MappedState.LX) <= 5)// || (Math.Abs(127 - cState.LX) > 5)) + MappedState.LX = cState.LX; + if (Math.Abs(127 - MappedState.LY) <= 5) + MappedState.LY = cState.LY; + if (Math.Abs(127 - MappedState.RX) <= 5) + MappedState.RX = cState.RX; + if (Math.Abs(127 - MappedState.RY) <= 5) + MappedState.RY = cState.RY; + InputMethods.MoveCursorBy(MouseDeltaX, MouseDeltaY); + } + + public static async void MapShiftCustom(int device, DS4State cState, DS4State MappedState, DS4StateExposed eState) + { + cState.CopyTo(MappedState); + SyntheticState deviceState = Mapping.deviceState[device]; + foreach (KeyValuePair customKey in Global.getShiftCustomMacros(device)) //with delays + { + DS4KeyType keyType = Global.getShiftCustomKeyType(device, customKey.Key); if (getBoolMapping(customKey.Key, cState, eState)) { - resetToDefaultValue(customKey.Key, MappedState); + resetToDefaultValue(customKey.Key, MappedState); bool LXChanged = (Math.Abs(127 - MappedState.LX) < 5); bool LYChanged = (Math.Abs(127 - MappedState.LY) < 5); bool RXChanged = (Math.Abs(127 - MappedState.RX) < 5); @@ -575,9 +988,9 @@ namespace DS4Control else if (!getBoolMapping(customKey.Key, cState, eState)) macrodone[DS4ControltoInt(customKey.Key)] = false; } - foreach (KeyValuePair customKey in Global.getCustomKeys(device)) + foreach (KeyValuePair customKey in Global.getShiftCustomKeys(device)) { - DS4KeyType keyType = Global.getCustomKeyType(device, customKey.Key); + DS4KeyType keyType = Global.getShiftCustomKeyType(device, customKey.Key); if (getBoolMapping(customKey.Key, cState, eState)) { resetToDefaultValue(customKey.Key, MappedState); @@ -595,7 +1008,7 @@ namespace DS4Control kp.current.toggle = !kp.current.toggle; pressedonce[customKey.Value] = true; } - kp.current.toggleCount++; + kp.current.toggleCount++; } kp.current.repeatCount++; } @@ -610,12 +1023,14 @@ namespace DS4Control int MouseDeltaX = 0; int MouseDeltaY = 0; - Dictionary customButtons = Global.getCustomButtons(device); + Dictionary customButtons = Global.getShiftCustomButtons(device); //foreach (KeyValuePair customButton in customButtons) - // resetToDefaultValue(customButton.Key, MappedState); // erase default mappings for things that are remapped + // resetToDefaultValue(customButton.Key, MappedState); // erase default mappings for things that are remapped foreach (KeyValuePair customButton in customButtons) { - DS4KeyType keyType = Global.getCustomKeyType(device, customButton.Key); + if (customButton.Key == DS4Controls.Square) + Console.WriteLine("Hi"); + DS4KeyType keyType = Global.getShiftCustomKeyType(device, customButton.Key); int keyvalue = 0; switch (customButton.Value) { @@ -811,7 +1226,6 @@ namespace DS4Control break; } } - //Console.WriteLine(MappedState.LY + " " + LY); //if (!LX) if (Math.Abs(127 - MappedState.LX) <= 5)// || (Math.Abs(127 - cState.LX) > 5)) MappedState.LX = cState.LX; @@ -823,6 +1237,7 @@ namespace DS4Control MappedState.RY = cState.RY; InputMethods.MoveCursorBy(MouseDeltaX, MouseDeltaY); } + public static DateTime[] mousenow = { DateTime.UtcNow, DateTime.UtcNow, DateTime.UtcNow, DateTime.UtcNow }; public static double mvalue = 0; public static int[] mouseaccel = new int[34]; @@ -894,13 +1309,13 @@ namespace DS4Control switch (control) { case DS4Controls.GyroXPos: return (byte)(eState.GyroX > SXD * 7500 ? - Math.Pow(root + speed / divide, eState.GyroX / 48) : 0); + Math.Pow(root + speed / divide, eState.GyroX / 62) : 0); case DS4Controls.GyroXNeg: return (byte)(eState.GyroX < -SXD * 7500 ? Math.Pow(root + speed / divide, -eState.GyroX / 48) : 0); case DS4Controls.GyroZPos: return (byte)(eState.GyroZ > SZD * 7500 ? - Math.Pow(root + speed / divide, eState.GyroZ / 48) : 0); + Math.Pow(root + speed / divide, eState.GyroZ / 62) : 0); case DS4Controls.GyroZNeg: return (byte)(eState.GyroZ < -SZD * 7500 ? - Math.Pow(root + speed / divide, -eState.GyroZ / 48) : 0); + Math.Pow(root + speed / divide, -eState.GyroZ / 62) : 0); } bool LXChanged = (Math.Abs(127 - cState.LX) < deadzone); bool LYChanged = (Math.Abs(127 - cState.LY) < deadzone); @@ -992,10 +1407,10 @@ namespace DS4Control if (eState != null) switch (control) { - case DS4Controls.GyroXPos: return (byte)(eState.GyroX > SXD * 7500 ? Math.Min(255, eState.GyroX / 24) : 0); - case DS4Controls.GyroXNeg: return (byte)(eState.GyroX < -SXD * 7500 ? Math.Min(255, -eState.GyroX / 24) : 0); - case DS4Controls.GyroZPos: return (byte)(eState.GyroZ > SZD * 7500 ? Math.Min(255, eState.GyroZ / 24) : 0); - case DS4Controls.GyroZNeg: return (byte)(eState.GyroZ < -SZD * 7500 ? Math.Min(255, -eState.GyroZ / 24) : 0); + case DS4Controls.GyroXPos: return (byte)(eState.GyroX > SXD * 7500 ? Math.Min(255, eState.GyroX / 31) : 0); + case DS4Controls.GyroXNeg: return (byte)(eState.GyroX < -SXD * 7500 ? Math.Min(255, -eState.GyroX / 31) : 0); + case DS4Controls.GyroZPos: return (byte)(eState.GyroZ > SZD * 7500 ? Math.Min(255, eState.GyroZ / 31) : 0); + case DS4Controls.GyroZNeg: return (byte)(eState.GyroZ < -SZD * 7500 ? Math.Min(255, -eState.GyroZ / 31) : 0); } if (cState.TouchButton) { @@ -1131,19 +1546,18 @@ namespace DS4Control switch (control) { case DS4Controls.GyroXPos: if (eState.GyroX > SXD * 7500) - if (alt) return (byte)Math.Min(255, 127 + eState.GyroX / 48); else return (byte)Math.Max(0, 127 - eState.GyroX / 48); + if (alt) return (byte)Math.Min(255, 127 + eState.GyroX / 62); else return (byte)Math.Max(0, 127 - eState.GyroX / 62); else return falseVal; case DS4Controls.GyroXNeg: if (eState.GyroX < -SXD * 7500) - if (alt) return (byte)Math.Min(255, 127 + -eState.GyroX / 48); else return (byte)Math.Max(0, 127 - -eState.GyroX / 48); + if (alt) return (byte)Math.Min(255, 127 + -eState.GyroX / 62); else return (byte)Math.Max(0, 127 - -eState.GyroX / 62); else return falseVal; case DS4Controls.GyroZPos: if (eState.GyroZ > SZD * 7500) - if (alt) return (byte)Math.Min(255, 127 + eState.GyroZ / 48); else return (byte)Math.Max(0, 127 - eState.GyroZ / 48); + if (alt) return (byte)Math.Min(255, 127 + eState.GyroZ / 62); else return (byte)Math.Max(0, 127 - eState.GyroZ / 62); else return falseVal; case DS4Controls.GyroZNeg: if (eState.GyroZ < -SZD * 7500) - if (alt) return (byte)Math.Min(255, 127 + -eState.GyroZ / 48); else return (byte)Math.Max(0, 127 - -eState.GyroZ / 48); + if (alt) return (byte)Math.Min(255, 127 + -eState.GyroZ / 62); else return (byte)Math.Max(0, 127 - -eState.GyroZ / 62); else return falseVal; } - //Console.Write(eState.GyroX.ToString()); } if (!alt) { diff --git a/DS4Control/Mouse.cs b/DS4Control/Mouse.cs index 20376c2..7868cdc 100644 --- a/DS4Control/Mouse.cs +++ b/DS4Control/Mouse.cs @@ -115,7 +115,7 @@ namespace DS4Control private DS4State remapped = new DS4State(); private void synthesizeMouseButtons() { - Mapping.MapCustom(deviceNum, s, remapped, null); + //Mapping.MapCustom(deviceNum, s, remapped, null); if (leftDown) Mapping.MapTouchpadButton(deviceNum, DS4Controls.TouchLeft, Mapping.Click.Left, remapped); if (upperDown) diff --git a/DS4Control/ScpUtil.cs b/DS4Control/ScpUtil.cs index 5b94edc..c29b202 100644 --- a/DS4Control/ScpUtil.cs +++ b/DS4Control/ScpUtil.cs @@ -240,16 +240,6 @@ namespace DS4Control return m_Config.useExclusiveMode; } - public static void setVersion(double data) - { - m_Config.version = data; - } - - public static double getVersion() - { - return m_Config.version; - } - public static void setLastChecked(DateTime data) { m_Config.lastChecked = data; @@ -456,6 +446,14 @@ namespace DS4Control { m_Config.mouseAccel[device] = value; } + public static int getShiftModifier (int device) + { + return m_Config.shiftModifier[device]; + } + public static void setShiftModifier(int device, int value) + { + m_Config.shiftModifier[device] = value; + } public static void setAProfile(int device, string filepath) { m_Config.profilePath[device] = appdatapath + @"\Profiles\" + filepath + ".xml"; @@ -501,30 +499,68 @@ namespace DS4Control { return m_Config.customMapKeyTypes[device]; } + + public static X360Controls getShiftCustomButton(int device, DS4Controls controlName) + { + return m_Config.GetShiftCustomButton(device, controlName); + } + public static ushort getShiftCustomKey(int device, DS4Controls controlName) + { + return m_Config.GetShiftCustomKey(device, controlName); + } + public static string getShiftCustomMacro(int device, DS4Controls controlName) + { + return m_Config.GetShiftCustomMacro(device, controlName); + } + public static DS4KeyType getShiftCustomKeyType(int device, DS4Controls controlName) + { + return m_Config.GetShiftCustomKeyType(device, controlName); + } + public static bool getHasShiftCustomKeysorButtons(int device) + { + return m_Config.shiftCustomMapButtons[device].Count > 0 + || m_Config.shiftCustomMapKeys[device].Count > 0; + } + public static Dictionary getShiftCustomButtons(int device) + { + return m_Config.shiftCustomMapButtons[device]; + } + public static Dictionary getShiftCustomKeys(int device) + { + return m_Config.shiftCustomMapKeys[device]; + } + public static Dictionary getShiftCustomMacros(int device) + { + return m_Config.shiftCustomMapMacros[device]; + } + public static Dictionary getShiftCustomKeyTypes(int device) + { + return m_Config.shiftCustomMapKeyTypes[device]; + } public static bool Load() { return m_Config.Load(); } - public static void LoadProfile(int device, System.Windows.Forms.Control[] buttons) + public static void LoadProfile(int device, System.Windows.Forms.Control[] buttons, System.Windows.Forms.Control[] shiftbuttons) { - m_Config.LoadProfile(device, buttons); + m_Config.LoadProfile(device, buttons, shiftbuttons); } public static void LoadProfile(int device) { - m_Config.LoadProfile(device, null); + m_Config.LoadProfile(device, null, null); } public static void LoadTempProfile(int device, string name) { - m_Config.LoadProfile(device, null, appdatapath + @"\Profiles\" + name + ".xml"); + m_Config.LoadProfile(device, null, null, appdatapath + @"\Profiles\" + name + ".xml"); } public static bool Save() { return m_Config.Save(); } - public static void SaveProfile(int device, string propath, System.Windows.Forms.Control[] buttons) + public static void SaveProfile(int device, string propath, System.Windows.Forms.Control[] buttons, System.Windows.Forms.Control[] shiftbuttons) { - m_Config.SaveProfile(device, propath, buttons); + m_Config.SaveProfile(device, propath, buttons, shiftbuttons); } private static byte applyRatio(byte b1, byte b2, double r) @@ -623,6 +659,7 @@ namespace DS4Control public int[] scrollSensitivity = { 0, 0, 0, 0, 0 }; public double[] rainbow = { 0, 0, 0, 0, 0 }; public int[] flashAt = { 30, 30, 30, 30, 30 }; + public int[] shiftModifier = { 0, 0, 0, 0, 0 }; public bool[] mouseAccel = { true, true, true, true, true }; public Byte[][] m_LowLeds = new Byte[][] { @@ -656,7 +693,6 @@ namespace DS4Control public Int32 formWidth = 782; public Int32 formHeight = 550; public Boolean startMinimized = false; - public double version; public DateTime lastChecked; public int CheckWhen = 1; public bool notifications = true; @@ -666,6 +702,12 @@ namespace DS4Control public Dictionary[] customMapKeys = { null, null, null, null, null }; public Dictionary[] customMapMacros = { null, null, null, null, null }; public Dictionary[] customMapButtons = { null, null, null, null, null }; + + public Dictionary[] shiftCustomMapKeyTypes = { null, null, null, null, null }; + public Dictionary[] shiftCustomMapKeys = { null, null, null, null, null }; + public Dictionary[] shiftCustomMapMacros = { null, null, null, null, null }; + public Dictionary[] shiftCustomMapButtons = { null, null, null, null, null }; + public BackingStore() { for (int i = 0; i < 5; i++) @@ -674,6 +716,11 @@ namespace DS4Control customMapKeys[i] = new Dictionary(); customMapMacros[i] = new Dictionary(); customMapButtons[i] = new Dictionary(); + + shiftCustomMapKeyTypes[i] = new Dictionary(); + shiftCustomMapKeys[i] = new Dictionary(); + shiftCustomMapMacros[i] = new Dictionary(); + shiftCustomMapButtons[i] = new Dictionary(); } } @@ -706,15 +753,44 @@ namespace DS4Control catch { return 0; } } + public X360Controls GetShiftCustomButton(int device, DS4Controls controlName) + { + if (shiftCustomMapButtons[device].ContainsKey(controlName)) + return shiftCustomMapButtons[device][controlName]; + else return X360Controls.None; + } + public UInt16 GetShiftCustomKey(int device, DS4Controls controlName) + { + if (shiftCustomMapKeys[device].ContainsKey(controlName)) + return shiftCustomMapKeys[device][controlName]; + else return 0; + } + public string GetShiftCustomMacro(int device, DS4Controls controlName) + { + if (shiftCustomMapMacros[device].ContainsKey(controlName)) + return shiftCustomMapMacros[device][controlName]; + else return "0"; + } + public DS4KeyType GetShiftCustomKeyType(int device, DS4Controls controlName) + { + try + { + if (shiftCustomMapKeyTypes[device].ContainsKey(controlName)) + return shiftCustomMapKeyTypes[device][controlName]; + else return 0; + } + catch { return 0; } + } - public Boolean SaveProfile(int device, String propath, System.Windows.Forms.Control[] buttons) + public Boolean SaveProfile(int device, String propath, System.Windows.Forms.Control[] buttons, System.Windows.Forms.Control[] shiftbuttons) { Boolean Saved = true; - String path = Global.appdatapath + @"\Profiles\" + propath + ".xml"; + String path = Global.appdatapath + @"\Profiles\" + Path.GetFileNameWithoutExtension(propath) + ".xml"; try { XmlNode Node; - + XmlNode xmlControls = m_Xdoc.SelectSingleNode("/ScpControl/Control"); + XmlNode xmlShiftControls = m_Xdoc.SelectSingleNode("/ScpControl/ShiftControl"); m_Xdoc.RemoveAll(); Node = m_Xdoc.CreateXmlDeclaration("1.0", "utf-8", String.Empty); @@ -759,14 +835,16 @@ namespace DS4Control XmlNode xmlSZD = m_Xdoc.CreateNode(XmlNodeType.Element, "SZDeadZone", null); xmlSZD.InnerText = SZDeadzone[device].ToString(); Node.AppendChild(xmlSZD); XmlNode xmlChargingType = m_Xdoc.CreateNode(XmlNodeType.Element, "ChargingType", null); xmlChargingType.InnerText = chargingType[device].ToString(); Node.AppendChild(xmlChargingType); XmlNode xmlMouseAccel = m_Xdoc.CreateNode(XmlNodeType.Element, "MouseAcceleration", null); xmlMouseAccel.InnerText = mouseAccel[device].ToString(); Node.AppendChild(xmlMouseAccel); + XmlNode xmlShiftMod = m_Xdoc.CreateNode(XmlNodeType.Element, "ShiftModifier", null); xmlShiftMod.InnerText = shiftModifier[device].ToString(); Node.AppendChild(xmlShiftMod); XmlNode NodeControl = m_Xdoc.CreateNode(XmlNodeType.Element, "Control", null); XmlNode Key = m_Xdoc.CreateNode(XmlNodeType.Element, "Key", null); XmlNode Macro = m_Xdoc.CreateNode(XmlNodeType.Element, "Macro", null); XmlNode KeyType = m_Xdoc.CreateNode(XmlNodeType.Element, "KeyType", null); XmlNode Button = m_Xdoc.CreateNode(XmlNodeType.Element, "Button", null); - - foreach (var button in buttons) + if (buttons != null) + { + foreach (var button in buttons) { // Save even if string (for xbox controller buttons) if (button.Tag != null) @@ -805,15 +883,80 @@ namespace DS4Control else Button.AppendChild(buttonNode); } } - Node.AppendChild(NodeControl); - if (Button.HasChildNodes) - NodeControl.AppendChild(Button); - if (Macro.HasChildNodes) - NodeControl.AppendChild(Macro); - if (Key.HasChildNodes) - NodeControl.AppendChild(Key); - if (KeyType.HasChildNodes) - NodeControl.AppendChild(KeyType); + Node.AppendChild(NodeControl); + if (Button.HasChildNodes) + NodeControl.AppendChild(Button); + if (Macro.HasChildNodes) + NodeControl.AppendChild(Macro); + if (Key.HasChildNodes) + NodeControl.AppendChild(Key); + if (KeyType.HasChildNodes) + NodeControl.AppendChild(KeyType); + } + else if (xmlControls != null) + Node.AppendChild(xmlControls); + if (shiftModifier[device] > 0) + { + XmlNode NodeShiftControl = m_Xdoc.CreateNode(XmlNodeType.Element, "ShiftControl", null); + + XmlNode ShiftKey = m_Xdoc.CreateNode(XmlNodeType.Element, "Key", null); + XmlNode ShiftMacro = m_Xdoc.CreateNode(XmlNodeType.Element, "Macro", null); + XmlNode ShiftKeyType = m_Xdoc.CreateNode(XmlNodeType.Element, "KeyType", null); + XmlNode ShiftButton = m_Xdoc.CreateNode(XmlNodeType.Element, "Button", null); + if (shiftbuttons != null) + { + foreach (var button in shiftbuttons) + { + // Save even if string (for xbox controller buttons) + if (button.Tag != null) + { + XmlNode buttonNode; + string keyType = String.Empty; + if (button.Tag is String && (String)button.Tag == "Unbound") + { + keyType += DS4KeyType.Unbound; + } + { + if (button.Font.Strikeout) + keyType += DS4KeyType.HoldMacro; + if (button.Font.Underline) + keyType += DS4KeyType.Macro; + if (button.Font.Italic) + keyType += DS4KeyType.Toggle; + if (button.Font.Bold) + keyType += DS4KeyType.ScanCode; + } + if (keyType != String.Empty) + { + buttonNode = m_Xdoc.CreateNode(XmlNodeType.Element, button.Name, null); + buttonNode.InnerText = keyType; + ShiftKeyType.AppendChild(buttonNode); + } + buttonNode = m_Xdoc.CreateNode(XmlNodeType.Element, button.Name, null); + buttonNode.InnerText = button.Tag.ToString(); + if (button.Tag is IEnumerable || button.Tag is Int32[] || button.Tag is UInt16[]) + { + buttonNode.InnerText = string.Join("/", (int[])button.Tag); + ShiftMacro.AppendChild(buttonNode); + } + else if (button.Tag is Int32 || button.Tag is UInt16) + ShiftKey.AppendChild(buttonNode); + else ShiftButton.AppendChild(buttonNode); + } + } + Node.AppendChild(NodeShiftControl); + if (ShiftButton.HasChildNodes) + NodeShiftControl.AppendChild(ShiftButton); + if (ShiftMacro.HasChildNodes) + NodeShiftControl.AppendChild(ShiftMacro); + if (ShiftKey.HasChildNodes) + NodeShiftControl.AppendChild(ShiftKey); + if (ShiftKeyType.HasChildNodes) + NodeShiftControl.AppendChild(ShiftKeyType); + } + else if (xmlShiftControls != null) + Node.AppendChild(xmlShiftControls); + } m_Xdoc.AppendChild(Node); if (NodeControl.HasChildNodes) Node.AppendChild(NodeControl); @@ -863,9 +1006,49 @@ namespace DS4Control case "bnGyroXN": return DS4Controls.GyroXNeg; case "bnGyroZP": return DS4Controls.GyroZPos; case "bnGyroZN": return DS4Controls.GyroZNeg; + + + case "sbnShare": return DS4Controls.Share; + case "sbnL3": return DS4Controls.L3; + case "sbnR3": return DS4Controls.R3; + case "sbnOptions": return DS4Controls.Options; + case "sbnUp": return DS4Controls.DpadUp; + case "sbnRight": return DS4Controls.DpadRight; + case "sbnDown": return DS4Controls.DpadDown; + case "sbnLeft": return DS4Controls.DpadLeft; + + case "sbnL1": return DS4Controls.L1; + case "sbnR1": return DS4Controls.R1; + case "sbnTriangle": return DS4Controls.Triangle; + case "sbnCircle": return DS4Controls.Circle; + case "sbnCross": return DS4Controls.Cross; + case "sbnSquare": return DS4Controls.Square; + + case "sbnPS": return DS4Controls.PS; + case "sbnLSLeft": return DS4Controls.LXNeg; + case "sbnLSUp": return DS4Controls.LYNeg; + case "sbnRSLeft": return DS4Controls.RXNeg; + case "sbnRSUp": return DS4Controls.RYNeg; + + case "sbnLSRight": return DS4Controls.LXPos; + case "sbnLSDown": return DS4Controls.LYPos; + case "sbnRSRight": return DS4Controls.RXPos; + case "sbnRSDown": return DS4Controls.RYPos; + case "sbnL2": return DS4Controls.L2; + case "sbnR2": return DS4Controls.R2; + + case "sbnTouchLeft": return DS4Controls.TouchLeft; + case "sbnTouchMulti": return DS4Controls.TouchMulti; + case "sbnTouchUpper": return DS4Controls.TouchUpper; + case "sbnTouchRight": return DS4Controls.TouchRight; + case "sbnGsyroXP": return DS4Controls.GyroXPos; + case "sbnGyroXN": return DS4Controls.GyroXNeg; + case "sbnGyroZP": return DS4Controls.GyroZPos; + case "sbnGyroZN": return DS4Controls.GyroZNeg; } return 0; } + private X360Controls getX360ControlsByName(string key) { switch (key) @@ -916,13 +1099,17 @@ namespace DS4Control return X360Controls.Unbound; } - public Boolean LoadProfile(int device, System.Windows.Forms.Control[] buttons, string propath = "") + public Boolean LoadProfile(int device, System.Windows.Forms.Control[] buttons, System.Windows.Forms.Control[] shiftbuttons, string propath = "") { Boolean Loaded = true; Dictionary customMapKeyTypes = new Dictionary(); Dictionary customMapKeys = new Dictionary(); Dictionary customMapButtons = new Dictionary(); Dictionary customMapMacros = new Dictionary(); + Dictionary shiftCustomMapKeyTypes = new Dictionary(); + Dictionary shiftCustomMapKeys = new Dictionary(); + Dictionary shiftCustomMapButtons = new Dictionary(); + Dictionary shiftCustomMapMacros = new Dictionary(); Boolean missingSetting = false; string profilepath; if (propath == "") @@ -1053,7 +1240,8 @@ namespace DS4Control catch { missingSetting = true; } try { Item = m_Xdoc.SelectSingleNode("/ScpControl/MouseAcceleration"); Boolean.TryParse(Item.InnerText, out mouseAccel[device]); } catch { missingSetting = true; } - + try { Item = m_Xdoc.SelectSingleNode("/ScpControl/ShiftModifier"); Int32.TryParse(Item.InnerText, out shiftModifier[device]); } + catch { shiftModifier[device] = 0; missingSetting = true; } DS4KeyType keyType; UInt16 wvk; if (buttons == null) @@ -1090,109 +1278,157 @@ namespace DS4Control if (keyType != DS4KeyType.None) customMapKeyTypes.Add(getDS4ControlsByName(item.Name), keyType); } + if (shiftModifier[device] > 0) + { + ParentItem = m_Xdoc.SelectSingleNode("/ScpControl/ShiftControl/Button"); + if (ParentItem != null) + foreach (XmlNode item in ParentItem.ChildNodes) + shiftCustomMapButtons.Add(getDS4ControlsByName(item.Name), getX360ControlsByName(item.InnerText)); + ParentItem = m_Xdoc.SelectSingleNode("/ScpControl/ShiftControl/Macro"); + if (ParentItem != null) + foreach (XmlNode item in ParentItem.ChildNodes) + shiftCustomMapMacros.Add(getDS4ControlsByName(item.Name), item.InnerText); + ParentItem = m_Xdoc.SelectSingleNode("/ScpControl/ShiftControl/Key"); + if (ParentItem != null) + foreach (XmlNode item in ParentItem.ChildNodes) + if (UInt16.TryParse(item.InnerText, out wvk)) + shiftCustomMapKeys.Add(getDS4ControlsByName(item.Name), wvk); + ParentItem = m_Xdoc.SelectSingleNode("/ScpControl/ShiftControl/KeyType"); + if (ParentItem != null) + foreach (XmlNode item in ParentItem.ChildNodes) + if (item != null) + { + keyType = DS4KeyType.None; + if (item.InnerText.Contains(DS4KeyType.ScanCode.ToString())) + keyType |= DS4KeyType.ScanCode; + if (item.InnerText.Contains(DS4KeyType.Toggle.ToString())) + keyType |= DS4KeyType.Toggle; + if (item.InnerText.Contains(DS4KeyType.Macro.ToString())) + keyType |= DS4KeyType.Macro; + if (item.InnerText.Contains(DS4KeyType.HoldMacro.ToString())) + keyType |= DS4KeyType.HoldMacro; + if (item.InnerText.Contains(DS4KeyType.Unbound.ToString())) + keyType |= DS4KeyType.Unbound; + if (keyType != DS4KeyType.None) + shiftCustomMapKeyTypes.Add(getDS4ControlsByName(item.Name), keyType); + } + } } else { - foreach (var button in buttons) - try - { - //bool foundBinding = false; - Item = m_Xdoc.SelectSingleNode(String.Format("/ScpControl/Control/KeyType/{0}", button.Name)); - if (Item != null) - { - //foundBinding = true; - keyType = DS4KeyType.None; - if (Item.InnerText.Contains(DS4KeyType.Unbound.ToString())) - { - keyType = DS4KeyType.Unbound; - button.Tag = "Unbound"; - button.Text = "Unbound"; - } - else - { - bool SC = Item.InnerText.Contains(DS4KeyType.ScanCode.ToString()); - bool TG = Item.InnerText.Contains(DS4KeyType.Toggle.ToString()); - bool MC = Item.InnerText.Contains(DS4KeyType.Macro.ToString()); - bool MR = Item.InnerText.Contains(DS4KeyType.HoldMacro.ToString()); - button.Font = new Font(button.Font, - (SC ? FontStyle.Bold : FontStyle.Regular) | (TG ? FontStyle.Italic : FontStyle.Regular) | - (MC ? FontStyle.Underline : FontStyle.Regular) | (MR ? FontStyle.Strikeout : FontStyle.Regular)); - if (Item.InnerText.Contains(DS4KeyType.ScanCode.ToString())) - keyType |= DS4KeyType.ScanCode; - if (Item.InnerText.Contains(DS4KeyType.Toggle.ToString())) - keyType |= DS4KeyType.Toggle; - if (Item.InnerText.Contains(DS4KeyType.Macro.ToString())) - keyType |= DS4KeyType.Macro; - } - if (keyType != DS4KeyType.None) - customMapKeyTypes.Add(getDS4ControlsByName(Item.Name), keyType); - } - - Item = m_Xdoc.SelectSingleNode(String.Format("/ScpControl/Control/Macro/{0}", button.Name)); - if (Item != null) - { - string[] splitter = Item.InnerText.Split('/'); - int[] keys = new int[splitter.Length]; - for (int i = 0; i < keys.Length; i++) - { - keys[i] = int.Parse(splitter[i]); - if (keys[i] < 255) splitter[i] = ((System.Windows.Forms.Keys)keys[i]).ToString(); - else if (keys[i] == 256) splitter[i] = "Left Mouse Button"; - else if (keys[i] == 257) splitter[i] = "Right Mouse Button"; - else if (keys[i] == 258) splitter[i] = "Middle Mouse Button"; - else if (keys[i] == 259) splitter[i] = "4th Mouse Button"; - else if (keys[i] == 260) splitter[i] = "5th Mouse Button"; - else if (keys[i] > 300) splitter[i] = "Wait " + (keys[i] - 300) + "ms"; - } - button.Text = "Macro"; - button.Tag = keys; - customMapMacros.Add(getDS4ControlsByName(button.Name), Item.InnerText); - } - else if (m_Xdoc.SelectSingleNode(String.Format("/ScpControl/Control/Key/{0}", button.Name)) != null) - { - Item = m_Xdoc.SelectSingleNode(String.Format("/ScpControl/Control/Key/{0}", button.Name)); - if (UInt16.TryParse(Item.InnerText, out wvk)) - { - //foundBinding = true; - customMapKeys.Add(getDS4ControlsByName(Item.Name), wvk); - button.Tag = wvk; - button.Text = ((System.Windows.Forms.Keys)wvk).ToString(); - } - } - else - { - Item = m_Xdoc.SelectSingleNode(String.Format("/ScpControl/Control/Button/{0}", button.Name)); - if (Item != null) - { - //foundBinding = true; - button.Tag = Item.InnerText; - button.Text = Item.InnerText; - customMapButtons.Add(getDS4ControlsByName(button.Name), getX360ControlsByName(Item.InnerText)); - } - } - } - catch - { - - } + LoadButtons(buttons, "Control", customMapKeyTypes, customMapKeys, customMapButtons, customMapMacros); + LoadButtons(shiftbuttons, "ShiftControl", shiftCustomMapKeyTypes, shiftCustomMapKeys, shiftCustomMapButtons, shiftCustomMapMacros); } } //catch { Loaded = false; } - if (Loaded) { this.customMapButtons[device] = customMapButtons; this.customMapKeys[device] = customMapKeys; this.customMapKeyTypes[device] = customMapKeyTypes; this.customMapMacros[device] = customMapMacros; + + this.shiftCustomMapButtons[device] = shiftCustomMapButtons; + this.shiftCustomMapKeys[device] = shiftCustomMapKeys; + this.shiftCustomMapKeyTypes[device] = shiftCustomMapKeyTypes; + this.shiftCustomMapMacros[device] = shiftCustomMapMacros; } // Only add missing settings if the actual load was graceful - if (missingSetting && Loaded) - SaveProfile(device, profilepath, buttons); + if (missingSetting && Loaded)// && buttons != null) + SaveProfile(device, profilepath, buttons, shiftbuttons); return Loaded; } + public void LoadButtons(System.Windows.Forms.Control[] buttons, string control, Dictionary customMapKeyTypes, + Dictionary customMapKeys, Dictionary customMapButtons, Dictionary customMapMacros) + { + XmlNode Item; + DS4KeyType keyType; + UInt16 wvk; + foreach (var button in buttons) + try + { + //bool foundBinding = false; + Item = m_Xdoc.SelectSingleNode(String.Format("/ScpControl/" + control + "/KeyType/{0}", button.Name)); + if (Item != null) + { + //foundBinding = true; + keyType = DS4KeyType.None; + if (Item.InnerText.Contains(DS4KeyType.Unbound.ToString())) + { + keyType = DS4KeyType.Unbound; + button.Tag = "Unbound"; + button.Text = "Unbound"; + } + else + { + bool SC = Item.InnerText.Contains(DS4KeyType.ScanCode.ToString()); + bool TG = Item.InnerText.Contains(DS4KeyType.Toggle.ToString()); + bool MC = Item.InnerText.Contains(DS4KeyType.Macro.ToString()); + bool MR = Item.InnerText.Contains(DS4KeyType.HoldMacro.ToString()); + button.Font = new Font(button.Font, + (SC ? FontStyle.Bold : FontStyle.Regular) | (TG ? FontStyle.Italic : FontStyle.Regular) | + (MC ? FontStyle.Underline : FontStyle.Regular) | (MR ? FontStyle.Strikeout : FontStyle.Regular)); + if (Item.InnerText.Contains(DS4KeyType.ScanCode.ToString())) + keyType |= DS4KeyType.ScanCode; + if (Item.InnerText.Contains(DS4KeyType.Toggle.ToString())) + keyType |= DS4KeyType.Toggle; + if (Item.InnerText.Contains(DS4KeyType.Macro.ToString())) + keyType |= DS4KeyType.Macro; + } + if (keyType != DS4KeyType.None) + customMapKeyTypes.Add(getDS4ControlsByName(Item.Name), keyType); + } + + Item = m_Xdoc.SelectSingleNode(String.Format("/ScpControl/" + control + "/Macro/{0}", button.Name)); + if (Item != null) + { + string[] splitter = Item.InnerText.Split('/'); + int[] keys = new int[splitter.Length]; + for (int i = 0; i < keys.Length; i++) + { + keys[i] = int.Parse(splitter[i]); + if (keys[i] < 255) splitter[i] = ((System.Windows.Forms.Keys)keys[i]).ToString(); + else if (keys[i] == 256) splitter[i] = "Left Mouse Button"; + else if (keys[i] == 257) splitter[i] = "Right Mouse Button"; + else if (keys[i] == 258) splitter[i] = "Middle Mouse Button"; + else if (keys[i] == 259) splitter[i] = "4th Mouse Button"; + else if (keys[i] == 260) splitter[i] = "5th Mouse Button"; + else if (keys[i] > 300) splitter[i] = "Wait " + (keys[i] - 300) + "ms"; + } + button.Text = "Macro"; + button.Tag = keys; + customMapMacros.Add(getDS4ControlsByName(button.Name), Item.InnerText); + } + else if (m_Xdoc.SelectSingleNode(String.Format("/ScpControl/" + control + "/Key/{0}", button.Name)) != null) + { + Item = m_Xdoc.SelectSingleNode(String.Format("/ScpControl/" + control + "/Key/{0}", button.Name)); + if (UInt16.TryParse(Item.InnerText, out wvk)) + { + //foundBinding = true; + customMapKeys.Add(getDS4ControlsByName(Item.Name), wvk); + button.Tag = wvk; + button.Text = ((System.Windows.Forms.Keys)wvk).ToString(); + } + } + else + { + Item = m_Xdoc.SelectSingleNode(String.Format("/ScpControl/" + control + "/Button/{0}", button.Name)); + if (Item != null) + { + //foundBinding = true; + button.Tag = Item.InnerText; + button.Text = Item.InnerText; + customMapButtons.Add(getDS4ControlsByName(button.Name), getX360ControlsByName(Item.InnerText)); + } + } + } + catch + { + + } + } public bool Load() { Boolean Loaded = true; @@ -1223,16 +1459,12 @@ namespace DS4Control catch { missingSetting = true; } try { Item = m_Xdoc.SelectSingleNode("/Profile/Controller4"); profilePath[3] = Item.InnerText; } catch { missingSetting = true; } - try { Item = m_Xdoc.SelectSingleNode("/Profile/DS4Version"); Double.TryParse(Item.InnerText, out version); } - catch { missingSetting = true; } try { Item = m_Xdoc.SelectSingleNode("/Profile/LastChecked"); DateTime.TryParse(Item.InnerText, out lastChecked); } catch { missingSetting = true; } try { Item = m_Xdoc.SelectSingleNode("/Profile/CheckWhen"); Int32.TryParse(Item.InnerText, out CheckWhen); } catch { missingSetting = true; } try { Item = m_Xdoc.SelectSingleNode("/Profile/Notifications"); Boolean.TryParse(Item.InnerText, out notifications); } catch { missingSetting = true; } - try { Item = m_Xdoc.SelectSingleNode("/Profile/Notifications"); Boolean.TryParse(Item.InnerText, out notifications); } - catch { missingSetting = true; } try { Item = m_Xdoc.SelectSingleNode("/Profile/DisconnectBTAtStop"); Boolean.TryParse(Item.InnerText, out disconnectBTAtStop); } catch { missingSetting = true; } try { Item = m_Xdoc.SelectSingleNode("/Profile/SwipeProfiles"); Boolean.TryParse(Item.InnerText, out swipeProfiles); } @@ -1274,7 +1506,6 @@ namespace DS4Control XmlNode xmlController3 = m_Xdoc.CreateNode(XmlNodeType.Element, "Controller3", null); xmlController3.InnerText = profilePath[2]; Node.AppendChild(xmlController3); XmlNode xmlController4 = m_Xdoc.CreateNode(XmlNodeType.Element, "Controller4", null); xmlController4.InnerText = profilePath[3]; Node.AppendChild(xmlController4); - XmlNode xmlVersion = m_Xdoc.CreateNode(XmlNodeType.Element, "DS4Version", null); xmlVersion.InnerText = version.ToString(); Node.AppendChild(xmlVersion); XmlNode xmlLastChecked = m_Xdoc.CreateNode(XmlNodeType.Element, "LastChecked", null); xmlLastChecked.InnerText = lastChecked.ToString(); Node.AppendChild(xmlLastChecked); XmlNode xmlCheckWhen = m_Xdoc.CreateNode(XmlNodeType.Element, "CheckWhen", null); xmlCheckWhen.InnerText = CheckWhen.ToString(); Node.AppendChild(xmlCheckWhen); XmlNode xmlNotifications = m_Xdoc.CreateNode(XmlNodeType.Element, "Notifications", null); xmlNotifications.InnerText = notifications.ToString(); Node.AppendChild(xmlNotifications); diff --git a/DS4Library/DS4Device.cs b/DS4Library/DS4Device.cs index 4d30df9..1974540 100644 --- a/DS4Library/DS4Device.cs +++ b/DS4Library/DS4Device.cs @@ -264,18 +264,33 @@ namespace DS4Library return priorInputReport30 != 0xff; } private byte priorInputReport30 = 0xff; - [DllImport("user32.dll", SetLastError = true)] - static extern void keybd_event(byte bVk, byte bScan, int dwFlags, int dwExtraInfo); - public void ReleaseKeys(ushort key) - { - keybd_event((byte)key, 0, 2, 0); - } + public double Latency = 0; + bool warn; private void performDs4Input() { System.Timers.Timer readTimeout = new System.Timers.Timer(); // Await 30 seconds for the initial packet, then 3 seconds thereafter. readTimeout.Elapsed += delegate { HidDevice.CancelIO(); }; + List Latency = new List(); + long oldtime = 0; + Stopwatch sw = new Stopwatch(); + sw.Start(); while (true) { + Latency.Add(sw.ElapsedMilliseconds - oldtime); + oldtime = sw.ElapsedMilliseconds; + + if (Latency.Count > 100) + Latency.RemoveAt(0); + + this.Latency = Latency.Average(); + + if (this.Latency > 10 && !warn && sw.ElapsedMilliseconds > 4000) + { + warn = true; + //System.Diagnostics.Trace.WriteLine(System.DateTime.UtcNow.ToString("o") + "> " + "Controller " + /*this.DeviceNum*/ + 1 + " (" + this.MacAddress + ") is experiencing latency issues. Currently at " + Math.Round(this.Latency, 2).ToString() + "ms of recomended maximum 10ms"); + } + else if (this.Latency <= 10 && warn) warn = false; + if (readTimeout.Interval != 3000.0) { if (readTimeout.Interval != 30000.0) diff --git a/DS4Tool/DS4Tool.csproj b/DS4Tool/DS4Tool.csproj index 8364665..78a3faa 100644 --- a/DS4Tool/DS4Tool.csproj +++ b/DS4Tool/DS4Tool.csproj @@ -220,6 +220,7 @@ + @@ -248,6 +249,7 @@ + @@ -277,6 +279,7 @@ + diff --git a/DS4Tool/Hotkeys.Designer.cs b/DS4Tool/Hotkeys.Designer.cs index 4f441a1..18c720d 100644 --- a/DS4Tool/Hotkeys.Designer.cs +++ b/DS4Tool/Hotkeys.Designer.cs @@ -68,6 +68,8 @@ this.label31 = new System.Windows.Forms.Label(); this.lLChangelog = new System.Windows.Forms.LinkLabel(); this.linkDonate = new System.Windows.Forms.LinkLabel(); + this.label32 = new System.Windows.Forms.Label(); + this.label33 = new System.Windows.Forms.Label(); this.tableLayoutPanel1.SuspendLayout(); this.SuspendLayout(); // @@ -75,7 +77,7 @@ // this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.button1.DialogResult = System.Windows.Forms.DialogResult.Cancel; - this.button1.Location = new System.Drawing.Point(215, 386); + this.button1.Location = new System.Drawing.Point(215, 407); this.button1.Name = "button1"; this.button1.Size = new System.Drawing.Size(75, 23); this.button1.TabIndex = 8; @@ -87,7 +89,7 @@ // this.linkElectro.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.linkElectro.AutoSize = true; - this.linkElectro.Location = new System.Drawing.Point(272, 361); + this.linkElectro.Location = new System.Drawing.Point(272, 382); this.linkElectro.Name = "linkElectro"; this.linkElectro.Size = new System.Drawing.Size(149, 13); this.linkElectro.TabIndex = 18; @@ -99,7 +101,7 @@ // this.linkJays2Kings.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.linkJays2Kings.AutoSize = true; - this.linkJays2Kings.Location = new System.Drawing.Point(17, 361); + this.linkJays2Kings.Location = new System.Drawing.Point(17, 382); this.linkJays2Kings.Name = "linkJays2Kings"; this.linkJays2Kings.Size = new System.Drawing.Size(60, 13); this.linkJays2Kings.TabIndex = 18; @@ -111,7 +113,7 @@ // this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.label2.AutoSize = true; - this.label2.Location = new System.Drawing.Point(203, 339); + this.label2.Location = new System.Drawing.Point(203, 360); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(109, 13); this.label2.TabIndex = 13; @@ -131,7 +133,7 @@ // this.linkInhexSTER.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.linkInhexSTER.AutoSize = true; - this.linkInhexSTER.Location = new System.Drawing.Point(95, 361); + this.linkInhexSTER.Location = new System.Drawing.Point(95, 382); this.linkInhexSTER.Name = "linkInhexSTER"; this.linkInhexSTER.Size = new System.Drawing.Size(159, 13); this.linkInhexSTER.TabIndex = 18; @@ -143,7 +145,7 @@ // this.linkJhebbel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.linkJhebbel.AutoSize = true; - this.linkJhebbel.Location = new System.Drawing.Point(429, 361); + this.linkJhebbel.Location = new System.Drawing.Point(429, 382); this.linkJhebbel.Name = "linkJhebbel"; this.linkJhebbel.Size = new System.Drawing.Size(87, 13); this.linkJhebbel.TabIndex = 18; @@ -154,7 +156,7 @@ // label23 // this.label23.AutoSize = true; - this.label23.Location = new System.Drawing.Point(6, 333); + this.label23.Location = new System.Drawing.Point(6, 352); this.label23.Name = "label23"; this.label23.Size = new System.Drawing.Size(58, 13); this.label23.TabIndex = 3; @@ -164,7 +166,7 @@ // this.label26.Anchor = System.Windows.Forms.AnchorStyles.Left; this.label26.AutoSize = true; - this.label26.Location = new System.Drawing.Point(3, 282); + this.label26.Location = new System.Drawing.Point(3, 301); this.label26.Name = "label26"; this.label26.Size = new System.Drawing.Size(60, 13); this.label26.TabIndex = 14; @@ -174,7 +176,7 @@ // this.label27.Anchor = System.Windows.Forms.AnchorStyles.Left; this.label27.AutoSize = true; - this.label27.Location = new System.Drawing.Point(193, 244); + this.label27.Location = new System.Drawing.Point(193, 263); this.label27.Name = "label27"; this.label27.Size = new System.Drawing.Size(296, 13); this.label27.TabIndex = 14; @@ -184,7 +186,7 @@ // this.label25.Anchor = System.Windows.Forms.AnchorStyles.Left; this.label25.AutoSize = true; - this.label25.Location = new System.Drawing.Point(3, 263); + this.label25.Location = new System.Drawing.Point(3, 282); this.label25.Name = "label25"; this.label25.Size = new System.Drawing.Size(37, 13); this.label25.TabIndex = 14; @@ -194,7 +196,7 @@ // this.label29.Anchor = System.Windows.Forms.AnchorStyles.Left; this.label29.AutoSize = true; - this.label29.Location = new System.Drawing.Point(193, 282); + this.label29.Location = new System.Drawing.Point(193, 301); this.label29.Name = "label29"; this.label29.Size = new System.Drawing.Size(313, 13); this.label29.TabIndex = 14; @@ -204,7 +206,7 @@ // this.label28.Anchor = System.Windows.Forms.AnchorStyles.Left; this.label28.AutoSize = true; - this.label28.Location = new System.Drawing.Point(193, 263); + this.label28.Location = new System.Drawing.Point(193, 282); this.label28.Name = "label28"; this.label28.Size = new System.Drawing.Size(160, 13); this.label28.TabIndex = 14; @@ -277,7 +279,7 @@ // this.label13.Anchor = System.Windows.Forms.AnchorStyles.Left; this.label13.AutoSize = true; - this.label13.Location = new System.Drawing.Point(3, 225); + this.label13.Location = new System.Drawing.Point(3, 244); this.label13.Name = "label13"; this.label13.Size = new System.Drawing.Size(184, 13); this.label13.TabIndex = 14; @@ -405,7 +407,7 @@ // this.label24.Anchor = System.Windows.Forms.AnchorStyles.Left; this.label24.AutoSize = true; - this.label24.Location = new System.Drawing.Point(3, 244); + this.label24.Location = new System.Drawing.Point(3, 263); this.label24.Name = "label24"; this.label24.Size = new System.Drawing.Size(40, 13); this.label24.TabIndex = 14; @@ -416,7 +418,6 @@ this.tableLayoutPanel1.ColumnCount = 2; this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tableLayoutPanel1.Controls.Add(this.label24, 0, 12); this.tableLayoutPanel1.Controls.Add(this.label20, 0, 10); this.tableLayoutPanel1.Controls.Add(this.label22, 1, 10); this.tableLayoutPanel1.Controls.Add(this.label1, 0, 6); @@ -430,7 +431,6 @@ this.tableLayoutPanel1.Controls.Add(this.label9, 1, 8); this.tableLayoutPanel1.Controls.Add(this.label12, 1, 3); this.tableLayoutPanel1.Controls.Add(this.label3, 0, 9); - this.tableLayoutPanel1.Controls.Add(this.label13, 0, 11); this.tableLayoutPanel1.Controls.Add(this.label21, 0, 4); this.tableLayoutPanel1.Controls.Add(this.label7, 1, 9); this.tableLayoutPanel1.Controls.Add(this.label4, 0, 7); @@ -438,32 +438,37 @@ this.tableLayoutPanel1.Controls.Add(this.label16, 1, 4); this.tableLayoutPanel1.Controls.Add(this.label8, 1, 7); this.tableLayoutPanel1.Controls.Add(this.label14, 1, 5); - this.tableLayoutPanel1.Controls.Add(this.label28, 1, 13); - this.tableLayoutPanel1.Controls.Add(this.label25, 0, 13); - this.tableLayoutPanel1.Controls.Add(this.label26, 0, 14); this.tableLayoutPanel1.Controls.Add(this.label30, 0, 0); this.tableLayoutPanel1.Controls.Add(this.label31, 1, 0); - this.tableLayoutPanel1.Controls.Add(this.label27, 1, 12); - this.tableLayoutPanel1.Controls.Add(this.label29, 1, 14); + this.tableLayoutPanel1.Controls.Add(this.label32, 0, 11); + this.tableLayoutPanel1.Controls.Add(this.label13, 0, 12); + this.tableLayoutPanel1.Controls.Add(this.label24, 0, 13); + this.tableLayoutPanel1.Controls.Add(this.label26, 0, 15); + this.tableLayoutPanel1.Controls.Add(this.label25, 0, 14); + this.tableLayoutPanel1.Controls.Add(this.label29, 1, 15); + this.tableLayoutPanel1.Controls.Add(this.label28, 1, 14); + this.tableLayoutPanel1.Controls.Add(this.label27, 1, 13); + this.tableLayoutPanel1.Controls.Add(this.label33, 1, 11); this.tableLayoutPanel1.Location = new System.Drawing.Point(3, 31); this.tableLayoutPanel1.Name = "tableLayoutPanel1"; - this.tableLayoutPanel1.RowCount = 15; + this.tableLayoutPanel1.RowCount = 16; this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 32F)); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.142857F)); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.142857F)); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.142857F)); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.142857F)); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.142857F)); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.142857F)); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.142857F)); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.142857F)); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.142857F)); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.142857F)); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.142857F)); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.142857F)); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.142857F)); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 7.142857F)); - this.tableLayoutPanel1.Size = new System.Drawing.Size(513, 299); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 6.666667F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 6.666667F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 6.666667F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 6.666667F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 6.666667F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 6.666667F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 6.666667F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 6.666667F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 6.666667F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 6.666667F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 6.666667F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 6.666667F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 6.666667F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 6.666667F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 6.666667F)); + this.tableLayoutPanel1.Size = new System.Drawing.Size(513, 318); this.tableLayoutPanel1.TabIndex = 19; // // label30 @@ -509,13 +514,33 @@ this.linkDonate.Text = "Donate via Paypal"; this.linkDonate.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkDonate_LinkClicked); // + // label32 + // + this.label32.Anchor = System.Windows.Forms.AnchorStyles.Left; + this.label32.AutoSize = true; + this.label32.Location = new System.Drawing.Point(3, 225); + this.label32.Name = "label32"; + this.label32.Size = new System.Drawing.Size(66, 13); + this.label32.TabIndex = 14; + this.label32.Text = "Shift Modifer"; + // + // label33 + // + this.label33.Anchor = System.Windows.Forms.AnchorStyles.Left; + this.label33.AutoSize = true; + this.label33.Location = new System.Drawing.Point(193, 225); + this.label33.Name = "label33"; + this.label33.Size = new System.Drawing.Size(216, 13); + this.label33.TabIndex = 14; + this.label33.Text = "Hold an action to use another set of controls"; + // // Hotkeys // this.AcceptButton = this.button1; this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.CancelButton = this.button1; - this.ClientSize = new System.Drawing.Size(520, 413); + this.ClientSize = new System.Drawing.Size(520, 434); this.Controls.Add(this.linkDonate); this.Controls.Add(this.lLChangelog); this.Controls.Add(this.tableLayoutPanel1); @@ -581,5 +606,7 @@ private System.Windows.Forms.Label label31; private System.Windows.Forms.LinkLabel lLChangelog; private System.Windows.Forms.LinkLabel linkDonate; + private System.Windows.Forms.Label label32; + private System.Windows.Forms.Label label33; } } \ No newline at end of file diff --git a/DS4Tool/Hotkeys.cs b/DS4Tool/Hotkeys.cs index 2c86667..1d501e8 100644 --- a/DS4Tool/Hotkeys.cs +++ b/DS4Tool/Hotkeys.cs @@ -9,17 +9,20 @@ using System.Windows.Forms; using DS4Control; using System.Net; using System.IO; +using System.Reflection; +using System.Diagnostics; namespace ScpServer { public partial class Hotkeys : Form { - ScpForm form; - public Hotkeys(ScpForm main) + public Hotkeys() { - form = main; InitializeComponent(); - lbAbout.Text += Global.getVersion().ToString() + ")"; + FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location); + string version = fvi.FileVersion; + lbAbout.Text += version + ")"; + //lbAbout.Text += Global.getVersion().ToString() + ")"; } private void button1_Click(object sender, EventArgs e) diff --git a/DS4Tool/KBM360.Designer.cs b/DS4Tool/KBM360.Designer.cs index 9870305..264c229 100644 --- a/DS4Tool/KBM360.Designer.cs +++ b/DS4Tool/KBM360.Designer.cs @@ -1256,7 +1256,7 @@ this.btnSEMICOLON.Size = new System.Drawing.Size(24, 24); this.btnSEMICOLON.TabIndex = 200; this.btnSEMICOLON.TabStop = false; - this.btnSEMICOLON.Tag = "59"; + this.btnSEMICOLON.Tag = "186"; this.btnSEMICOLON.Text = ";"; this.btnSEMICOLON.UseVisualStyleBackColor = true; // @@ -2195,7 +2195,6 @@ this.Text = "Keybaord"; this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.finalMeasure); this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Key_Down_Action); - this.KeyUp += new System.Windows.Forms.KeyEventHandler(this.Key_Up_Action); ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit(); this.ResumeLayout(false); diff --git a/DS4Tool/KBM360.cs b/DS4Tool/KBM360.cs index 0838d9d..d66baec 100644 --- a/DS4Tool/KBM360.cs +++ b/DS4Tool/KBM360.cs @@ -29,7 +29,14 @@ namespace ScpServer cbScanCode.Checked = button.Font.Bold; //cBMacro.Checked = button.Font.Underline; lBMacroOn.Visible = button.Font.Underline; - Text = "Select an action for " + button.Name.Substring(2); + if (button.Name.StartsWith("bn")) + Text = "Select an action for " + button.Name.Substring(2); + else if (button.Name.StartsWith("sbn")) + { + Text = "Select an action for " + button.Name.Substring(3); + btnUNBOUND2.Text = "Fall Back"; + btnUNBOUND2.Tag = null; + } foreach (System.Windows.Forms.Control control in this.Controls) if (control is Button) ((Button)control).Click += anybtn_Click; @@ -64,13 +71,15 @@ namespace ScpServer else keyname = "How did you get here?"; } + else if (((Button)sender).Tag == null) + keyname = "Fall back"; else if (((Button)sender).Tag.ToString().Contains("X360")) keyname = ((Button)sender).Tag.ToString().Substring(4); else keyname = ((Button)sender).Text; object keytag; - if (((Button)sender).Tag.ToString().Contains("X360")) + if (((Button)sender).Tag != null && ((Button)sender).Tag.ToString().Contains("X360")) keytag = ((Button)sender).Tag.ToString().Substring(4); else keytag = ((Button)sender).Tag; @@ -95,13 +104,6 @@ namespace ScpServer this.Close(); } - private void Key_Up_Action(object sender, KeyEventArgs e) - { - lBMacroOn.Visible = false; - ops.ChangeButtonText(e.KeyCode.ToString(), e.KeyValue); - this.Close(); - } - private void Key_Press_Action(object sender, KeyEventArgs e) { lBMacroOn.Visible = false; diff --git a/DS4Tool/Options.Designer.cs b/DS4Tool/Options.Designer.cs index a7ec677..b233803 100644 --- a/DS4Tool/Options.Designer.cs +++ b/DS4Tool/Options.Designer.cs @@ -28,6 +28,7 @@ /// private void InitializeComponent() { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Options)); this.bnTouchUpper = new System.Windows.Forms.Button(); this.bnTouchMulti = new System.Windows.Forms.Button(); this.bnTouchRight = new System.Windows.Forms.Button(); @@ -96,18 +97,12 @@ this.tBsixaxisAccelZ = new System.Windows.Forms.TrackBar(); this.cBFlushHIDQueue = new System.Windows.Forms.CheckBox(); this.tBsixaxisAccelY = new System.Windows.Forms.TrackBar(); - this.leftMotorLabel = new System.Windows.Forms.Label(); this.tBsixaxisAccelX = new System.Windows.Forms.TrackBar(); - this.rightMotorLabel = new System.Windows.Forms.Label(); this.tBsixaxisGyroZ = new System.Windows.Forms.TrackBar(); - this.rumbleBoostLabel = new System.Windows.Forms.Label(); this.tBsixaxisGyroY = new System.Windows.Forms.TrackBar(); this.tBsixaxisGyroX = new System.Windows.Forms.TrackBar(); this.nUDRumbleBoost = new System.Windows.Forms.NumericUpDown(); this.lB6Accel = new System.Windows.Forms.Label(); - this.nUDHeavyRumble = new System.Windows.Forms.NumericUpDown(); - this.lB6Gryo = new System.Windows.Forms.Label(); - this.nUDLightRumble = new System.Windows.Forms.NumericUpDown(); this.btnRumbleTest = new System.Windows.Forms.Button(); this.lbFull = new System.Windows.Forms.Label(); this.lBLowRed = new System.Windows.Forms.Label(); @@ -119,8 +114,7 @@ this.lBEmpty = new System.Windows.Forms.Label(); this.FullPanel = new System.Windows.Forms.Panel(); this.lowBatteryPanel = new System.Windows.Forms.Panel(); - this.SixaxisPanel = new System.Windows.Forms.Panel(); - this.bnGyroZP = new System.Windows.Forms.Button(); + this.lB6Gryo = new System.Windows.Forms.Label(); this.lbRS = new System.Windows.Forms.Label(); this.lbLS = new System.Windows.Forms.Label(); this.nUDRS = new System.Windows.Forms.NumericUpDown(); @@ -129,6 +123,9 @@ this.nUDL2 = new System.Windows.Forms.NumericUpDown(); this.gBTouchpad = new System.Windows.Forms.GroupBox(); this.gBOther = new System.Windows.Forms.GroupBox(); + this.lBforMandR = new System.Windows.Forms.Label(); + this.lBUseController = new System.Windows.Forms.Label(); + this.cBMouseAccel = new System.Windows.Forms.CheckBox(); this.nUDSixaxis = new System.Windows.Forms.NumericUpDown(); this.cBControllerInput = new System.Windows.Forms.CheckBox(); this.cBIdleDisconnect = new System.Windows.Forms.CheckBox(); @@ -139,22 +136,93 @@ this.rBNormal = new System.Windows.Forms.RadioButton(); this.rBRainbow = new System.Windows.Forms.RadioButton(); this.lbWhileCharging = new System.Windows.Forms.Label(); - this.label1 = new System.Windows.Forms.Label(); + this.lBPercentFlashBar = new System.Windows.Forms.Label(); this.lBFlashAt = new System.Windows.Forms.Label(); this.nUDflashLED = new System.Windows.Forms.NumericUpDown(); this.gBRumble = new System.Windows.Forms.GroupBox(); + this.lBPercentRumble = new System.Windows.Forms.Label(); this.gBDeadzone = new System.Windows.Forms.GroupBox(); this.lbSixaxisX = new System.Windows.Forms.Label(); this.lbSixaxisZ = new System.Windows.Forms.Label(); this.nUDSZ = new System.Windows.Forms.NumericUpDown(); this.nUDSX = new System.Windows.Forms.NumericUpDown(); + this.tabControls = new System.Windows.Forms.TabControl(); + this.tPControls = new System.Windows.Forms.TabPage(); + this.lBGryo = new System.Windows.Forms.Label(); + this.fLPTiltControls = new System.Windows.Forms.FlowLayoutPanel(); + this.bnGyroZN = new System.Windows.Forms.Button(); + this.bnGyroZP = new System.Windows.Forms.Button(); this.bnGyroXP = new System.Windows.Forms.Button(); this.bnGyroXN = new System.Windows.Forms.Button(); - this.bnGyroZN = new System.Windows.Forms.Button(); - this.fLPTiltControls = new System.Windows.Forms.FlowLayoutPanel(); - this.label2 = new System.Windows.Forms.Label(); + this.tPShiftMod = new System.Windows.Forms.TabPage(); + this.slBGryo = new System.Windows.Forms.Label(); + this.sfLPTiltControls = new System.Windows.Forms.FlowLayoutPanel(); + this.sbnGyroZN = new System.Windows.Forms.Button(); + this.sbnGyroZP = new System.Windows.Forms.Button(); + this.sbnGyroXP = new System.Windows.Forms.Button(); + this.sbnGyroXN = new System.Windows.Forms.Button(); + this.cBShiftControl = new System.Windows.Forms.ComboBox(); + this.lBShiftControls = new System.Windows.Forms.ListBox(); + this.lBHold = new System.Windows.Forms.Label(); + this.lBtoUse = new System.Windows.Forms.Label(); + this.ShiftMainPanel = new System.Windows.Forms.Panel(); + this.spBController = new System.Windows.Forms.PictureBox(); + this.sbnTouchUpper = new System.Windows.Forms.Button(); + this.sbnTouchLeft = new System.Windows.Forms.Button(); + this.sbnTouchRight = new System.Windows.Forms.Button(); + this.sbnTouchMulti = new System.Windows.Forms.Button(); + this.sbnR1 = new System.Windows.Forms.Button(); + this.sbnCross = new System.Windows.Forms.Button(); + this.sbnCircle = new System.Windows.Forms.Button(); + this.sbtnRightStick = new System.Windows.Forms.Button(); + this.sbnSquare = new System.Windows.Forms.Button(); + this.sbtnLightbar = new System.Windows.Forms.Button(); + this.sbnTriangle = new System.Windows.Forms.Button(); + this.sbnUp = new System.Windows.Forms.Button(); + this.sbtnLeftStick = new System.Windows.Forms.Button(); + this.sbnDown = new System.Windows.Forms.Button(); + this.sbnL2 = new System.Windows.Forms.Button(); + this.sbnRight = new System.Windows.Forms.Button(); + this.sbnR2 = new System.Windows.Forms.Button(); + this.sbnLeft = new System.Windows.Forms.Button(); + this.sbnL1 = new System.Windows.Forms.Button(); + this.sbnOptions = new System.Windows.Forms.Button(); + this.sbnPS = new System.Windows.Forms.Button(); + this.sbnShare = new System.Windows.Forms.Button(); + this.ShiftSticksPanel = new System.Windows.Forms.Panel(); + this.sbtnFullView = new System.Windows.Forms.Button(); + this.spBSticks = new System.Windows.Forms.PictureBox(); + this.sbnL3 = new System.Windows.Forms.Button(); + this.sbnRSDown = new System.Windows.Forms.Button(); + this.sbnLSUp = new System.Windows.Forms.Button(); + this.sbnRSUp = new System.Windows.Forms.Button(); + this.sbnLSLeft = new System.Windows.Forms.Button(); + this.sbnRSRight = new System.Windows.Forms.Button(); + this.sbnLSRight = new System.Windows.Forms.Button(); + this.sbnRSLeft = new System.Windows.Forms.Button(); + this.sbnLSDown = new System.Windows.Forms.Button(); + this.sbnR3 = new System.Windows.Forms.Button(); + this.tPController = new System.Windows.Forms.TabPage(); + this.lBL2Track = new System.Windows.Forms.Label(); + this.pBDelayTracker = new System.Windows.Forms.PictureBox(); + this.btnSATrack = new System.Windows.Forms.Button(); + this.btnRSTrack = new System.Windows.Forms.Button(); + this.lBRSTip = new System.Windows.Forms.Label(); + this.lBInputDelay = new System.Windows.Forms.Label(); + this.lBR2Track = new System.Windows.Forms.Label(); + this.lBLSTip = new System.Windows.Forms.Label(); + this.lBSATip = new System.Windows.Forms.Label(); + this.btnLSTrack = new System.Windows.Forms.Button(); + this.pBSADeadzone = new System.Windows.Forms.PictureBox(); + this.lBSATrack = new System.Windows.Forms.Label(); + this.pBRSDeadzone = new System.Windows.Forms.PictureBox(); + this.lBRSTrack = new System.Windows.Forms.Label(); + this.pBLSDeadzone = new System.Windows.Forms.PictureBox(); + this.lBLSTrack = new System.Windows.Forms.Label(); + this.tBR2 = new System.Windows.Forms.TrackBar(); + this.tBL2 = new System.Windows.Forms.TrackBar(); + this.SixaxisPanel = new System.Windows.Forms.Panel(); this.advColorDialog = new ScpServer.AdvancedColorDialog(); - this.cBMouseAccel = new System.Windows.Forms.CheckBox(); this.MainPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.pBController)).BeginInit(); this.SticksPanel.SuspendLayout(); @@ -176,14 +244,11 @@ ((System.ComponentModel.ISupportInitialize)(this.tBsixaxisGyroY)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.tBsixaxisGyroX)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.nUDRumbleBoost)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nUDHeavyRumble)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.nUDLightRumble)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.lowRedBar)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.lowGreenBar)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.lowBlueBar)).BeginInit(); this.FullPanel.SuspendLayout(); this.lowBatteryPanel.SuspendLayout(); - this.SixaxisPanel.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.nUDRS)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.numUDMouseSens)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.nUDLS)).BeginInit(); @@ -197,7 +262,23 @@ this.gBDeadzone.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.nUDSZ)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.nUDSX)).BeginInit(); + this.tabControls.SuspendLayout(); + this.tPControls.SuspendLayout(); this.fLPTiltControls.SuspendLayout(); + this.tPShiftMod.SuspendLayout(); + this.sfLPTiltControls.SuspendLayout(); + this.ShiftMainPanel.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.spBController)).BeginInit(); + this.ShiftSticksPanel.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.spBSticks)).BeginInit(); + this.tPController.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.pBDelayTracker)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.pBSADeadzone)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.pBRSDeadzone)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.pBLSDeadzone)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.tBR2)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.tBL2)).BeginInit(); + this.SixaxisPanel.SuspendLayout(); this.SuspendLayout(); // // bnTouchUpper @@ -309,7 +390,7 @@ this.MainPanel.Controls.Add(this.bnOptions); this.MainPanel.Controls.Add(this.bnPS); this.MainPanel.Controls.Add(this.bnShare); - this.MainPanel.Location = new System.Drawing.Point(7, 44); + this.MainPanel.Location = new System.Drawing.Point(6, 42); this.MainPanel.Name = "MainPanel"; this.MainPanel.Size = new System.Drawing.Size(249, 137); this.MainPanel.TabIndex = 185; @@ -325,6 +406,8 @@ this.pBController.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; this.pBController.TabIndex = 1; this.pBController.TabStop = false; + this.pBController.BackColorChanged += new System.EventHandler(this.pBController_BackColorChanged); + this.pBController.BackgroundImageChanged += new System.EventHandler(this.pBController_BackgroundImageChanged); // // bnR1 // @@ -683,7 +766,7 @@ this.SticksPanel.Controls.Add(this.bnRSLeft); this.SticksPanel.Controls.Add(this.bnLSDown); this.SticksPanel.Controls.Add(this.bnR3); - this.SticksPanel.Location = new System.Drawing.Point(7, 44); + this.SticksPanel.Location = new System.Drawing.Point(6, 42); this.SticksPanel.Name = "SticksPanel"; this.SticksPanel.Size = new System.Drawing.Size(249, 142); this.SticksPanel.TabIndex = 187; @@ -903,7 +986,7 @@ // lBControlTip // this.lBControlTip.AutoSize = true; - this.lBControlTip.Location = new System.Drawing.Point(25, 7); + this.lBControlTip.Location = new System.Drawing.Point(24, 5); this.lBControlTip.Name = "lBControlTip"; this.lBControlTip.Size = new System.Drawing.Size(219, 26); this.lBControlTip.TabIndex = 181; @@ -948,7 +1031,7 @@ "Sixaxis Down :", "Sixaxis Left :", "Sixaxis Right :"}); - this.lBControls.Location = new System.Drawing.Point(258, 9); + this.lBControls.Location = new System.Drawing.Point(257, 7); this.lBControls.Name = "lBControls"; this.lBControls.Size = new System.Drawing.Size(169, 173); this.lBControls.TabIndex = 180; @@ -1257,7 +1340,7 @@ // lBIdleMinutes // this.lBIdleMinutes.AutoSize = true; - this.lBIdleMinutes.Location = new System.Drawing.Point(164, 49); + this.lBIdleMinutes.Location = new System.Drawing.Point(163, 48); this.lBIdleMinutes.Name = "lBIdleMinutes"; this.lBIdleMinutes.Size = new System.Drawing.Size(28, 13); this.lBIdleMinutes.TabIndex = 200; @@ -1300,19 +1383,19 @@ // this.tBsixaxisAccelZ.AutoSize = false; this.tBsixaxisAccelZ.BackColor = System.Drawing.Color.White; - this.tBsixaxisAccelZ.Location = new System.Drawing.Point(315, 3); - this.tBsixaxisAccelZ.Maximum = 32767; - this.tBsixaxisAccelZ.Minimum = -32768; + this.tBsixaxisAccelZ.Location = new System.Drawing.Point(71, 79); + this.tBsixaxisAccelZ.Maximum = 8500; + this.tBsixaxisAccelZ.Minimum = -8500; this.tBsixaxisAccelZ.Name = "tBsixaxisAccelZ"; this.tBsixaxisAccelZ.Size = new System.Drawing.Size(50, 19); this.tBsixaxisAccelZ.TabIndex = 217; - this.tBsixaxisAccelZ.TickFrequency = 16384; + this.tBsixaxisAccelZ.TickFrequency = 4750; // // cBFlushHIDQueue // this.cBFlushHIDQueue.AccessibleName = "flushHIDQueue"; this.cBFlushHIDQueue.AutoSize = true; - this.cBFlushHIDQueue.Location = new System.Drawing.Point(306, 48); + this.cBFlushHIDQueue.Location = new System.Drawing.Point(357, 16); this.cBFlushHIDQueue.Name = "cBFlushHIDQueue"; this.cBFlushHIDQueue.RightToLeft = System.Windows.Forms.RightToLeft.Yes; this.cBFlushHIDQueue.Size = new System.Drawing.Size(73, 17); @@ -1325,91 +1408,61 @@ // this.tBsixaxisAccelY.AutoSize = false; this.tBsixaxisAccelY.BackColor = System.Drawing.Color.White; - this.tBsixaxisAccelY.Location = new System.Drawing.Point(268, 3); - this.tBsixaxisAccelY.Maximum = 32767; - this.tBsixaxisAccelY.Minimum = -32768; + this.tBsixaxisAccelY.Location = new System.Drawing.Point(72, 49); + this.tBsixaxisAccelY.Maximum = 8500; + this.tBsixaxisAccelY.Minimum = -8500; this.tBsixaxisAccelY.Name = "tBsixaxisAccelY"; this.tBsixaxisAccelY.Size = new System.Drawing.Size(50, 19); this.tBsixaxisAccelY.TabIndex = 218; - this.tBsixaxisAccelY.TickFrequency = 16384; - // - // leftMotorLabel - // - this.leftMotorLabel.AutoSize = true; - this.leftMotorLabel.Location = new System.Drawing.Point(763, 208); - this.leftMotorLabel.Name = "leftMotorLabel"; - this.leftMotorLabel.Size = new System.Drawing.Size(13, 13); - this.leftMotorLabel.TabIndex = 209; - this.leftMotorLabel.Text = "L"; - this.leftMotorLabel.Visible = false; + this.tBsixaxisAccelY.TickFrequency = 4750; // // tBsixaxisAccelX // this.tBsixaxisAccelX.AutoSize = false; this.tBsixaxisAccelX.BackColor = System.Drawing.Color.White; - this.tBsixaxisAccelX.Location = new System.Drawing.Point(222, 3); - this.tBsixaxisAccelX.Maximum = 32767; - this.tBsixaxisAccelX.Minimum = -32768; + this.tBsixaxisAccelX.Location = new System.Drawing.Point(71, 25); + this.tBsixaxisAccelX.Maximum = 8500; + this.tBsixaxisAccelX.Minimum = -8500; this.tBsixaxisAccelX.Name = "tBsixaxisAccelX"; this.tBsixaxisAccelX.Size = new System.Drawing.Size(50, 19); this.tBsixaxisAccelX.TabIndex = 219; - this.tBsixaxisAccelX.TickFrequency = 16384; - // - // rightMotorLabel - // - this.rightMotorLabel.AutoSize = true; - this.rightMotorLabel.Location = new System.Drawing.Point(674, 207); - this.rightMotorLabel.Name = "rightMotorLabel"; - this.rightMotorLabel.Size = new System.Drawing.Size(15, 13); - this.rightMotorLabel.TabIndex = 208; - this.rightMotorLabel.Text = "R"; - this.rightMotorLabel.Visible = false; + this.tBsixaxisAccelX.TickFrequency = 4750; // // tBsixaxisGyroZ // this.tBsixaxisGyroZ.AutoSize = false; this.tBsixaxisGyroZ.BackColor = System.Drawing.Color.White; - this.tBsixaxisGyroZ.Location = new System.Drawing.Point(96, 3); - this.tBsixaxisGyroZ.Maximum = 32767; - this.tBsixaxisGyroZ.Minimum = -32768; + this.tBsixaxisGyroZ.Location = new System.Drawing.Point(3, 79); + this.tBsixaxisGyroZ.Maximum = 8500; + this.tBsixaxisGyroZ.Minimum = -8500; this.tBsixaxisGyroZ.Name = "tBsixaxisGyroZ"; this.tBsixaxisGyroZ.Size = new System.Drawing.Size(50, 19); this.tBsixaxisGyroZ.TabIndex = 220; - this.tBsixaxisGyroZ.TickFrequency = 16384; - // - // rumbleBoostLabel - // - this.rumbleBoostLabel.AutoSize = true; - this.rumbleBoostLabel.Location = new System.Drawing.Point(842, 212); - this.rumbleBoostLabel.Name = "rumbleBoostLabel"; - this.rumbleBoostLabel.Size = new System.Drawing.Size(34, 13); - this.rumbleBoostLabel.TabIndex = 207; - this.rumbleBoostLabel.Text = "Boost"; - this.rumbleBoostLabel.Visible = false; + this.tBsixaxisGyroZ.TickFrequency = 4750; // // tBsixaxisGyroY // this.tBsixaxisGyroY.AutoSize = false; this.tBsixaxisGyroY.BackColor = System.Drawing.Color.White; - this.tBsixaxisGyroY.Location = new System.Drawing.Point(49, 3); - this.tBsixaxisGyroY.Maximum = 32767; - this.tBsixaxisGyroY.Minimum = -32768; + this.tBsixaxisGyroY.Location = new System.Drawing.Point(3, 49); + this.tBsixaxisGyroY.Maximum = 8500; + this.tBsixaxisGyroY.Minimum = -8500; this.tBsixaxisGyroY.Name = "tBsixaxisGyroY"; this.tBsixaxisGyroY.Size = new System.Drawing.Size(50, 19); this.tBsixaxisGyroY.TabIndex = 221; - this.tBsixaxisGyroY.TickFrequency = 16384; + this.tBsixaxisGyroY.TickFrequency = 4750; // // tBsixaxisGyroX // this.tBsixaxisGyroX.AutoSize = false; this.tBsixaxisGyroX.BackColor = System.Drawing.Color.White; - this.tBsixaxisGyroX.Location = new System.Drawing.Point(2, 3); - this.tBsixaxisGyroX.Maximum = 32767; - this.tBsixaxisGyroX.Minimum = -32768; + this.tBsixaxisGyroX.Location = new System.Drawing.Point(3, 24); + this.tBsixaxisGyroX.Maximum = 8500; + this.tBsixaxisGyroX.Minimum = -8500; this.tBsixaxisGyroX.Name = "tBsixaxisGyroX"; this.tBsixaxisGyroX.Size = new System.Drawing.Size(50, 19); this.tBsixaxisGyroX.TabIndex = 222; - this.tBsixaxisGyroX.TickFrequency = 16384; + this.tBsixaxisGyroX.TickFrequency = 4750; // // nUDRumbleBoost // @@ -1432,49 +1485,11 @@ // lB6Accel // this.lB6Accel.AutoSize = true; - this.lB6Accel.Location = new System.Drawing.Point(153, 3); + this.lB6Accel.Location = new System.Drawing.Point(81, 4); this.lB6Accel.Name = "lB6Accel"; - this.lB6Accel.Size = new System.Drawing.Size(72, 13); + this.lB6Accel.Size = new System.Drawing.Size(34, 13); this.lB6Accel.TabIndex = 215; - this.lB6Accel.Text = "Sixaxis Accel:"; - // - // nUDHeavyRumble - // - this.nUDHeavyRumble.Location = new System.Drawing.Point(695, 205); - this.nUDHeavyRumble.Maximum = new decimal(new int[] { - 255, - 0, - 0, - 0}); - this.nUDHeavyRumble.Name = "nUDHeavyRumble"; - this.nUDHeavyRumble.Size = new System.Drawing.Size(43, 20); - this.nUDHeavyRumble.TabIndex = 212; - this.nUDHeavyRumble.Visible = false; - this.nUDHeavyRumble.ValueChanged += new System.EventHandler(this.numUDHeavyRumble_ValueChanged); - // - // lB6Gryo - // - this.lB6Gryo.AutoSize = true; - this.lB6Gryo.Location = new System.Drawing.Point(4, 197); - this.lB6Gryo.Name = "lB6Gryo"; - this.lB6Gryo.Size = new System.Drawing.Size(67, 13); - this.lB6Gryo.TabIndex = 216; - this.lB6Gryo.Text = "Sixaxis Gyro:"; - this.lB6Gryo.MouseClick += new System.Windows.Forms.MouseEventHandler(this.lB6Gryo_MouseClick); - // - // nUDLightRumble - // - this.nUDLightRumble.Location = new System.Drawing.Point(782, 205); - this.nUDLightRumble.Maximum = new decimal(new int[] { - 255, - 0, - 0, - 0}); - this.nUDLightRumble.Name = "nUDLightRumble"; - this.nUDLightRumble.Size = new System.Drawing.Size(43, 20); - this.nUDLightRumble.TabIndex = 213; - this.nUDLightRumble.Visible = false; - this.nUDLightRumble.ValueChanged += new System.EventHandler(this.numUDLightRumble_ValueChanged); + this.lB6Accel.Text = "Accel"; // // btnRumbleTest // @@ -1578,6 +1593,7 @@ this.lBEmpty.Size = new System.Drawing.Size(39, 13); this.lBEmpty.TabIndex = 225; this.lBEmpty.Text = "Empty:"; + this.lBEmpty.Click += new System.EventHandler(this.lBEmpty_Click); // // FullPanel // @@ -1608,30 +1624,14 @@ this.lowBatteryPanel.Size = new System.Drawing.Size(435, 29); this.lowBatteryPanel.TabIndex = 234; // - // SixaxisPanel + // lB6Gryo // - this.SixaxisPanel.Controls.Add(this.tBsixaxisAccelX); - this.SixaxisPanel.Controls.Add(this.lB6Accel); - this.SixaxisPanel.Controls.Add(this.tBsixaxisGyroX); - this.SixaxisPanel.Controls.Add(this.tBsixaxisGyroY); - this.SixaxisPanel.Controls.Add(this.tBsixaxisGyroZ); - this.SixaxisPanel.Controls.Add(this.tBsixaxisAccelY); - this.SixaxisPanel.Controls.Add(this.tBsixaxisAccelZ); - this.SixaxisPanel.Location = new System.Drawing.Point(70, 195); - this.SixaxisPanel.Name = "SixaxisPanel"; - this.SixaxisPanel.Size = new System.Drawing.Size(371, 28); - this.SixaxisPanel.TabIndex = 236; - this.SixaxisPanel.Visible = false; - // - // bnGyroZP - // - this.bnGyroZP.Location = new System.Drawing.Point(89, 3); - this.bnGyroZP.Name = "bnGyroZP"; - this.bnGyroZP.Size = new System.Drawing.Size(80, 23); - this.bnGyroZP.TabIndex = 250; - this.bnGyroZP.Text = "Tilt Down"; - this.bnGyroZP.UseVisualStyleBackColor = true; - this.bnGyroZP.Click += new System.EventHandler(this.Show_ControlsBn); + this.lB6Gryo.AutoSize = true; + this.lB6Gryo.Location = new System.Drawing.Point(13, 5); + this.lB6Gryo.Name = "lB6Gryo"; + this.lB6Gryo.Size = new System.Drawing.Size(29, 13); + this.lB6Gryo.TabIndex = 216; + this.lB6Gryo.Text = "Gyro"; // // lbRS // @@ -1740,7 +1740,7 @@ this.gBTouchpad.Controls.Add(this.nUDScroll); this.gBTouchpad.Controls.Add(this.nUDTap); this.gBTouchpad.Controls.Add(this.cBScroll); - this.gBTouchpad.Location = new System.Drawing.Point(440, 220); + this.gBTouchpad.Location = new System.Drawing.Point(2, 251); this.gBTouchpad.Name = "gBTouchpad"; this.gBTouchpad.Size = new System.Drawing.Size(437, 70); this.gBTouchpad.TabIndex = 246; @@ -1749,6 +1749,8 @@ // // gBOther // + this.gBOther.Controls.Add(this.lBforMandR); + this.gBOther.Controls.Add(this.lBUseController); this.gBOther.Controls.Add(this.cBMouseAccel); this.gBOther.Controls.Add(this.nUDSixaxis); this.gBOther.Controls.Add(this.cBControllerInput); @@ -1758,16 +1760,45 @@ this.gBOther.Controls.Add(this.numUDMouseSens); this.gBOther.Controls.Add(this.cBFlushHIDQueue); this.gBOther.Controls.Add(this.lBIdleMinutes); - this.gBOther.Location = new System.Drawing.Point(7, 220); + this.gBOther.Location = new System.Drawing.Point(445, 226); this.gBOther.Name = "gBOther"; - this.gBOther.Size = new System.Drawing.Size(421, 70); + this.gBOther.Size = new System.Drawing.Size(436, 95); this.gBOther.TabIndex = 247; this.gBOther.TabStop = false; this.gBOther.Text = "Other"; // + // lBforMandR + // + this.lBforMandR.AutoSize = true; + this.lBforMandR.Location = new System.Drawing.Point(307, 74); + this.lBforMandR.Name = "lBforMandR"; + this.lBforMandR.Size = new System.Drawing.Size(123, 13); + this.lBforMandR.TabIndex = 252; + this.lBforMandR.Text = "for Mapping and readout"; + // + // lBUseController + // + this.lBUseController.AutoSize = true; + this.lBUseController.Location = new System.Drawing.Point(195, 74); + this.lBUseController.Name = "lBUseController"; + this.lBUseController.Size = new System.Drawing.Size(73, 13); + this.lBUseController.TabIndex = 252; + this.lBUseController.Text = "Use Controller"; + // + // cBMouseAccel + // + this.cBMouseAccel.AutoSize = true; + this.cBMouseAccel.Location = new System.Drawing.Point(170, 17); + this.cBMouseAccel.Name = "cBMouseAccel"; + this.cBMouseAccel.Size = new System.Drawing.Size(120, 17); + this.cBMouseAccel.TabIndex = 251; + this.cBMouseAccel.Text = "Mouse Acceleration"; + this.cBMouseAccel.UseVisualStyleBackColor = true; + this.cBMouseAccel.CheckedChanged += new System.EventHandler(this.cBMouseAccel_CheckedChanged); + // // nUDSixaxis // - this.nUDSixaxis.Location = new System.Drawing.Point(385, 16); + this.nUDSixaxis.Location = new System.Drawing.Point(272, 71); this.nUDSixaxis.Maximum = new decimal(new int[] { 4, 0, @@ -1792,7 +1823,7 @@ this.cBControllerInput.AutoSize = true; this.cBControllerInput.Checked = true; this.cBControllerInput.CheckState = System.Windows.Forms.CheckState.Checked; - this.cBControllerInput.Location = new System.Drawing.Point(266, 17); + this.cBControllerInput.Location = new System.Drawing.Point(6, 72); this.cBControllerInput.Name = "cBControllerInput"; this.cBControllerInput.RightToLeft = System.Windows.Forms.RightToLeft.Yes; this.cBControllerInput.Size = new System.Drawing.Size(113, 17); @@ -1822,7 +1853,7 @@ this.gBLightbar.Controls.Add(this.rBNormal); this.gBLightbar.Controls.Add(this.rBRainbow); this.gBLightbar.Controls.Add(this.lbWhileCharging); - this.gBLightbar.Controls.Add(this.label1); + this.gBLightbar.Controls.Add(this.lBPercentFlashBar); this.gBLightbar.Controls.Add(this.lBFlashAt); this.gBLightbar.Controls.Add(this.pBRainbow); this.gBLightbar.Controls.Add(this.lowBatteryPanel); @@ -1831,7 +1862,7 @@ this.gBLightbar.Controls.Add(this.FullPanel); this.gBLightbar.Controls.Add(this.lBspc); this.gBLightbar.Controls.Add(this.cBLightbyBattery); - this.gBLightbar.Location = new System.Drawing.Point(440, 76); + this.gBLightbar.Location = new System.Drawing.Point(443, 85); this.gBLightbar.Name = "gBLightbar"; this.gBLightbar.Size = new System.Drawing.Size(438, 129); this.gBLightbar.TabIndex = 247; @@ -1906,14 +1937,14 @@ this.lbWhileCharging.TabIndex = 236; this.lbWhileCharging.Text = "While Charging:"; // - // label1 + // lBPercentFlashBar // - this.label1.AutoSize = true; - this.label1.Location = new System.Drawing.Point(98, 18); - this.label1.Name = "label1"; - this.label1.Size = new System.Drawing.Size(15, 13); - this.label1.TabIndex = 207; - this.label1.Text = "%"; + this.lBPercentFlashBar.AutoSize = true; + this.lBPercentFlashBar.Location = new System.Drawing.Point(98, 18); + this.lBPercentFlashBar.Name = "lBPercentFlashBar"; + this.lBPercentFlashBar.Size = new System.Drawing.Size(15, 13); + this.lBPercentFlashBar.TabIndex = 207; + this.lBPercentFlashBar.Text = "%"; // // lBFlashAt // @@ -1939,16 +1970,25 @@ // // gBRumble // - this.gBRumble.Controls.Add(this.label2); + this.gBRumble.Controls.Add(this.lBPercentRumble); this.gBRumble.Controls.Add(this.btnRumbleTest); this.gBRumble.Controls.Add(this.nUDRumbleBoost); - this.gBRumble.Location = new System.Drawing.Point(442, 3); + this.gBRumble.Location = new System.Drawing.Point(445, 12); this.gBRumble.Name = "gBRumble"; this.gBRumble.Size = new System.Drawing.Size(89, 67); this.gBRumble.TabIndex = 247; this.gBRumble.TabStop = false; this.gBRumble.Text = "Rumble"; // + // lBPercentRumble + // + this.lBPercentRumble.AutoSize = true; + this.lBPercentRumble.Location = new System.Drawing.Point(63, 17); + this.lBPercentRumble.Name = "lBPercentRumble"; + this.lBPercentRumble.Size = new System.Drawing.Size(15, 13); + this.lBPercentRumble.TabIndex = 207; + this.lBPercentRumble.Text = "%"; + // // gBDeadzone // this.gBDeadzone.Controls.Add(this.lBL2); @@ -1963,7 +2003,7 @@ this.gBDeadzone.Controls.Add(this.nUDRS); this.gBDeadzone.Controls.Add(this.nUDR2); this.gBDeadzone.Controls.Add(this.nUDLS); - this.gBDeadzone.Location = new System.Drawing.Point(598, 2); + this.gBDeadzone.Location = new System.Drawing.Point(601, 11); this.gBDeadzone.Name = "gBDeadzone"; this.gBDeadzone.Size = new System.Drawing.Size(282, 67); this.gBDeadzone.TabIndex = 248; @@ -2037,6 +2077,74 @@ 131072}); this.nUDSX.ValueChanged += new System.EventHandler(this.nUDSX_ValueChanged); // + // tabControls + // + this.tabControls.Controls.Add(this.tPControls); + this.tabControls.Controls.Add(this.tPShiftMod); + this.tabControls.Controls.Add(this.tPController); + this.tabControls.Location = new System.Drawing.Point(3, 3); + this.tabControls.Name = "tabControls"; + this.tabControls.SelectedIndex = 0; + this.tabControls.Size = new System.Drawing.Size(436, 242); + this.tabControls.TabIndex = 253; + this.tabControls.SelectedIndexChanged += new System.EventHandler(this.tabControls_SelectedIndexChanged); + // + // tPControls + // + this.tPControls.Controls.Add(this.lBGryo); + this.tPControls.Controls.Add(this.fLPTiltControls); + this.tPControls.Controls.Add(this.MainPanel); + this.tPControls.Controls.Add(this.lBControls); + this.tPControls.Controls.Add(this.lBControlTip); + this.tPControls.Controls.Add(this.SticksPanel); + this.tPControls.Location = new System.Drawing.Point(4, 22); + this.tPControls.Name = "tPControls"; + this.tPControls.Padding = new System.Windows.Forms.Padding(3); + this.tPControls.Size = new System.Drawing.Size(428, 216); + this.tPControls.TabIndex = 0; + this.tPControls.Text = "Controls"; + this.tPControls.UseVisualStyleBackColor = true; + // + // lBGryo + // + this.lBGryo.AutoSize = true; + this.lBGryo.Location = new System.Drawing.Point(5, 192); + this.lBGryo.Name = "lBGryo"; + this.lBGryo.Size = new System.Drawing.Size(67, 13); + this.lBGryo.TabIndex = 253; + this.lBGryo.Text = "Sixaxis Gyro:"; + // + // fLPTiltControls + // + this.fLPTiltControls.Controls.Add(this.bnGyroZN); + this.fLPTiltControls.Controls.Add(this.bnGyroZP); + this.fLPTiltControls.Controls.Add(this.bnGyroXP); + this.fLPTiltControls.Controls.Add(this.bnGyroXN); + this.fLPTiltControls.Location = new System.Drawing.Point(72, 185); + this.fLPTiltControls.Name = "fLPTiltControls"; + this.fLPTiltControls.Size = new System.Drawing.Size(350, 31); + this.fLPTiltControls.TabIndex = 254; + // + // bnGyroZN + // + this.bnGyroZN.Location = new System.Drawing.Point(3, 3); + this.bnGyroZN.Name = "bnGyroZN"; + this.bnGyroZN.Size = new System.Drawing.Size(80, 23); + this.bnGyroZN.TabIndex = 250; + this.bnGyroZN.Text = "Tilt Up"; + this.bnGyroZN.UseVisualStyleBackColor = true; + this.bnGyroZN.Click += new System.EventHandler(this.Show_ControlsBn); + // + // bnGyroZP + // + this.bnGyroZP.Location = new System.Drawing.Point(89, 3); + this.bnGyroZP.Name = "bnGyroZP"; + this.bnGyroZP.Size = new System.Drawing.Size(80, 23); + this.bnGyroZP.TabIndex = 250; + this.bnGyroZP.Text = "Tilt Down"; + this.bnGyroZP.UseVisualStyleBackColor = true; + this.bnGyroZP.Click += new System.EventHandler(this.Show_ControlsBn); + // // bnGyroXP // this.bnGyroXP.Location = new System.Drawing.Point(175, 3); @@ -2057,35 +2165,1118 @@ this.bnGyroXN.UseVisualStyleBackColor = true; this.bnGyroXN.Click += new System.EventHandler(this.Show_ControlsBn); // - // bnGyroZN + // tPShiftMod // - this.bnGyroZN.Location = new System.Drawing.Point(3, 3); - this.bnGyroZN.Name = "bnGyroZN"; - this.bnGyroZN.Size = new System.Drawing.Size(80, 23); - this.bnGyroZN.TabIndex = 250; - this.bnGyroZN.Text = "Tilt Up"; - this.bnGyroZN.UseVisualStyleBackColor = true; - this.bnGyroZN.Click += new System.EventHandler(this.Show_ControlsBn); + this.tPShiftMod.Controls.Add(this.slBGryo); + this.tPShiftMod.Controls.Add(this.sfLPTiltControls); + this.tPShiftMod.Controls.Add(this.cBShiftControl); + this.tPShiftMod.Controls.Add(this.lBShiftControls); + this.tPShiftMod.Controls.Add(this.lBHold); + this.tPShiftMod.Controls.Add(this.lBtoUse); + this.tPShiftMod.Controls.Add(this.ShiftMainPanel); + this.tPShiftMod.Controls.Add(this.ShiftSticksPanel); + this.tPShiftMod.Location = new System.Drawing.Point(4, 22); + this.tPShiftMod.Name = "tPShiftMod"; + this.tPShiftMod.Padding = new System.Windows.Forms.Padding(3); + this.tPShiftMod.Size = new System.Drawing.Size(428, 216); + this.tPShiftMod.TabIndex = 1; + this.tPShiftMod.Text = "Shift Modifier"; + this.tPShiftMod.UseVisualStyleBackColor = true; // - // fLPTiltControls + // slBGryo // - this.fLPTiltControls.Controls.Add(this.bnGyroZN); - this.fLPTiltControls.Controls.Add(this.bnGyroZP); - this.fLPTiltControls.Controls.Add(this.bnGyroXP); - this.fLPTiltControls.Controls.Add(this.bnGyroXN); - this.fLPTiltControls.Location = new System.Drawing.Point(84, 190); - this.fLPTiltControls.Name = "fLPTiltControls"; - this.fLPTiltControls.Size = new System.Drawing.Size(350, 31); - this.fLPTiltControls.TabIndex = 252; + this.slBGryo.AutoSize = true; + this.slBGryo.Location = new System.Drawing.Point(5, 192); + this.slBGryo.Name = "slBGryo"; + this.slBGryo.Size = new System.Drawing.Size(67, 13); + this.slBGryo.TabIndex = 255; + this.slBGryo.Text = "Sixaxis Gyro:"; // - // label2 + // sfLPTiltControls // - this.label2.AutoSize = true; - this.label2.Location = new System.Drawing.Point(63, 17); - this.label2.Name = "label2"; - this.label2.Size = new System.Drawing.Size(15, 13); - this.label2.TabIndex = 207; - this.label2.Text = "%"; + this.sfLPTiltControls.Controls.Add(this.sbnGyroZN); + this.sfLPTiltControls.Controls.Add(this.sbnGyroZP); + this.sfLPTiltControls.Controls.Add(this.sbnGyroXP); + this.sfLPTiltControls.Controls.Add(this.sbnGyroXN); + this.sfLPTiltControls.Location = new System.Drawing.Point(72, 185); + this.sfLPTiltControls.Name = "sfLPTiltControls"; + this.sfLPTiltControls.Size = new System.Drawing.Size(350, 31); + this.sfLPTiltControls.TabIndex = 256; + // + // sbnGyroZN + // + this.sbnGyroZN.Location = new System.Drawing.Point(3, 3); + this.sbnGyroZN.Name = "sbnGyroZN"; + this.sbnGyroZN.Size = new System.Drawing.Size(80, 23); + this.sbnGyroZN.TabIndex = 250; + this.sbnGyroZN.Text = "Tilt Up"; + this.sbnGyroZN.UseVisualStyleBackColor = true; + this.sbnGyroZN.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnGyroZP + // + this.sbnGyroZP.Location = new System.Drawing.Point(89, 3); + this.sbnGyroZP.Name = "sbnGyroZP"; + this.sbnGyroZP.Size = new System.Drawing.Size(80, 23); + this.sbnGyroZP.TabIndex = 250; + this.sbnGyroZP.Text = "Tilt Down"; + this.sbnGyroZP.UseVisualStyleBackColor = true; + this.sbnGyroZP.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnGyroXP + // + this.sbnGyroXP.Location = new System.Drawing.Point(175, 3); + this.sbnGyroXP.Name = "sbnGyroXP"; + this.sbnGyroXP.Size = new System.Drawing.Size(80, 23); + this.sbnGyroXP.TabIndex = 250; + this.sbnGyroXP.Text = "Tilt Left"; + this.sbnGyroXP.UseVisualStyleBackColor = true; + this.sbnGyroXP.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnGyroXN + // + this.sbnGyroXN.Location = new System.Drawing.Point(261, 3); + this.sbnGyroXN.Name = "sbnGyroXN"; + this.sbnGyroXN.Size = new System.Drawing.Size(80, 23); + this.sbnGyroXN.TabIndex = 250; + this.sbnGyroXN.Text = "Tilt Right"; + this.sbnGyroXN.UseVisualStyleBackColor = true; + this.sbnGyroXN.Click += new System.EventHandler(this.Show_ControlsBn); + // + // cBShiftControl + // + this.cBShiftControl.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.cBShiftControl.FormattingEnabled = true; + this.cBShiftControl.Items.AddRange(new object[] { + "(nothing)/shift off", + "Cross", + "Circle", + "Square", + "Triangle", + "Options", + "Share", + "Up", + "Down", + "Left", + "Right", + "PS", + "L1", + "R1", + "L2", + "R2", + "L3", + "R3", + "Left Touch", + "Upper Touch", + "Multitouch", + "Right Touch", + "Sixaxis Up", + "Sixaxis Down", + "Sixaxis Left", + "Sixaxis Right", + "Touchpad (not clicked in)"}); + this.cBShiftControl.Location = new System.Drawing.Point(79, 3); + this.cBShiftControl.Name = "cBShiftControl"; + this.cBShiftControl.Size = new System.Drawing.Size(145, 21); + this.cBShiftControl.TabIndex = 192; + this.cBShiftControl.SelectedIndexChanged += new System.EventHandler(this.cBShiftControl_SelectedIndexChanged); + // + // lBShiftControls + // + this.lBShiftControls.FormattingEnabled = true; + this.lBShiftControls.Items.AddRange(new object[] { + "Cross :", + "Circle :", + "Sqaure :", + "Triangle :", + "Options :", + "Share :", + "Up :", + "Down :", + "Left :", + "Right :", + "PS :", + "L1 :", + "R1 :", + "L2 :", + "R2 :", + "L3 :", + "R3 :", + "Left Touch :", + "Upper Touch : ", + "Multitouch :", + "Right Touch :", + "Left Stick Up :", + "Left Stick Down :", + "Left Stick Left :", + "Left Stick Right :", + "Right Stick Up :", + "Right Stick Down :", + "Right Stick Left :", + "Right Stick Right :", + "Sixaxis Up :", + "Sixaxis Down :", + "Sixaxis Left :", + "Sixaxis Right :"}); + this.lBShiftControls.Location = new System.Drawing.Point(257, 7); + this.lBShiftControls.Name = "lBShiftControls"; + this.lBShiftControls.Size = new System.Drawing.Size(169, 173); + this.lBShiftControls.TabIndex = 188; + this.lBShiftControls.KeyDown += new System.Windows.Forms.KeyEventHandler(this.List_KeyDown); + this.lBShiftControls.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.List_MouseDoubleClick); + // + // lBHold + // + this.lBHold.AutoSize = true; + this.lBHold.Location = new System.Drawing.Point(44, 6); + this.lBHold.Name = "lBHold"; + this.lBHold.Size = new System.Drawing.Size(29, 13); + this.lBHold.TabIndex = 189; + this.lBHold.Text = "Hold"; + this.lBHold.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // lBtoUse + // + this.lBtoUse.AutoSize = true; + this.lBtoUse.Location = new System.Drawing.Point(84, 24); + this.lBtoUse.Name = "lBtoUse"; + this.lBtoUse.Size = new System.Drawing.Size(105, 13); + this.lBtoUse.TabIndex = 189; + this.lBtoUse.Text = "to use these controls"; + this.lBtoUse.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // ShiftMainPanel + // + this.ShiftMainPanel.Controls.Add(this.spBController); + this.ShiftMainPanel.Controls.Add(this.sbnTouchUpper); + this.ShiftMainPanel.Controls.Add(this.sbnTouchLeft); + this.ShiftMainPanel.Controls.Add(this.sbnTouchRight); + this.ShiftMainPanel.Controls.Add(this.sbnTouchMulti); + this.ShiftMainPanel.Controls.Add(this.sbnR1); + this.ShiftMainPanel.Controls.Add(this.sbnCross); + this.ShiftMainPanel.Controls.Add(this.sbnCircle); + this.ShiftMainPanel.Controls.Add(this.sbtnRightStick); + this.ShiftMainPanel.Controls.Add(this.sbnSquare); + this.ShiftMainPanel.Controls.Add(this.sbtnLightbar); + this.ShiftMainPanel.Controls.Add(this.sbnTriangle); + this.ShiftMainPanel.Controls.Add(this.sbnUp); + this.ShiftMainPanel.Controls.Add(this.sbtnLeftStick); + this.ShiftMainPanel.Controls.Add(this.sbnDown); + this.ShiftMainPanel.Controls.Add(this.sbnL2); + this.ShiftMainPanel.Controls.Add(this.sbnRight); + this.ShiftMainPanel.Controls.Add(this.sbnR2); + this.ShiftMainPanel.Controls.Add(this.sbnLeft); + this.ShiftMainPanel.Controls.Add(this.sbnL1); + this.ShiftMainPanel.Controls.Add(this.sbnOptions); + this.ShiftMainPanel.Controls.Add(this.sbnPS); + this.ShiftMainPanel.Controls.Add(this.sbnShare); + this.ShiftMainPanel.Location = new System.Drawing.Point(6, 42); + this.ShiftMainPanel.Name = "ShiftMainPanel"; + this.ShiftMainPanel.Size = new System.Drawing.Size(249, 137); + this.ShiftMainPanel.TabIndex = 190; + // + // spBController + // + this.spBController.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; + this.spBController.Enabled = false; + this.spBController.Image = global::ScpServer.Properties.Resources.DS4_Controller; + this.spBController.Location = new System.Drawing.Point(0, 0); + this.spBController.Name = "spBController"; + this.spBController.Size = new System.Drawing.Size(245, 132); + this.spBController.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.spBController.TabIndex = 1; + this.spBController.TabStop = false; + // + // sbnTouchUpper + // + this.sbnTouchUpper.BackColor = System.Drawing.Color.Transparent; + this.sbnTouchUpper.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnTouchUpper.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnTouchUpper.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnTouchUpper.FlatAppearance.BorderSize = 0; + this.sbnTouchUpper.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnTouchUpper.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnTouchUpper.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnTouchUpper.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnTouchUpper.Location = new System.Drawing.Point(84, 25); + this.sbnTouchUpper.Name = "sbnTouchUpper"; + this.sbnTouchUpper.Size = new System.Drawing.Size(78, 16); + this.sbnTouchUpper.TabIndex = 193; + this.sbnTouchUpper.Text = "Fall Back"; + this.sbnTouchUpper.UseVisualStyleBackColor = false; + this.sbnTouchUpper.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnTouchLeft + // + this.sbnTouchLeft.BackColor = System.Drawing.Color.Transparent; + this.sbnTouchLeft.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnTouchLeft.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnTouchLeft.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnTouchLeft.FlatAppearance.BorderSize = 0; + this.sbnTouchLeft.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnTouchLeft.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnTouchLeft.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnTouchLeft.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnTouchLeft.Location = new System.Drawing.Point(84, 40); + this.sbnTouchLeft.Name = "sbnTouchLeft"; + this.sbnTouchLeft.Size = new System.Drawing.Size(25, 35); + this.sbnTouchLeft.TabIndex = 191; + this.sbnTouchLeft.Text = "Fall Back"; + this.sbnTouchLeft.UseVisualStyleBackColor = false; + this.sbnTouchLeft.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnTouchRight + // + this.sbnTouchRight.BackColor = System.Drawing.Color.Transparent; + this.sbnTouchRight.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnTouchRight.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnTouchRight.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnTouchRight.FlatAppearance.BorderSize = 0; + this.sbnTouchRight.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnTouchRight.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnTouchRight.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnTouchRight.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnTouchRight.Location = new System.Drawing.Point(139, 40); + this.sbnTouchRight.Name = "sbnTouchRight"; + this.sbnTouchRight.Size = new System.Drawing.Size(23, 34); + this.sbnTouchRight.TabIndex = 190; + this.sbnTouchRight.Text = "Fall Back"; + this.sbnTouchRight.UseVisualStyleBackColor = false; + this.sbnTouchRight.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnTouchMulti + // + this.sbnTouchMulti.BackColor = System.Drawing.Color.Transparent; + this.sbnTouchMulti.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnTouchMulti.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnTouchMulti.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnTouchMulti.FlatAppearance.BorderSize = 0; + this.sbnTouchMulti.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnTouchMulti.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnTouchMulti.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnTouchMulti.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnTouchMulti.Location = new System.Drawing.Point(109, 40); + this.sbnTouchMulti.Name = "sbnTouchMulti"; + this.sbnTouchMulti.Size = new System.Drawing.Size(30, 34); + this.sbnTouchMulti.TabIndex = 192; + this.sbnTouchMulti.Text = "Fall Back"; + this.sbnTouchMulti.UseVisualStyleBackColor = false; + this.sbnTouchMulti.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnR1 + // + this.sbnR1.BackColor = System.Drawing.Color.Transparent; + this.sbnR1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnR1.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnR1.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnR1.FlatAppearance.BorderSize = 0; + this.sbnR1.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnR1.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnR1.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnR1.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnR1.Location = new System.Drawing.Point(175, 13); + this.sbnR1.Name = "sbnR1"; + this.sbnR1.Size = new System.Drawing.Size(43, 15); + this.sbnR1.TabIndex = 87; + this.sbnR1.Text = "Fall Back"; + this.sbnR1.UseVisualStyleBackColor = false; + this.sbnR1.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnCross + // + this.sbnCross.BackColor = System.Drawing.Color.Transparent; + this.sbnCross.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnCross.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnCross.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnCross.FlatAppearance.BorderSize = 0; + this.sbnCross.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnCross.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnCross.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnCross.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnCross.Location = new System.Drawing.Point(187, 76); + this.sbnCross.Name = "sbnCross"; + this.sbnCross.Size = new System.Drawing.Size(19, 17); + this.sbnCross.TabIndex = 74; + this.sbnCross.Text = "Fall Back"; + this.sbnCross.UseVisualStyleBackColor = false; + this.sbnCross.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnCircle + // + this.sbnCircle.BackColor = System.Drawing.Color.Transparent; + this.sbnCircle.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnCircle.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnCircle.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnCircle.FlatAppearance.BorderSize = 0; + this.sbnCircle.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnCircle.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnCircle.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnCircle.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnCircle.Location = new System.Drawing.Point(208, 60); + this.sbnCircle.Name = "sbnCircle"; + this.sbnCircle.Size = new System.Drawing.Size(16, 17); + this.sbnCircle.TabIndex = 71; + this.sbnCircle.Text = "Fall Back"; + this.sbnCircle.UseVisualStyleBackColor = false; + this.sbnCircle.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbtnRightStick + // + this.sbtnRightStick.BackColor = System.Drawing.Color.Transparent; + this.sbtnRightStick.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbtnRightStick.Cursor = System.Windows.Forms.Cursors.Default; + this.sbtnRightStick.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbtnRightStick.FlatAppearance.BorderSize = 0; + this.sbtnRightStick.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbtnRightStick.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbtnRightStick.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbtnRightStick.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbtnRightStick.Location = new System.Drawing.Point(150, 90); + this.sbtnRightStick.Name = "sbtnRightStick"; + this.sbtnRightStick.Size = new System.Drawing.Size(28, 28); + this.sbtnRightStick.TabIndex = 91; + this.sbtnRightStick.Text = "RS"; + this.sbtnRightStick.UseVisualStyleBackColor = false; + // + // sbnSquare + // + this.sbnSquare.BackColor = System.Drawing.Color.Transparent; + this.sbnSquare.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnSquare.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnSquare.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnSquare.FlatAppearance.BorderSize = 0; + this.sbnSquare.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnSquare.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnSquare.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnSquare.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnSquare.Location = new System.Drawing.Point(173, 61); + this.sbnSquare.Name = "sbnSquare"; + this.sbnSquare.Size = new System.Drawing.Size(15, 14); + this.sbnSquare.TabIndex = 72; + this.sbnSquare.Text = "Fall Back"; + this.sbnSquare.UseVisualStyleBackColor = false; + this.sbnSquare.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbtnLightbar + // + this.sbtnLightbar.BackColor = System.Drawing.Color.Transparent; + this.sbtnLightbar.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbtnLightbar.Cursor = System.Windows.Forms.Cursors.Default; + this.sbtnLightbar.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbtnLightbar.FlatAppearance.BorderSize = 0; + this.sbtnLightbar.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbtnLightbar.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbtnLightbar.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbtnLightbar.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbtnLightbar.Location = new System.Drawing.Point(84, 6); + this.sbtnLightbar.Name = "sbtnLightbar"; + this.sbtnLightbar.Size = new System.Drawing.Size(78, 19); + this.sbtnLightbar.TabIndex = 91; + this.sbtnLightbar.Text = "Lightbar"; + this.sbtnLightbar.UseVisualStyleBackColor = false; + this.sbtnLightbar.Click += new System.EventHandler(this.btnLightbar_Click); + // + // sbnTriangle + // + this.sbnTriangle.BackColor = System.Drawing.Color.Transparent; + this.sbnTriangle.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnTriangle.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnTriangle.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnTriangle.FlatAppearance.BorderSize = 0; + this.sbnTriangle.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnTriangle.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnTriangle.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnTriangle.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnTriangle.Location = new System.Drawing.Point(188, 45); + this.sbnTriangle.Name = "sbnTriangle"; + this.sbnTriangle.Size = new System.Drawing.Size(20, 16); + this.sbnTriangle.TabIndex = 73; + this.sbnTriangle.Text = "Fall Back"; + this.sbnTriangle.UseVisualStyleBackColor = false; + this.sbnTriangle.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnUp + // + this.sbnUp.BackColor = System.Drawing.Color.Transparent; + this.sbnUp.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnUp.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnUp.DialogResult = System.Windows.Forms.DialogResult.Cancel; + this.sbnUp.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnUp.FlatAppearance.BorderSize = 0; + this.sbnUp.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnUp.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnUp.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnUp.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnUp.Location = new System.Drawing.Point(44, 48); + this.sbnUp.Name = "sbnUp"; + this.sbnUp.Size = new System.Drawing.Size(11, 15); + this.sbnUp.TabIndex = 80; + this.sbnUp.Text = "Fall Back"; + this.sbnUp.UseVisualStyleBackColor = false; + this.sbnUp.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbtnLeftStick + // + this.sbtnLeftStick.BackColor = System.Drawing.Color.Transparent; + this.sbtnLeftStick.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbtnLeftStick.Cursor = System.Windows.Forms.Cursors.Default; + this.sbtnLeftStick.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbtnLeftStick.FlatAppearance.BorderSize = 0; + this.sbtnLeftStick.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbtnLeftStick.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbtnLeftStick.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbtnLeftStick.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbtnLeftStick.Location = new System.Drawing.Point(70, 90); + this.sbtnLeftStick.Name = "sbtnLeftStick"; + this.sbtnLeftStick.Size = new System.Drawing.Size(28, 28); + this.sbtnLeftStick.TabIndex = 91; + this.sbtnLeftStick.Text = "LS"; + this.sbtnLeftStick.UseVisualStyleBackColor = false; + // + // sbnDown + // + this.sbnDown.BackColor = System.Drawing.Color.Transparent; + this.sbnDown.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnDown.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnDown.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnDown.FlatAppearance.BorderSize = 0; + this.sbnDown.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnDown.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnDown.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnDown.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnDown.Location = new System.Drawing.Point(44, 73); + this.sbnDown.Name = "sbnDown"; + this.sbnDown.Size = new System.Drawing.Size(12, 12); + this.sbnDown.TabIndex = 81; + this.sbnDown.Text = "Fall Back"; + this.sbnDown.UseVisualStyleBackColor = false; + this.sbnDown.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnL2 + // + this.sbnL2.BackColor = System.Drawing.Color.Transparent; + this.sbnL2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnL2.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnL2.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnL2.FlatAppearance.BorderSize = 0; + this.sbnL2.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnL2.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnL2.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnL2.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnL2.Location = new System.Drawing.Point(31, 0); + this.sbnL2.Name = "sbnL2"; + this.sbnL2.Size = new System.Drawing.Size(43, 12); + this.sbnL2.TabIndex = 90; + this.sbnL2.Text = "Fall Back"; + this.sbnL2.UseVisualStyleBackColor = false; + this.sbnL2.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnRight + // + this.sbnRight.BackColor = System.Drawing.Color.Transparent; + this.sbnRight.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnRight.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnRight.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnRight.FlatAppearance.BorderSize = 0; + this.sbnRight.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnRight.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnRight.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnRight.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnRight.Location = new System.Drawing.Point(55, 61); + this.sbnRight.Name = "sbnRight"; + this.sbnRight.Size = new System.Drawing.Size(14, 14); + this.sbnRight.TabIndex = 82; + this.sbnRight.Text = "Fall Back"; + this.sbnRight.UseVisualStyleBackColor = false; + this.sbnRight.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnR2 + // + this.sbnR2.BackColor = System.Drawing.Color.Transparent; + this.sbnR2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnR2.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnR2.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnR2.FlatAppearance.BorderSize = 0; + this.sbnR2.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnR2.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnR2.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnR2.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnR2.Location = new System.Drawing.Point(174, 0); + this.sbnR2.Name = "sbnR2"; + this.sbnR2.Size = new System.Drawing.Size(40, 13); + this.sbnR2.TabIndex = 89; + this.sbnR2.Text = "Fall Back"; + this.sbnR2.UseVisualStyleBackColor = false; + this.sbnR2.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnLeft + // + this.sbnLeft.BackColor = System.Drawing.Color.Transparent; + this.sbnLeft.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnLeft.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnLeft.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnLeft.FlatAppearance.BorderSize = 0; + this.sbnLeft.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnLeft.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnLeft.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnLeft.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnLeft.Location = new System.Drawing.Point(31, 61); + this.sbnLeft.Name = "sbnLeft"; + this.sbnLeft.Size = new System.Drawing.Size(14, 12); + this.sbnLeft.TabIndex = 83; + this.sbnLeft.Text = "Fall Back"; + this.sbnLeft.UseVisualStyleBackColor = false; + this.sbnLeft.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnL1 + // + this.sbnL1.BackColor = System.Drawing.Color.Transparent; + this.sbnL1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnL1.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnL1.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnL1.FlatAppearance.BorderSize = 0; + this.sbnL1.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnL1.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnL1.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnL1.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnL1.Location = new System.Drawing.Point(31, 13); + this.sbnL1.Name = "sbnL1"; + this.sbnL1.Size = new System.Drawing.Size(43, 15); + this.sbnL1.TabIndex = 88; + this.sbnL1.Text = "Fall Back"; + this.sbnL1.UseVisualStyleBackColor = false; + this.sbnL1.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnOptions + // + this.sbnOptions.BackColor = System.Drawing.Color.Transparent; + this.sbnOptions.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnOptions.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnOptions.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnOptions.FlatAppearance.BorderSize = 0; + this.sbnOptions.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnOptions.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnOptions.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnOptions.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnOptions.Location = new System.Drawing.Point(167, 33); + this.sbnOptions.Name = "sbnOptions"; + this.sbnOptions.Size = new System.Drawing.Size(11, 21); + this.sbnOptions.TabIndex = 84; + this.sbnOptions.Text = "Fall Back"; + this.sbnOptions.UseVisualStyleBackColor = false; + this.sbnOptions.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnPS + // + this.sbnPS.BackColor = System.Drawing.Color.Transparent; + this.sbnPS.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnPS.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnPS.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnPS.FlatAppearance.BorderSize = 0; + this.sbnPS.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnPS.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnPS.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnPS.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnPS.Location = new System.Drawing.Point(115, 87); + this.sbnPS.Name = "sbnPS"; + this.sbnPS.Size = new System.Drawing.Size(18, 18); + this.sbnPS.TabIndex = 86; + this.sbnPS.Text = "Fall Back"; + this.sbnPS.UseVisualStyleBackColor = false; + this.sbnPS.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnShare + // + this.sbnShare.BackColor = System.Drawing.Color.Transparent; + this.sbnShare.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnShare.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnShare.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnShare.FlatAppearance.BorderSize = 0; + this.sbnShare.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnShare.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnShare.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnShare.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnShare.Location = new System.Drawing.Point(71, 33); + this.sbnShare.Name = "sbnShare"; + this.sbnShare.Size = new System.Drawing.Size(11, 18); + this.sbnShare.TabIndex = 85; + this.sbnShare.Text = "Fall Back"; + this.sbnShare.UseVisualStyleBackColor = false; + this.sbnShare.Click += new System.EventHandler(this.Show_ControlsBn); + // + // ShiftSticksPanel + // + this.ShiftSticksPanel.Controls.Add(this.sbtnFullView); + this.ShiftSticksPanel.Controls.Add(this.spBSticks); + this.ShiftSticksPanel.Controls.Add(this.sbnL3); + this.ShiftSticksPanel.Controls.Add(this.sbnRSDown); + this.ShiftSticksPanel.Controls.Add(this.sbnLSUp); + this.ShiftSticksPanel.Controls.Add(this.sbnRSUp); + this.ShiftSticksPanel.Controls.Add(this.sbnLSLeft); + this.ShiftSticksPanel.Controls.Add(this.sbnRSRight); + this.ShiftSticksPanel.Controls.Add(this.sbnLSRight); + this.ShiftSticksPanel.Controls.Add(this.sbnRSLeft); + this.ShiftSticksPanel.Controls.Add(this.sbnLSDown); + this.ShiftSticksPanel.Controls.Add(this.sbnR3); + this.ShiftSticksPanel.Location = new System.Drawing.Point(6, 42); + this.ShiftSticksPanel.Name = "ShiftSticksPanel"; + this.ShiftSticksPanel.Size = new System.Drawing.Size(249, 142); + this.ShiftSticksPanel.TabIndex = 191; + this.ShiftSticksPanel.Visible = false; + // + // sbtnFullView + // + this.sbtnFullView.Location = new System.Drawing.Point(71, 9); + this.sbtnFullView.Name = "sbtnFullView"; + this.sbtnFullView.Size = new System.Drawing.Size(106, 23); + this.sbtnFullView.TabIndex = 184; + this.sbtnFullView.Text = "<- Back to full view"; + this.sbtnFullView.UseVisualStyleBackColor = true; + this.sbtnFullView.Click += new System.EventHandler(this.sbtnFullView_Click); + // + // spBSticks + // + this.spBSticks.Enabled = false; + this.spBSticks.Image = global::ScpServer.Properties.Resources.sticks; + this.spBSticks.Location = new System.Drawing.Point(0, 1); + this.spBSticks.Name = "spBSticks"; + this.spBSticks.Size = new System.Drawing.Size(245, 132); + this.spBSticks.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.spBSticks.TabIndex = 161; + this.spBSticks.TabStop = false; + // + // sbnL3 + // + this.sbnL3.BackColor = System.Drawing.Color.Transparent; + this.sbnL3.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnL3.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnL3.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnL3.FlatAppearance.BorderSize = 0; + this.sbnL3.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnL3.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnL3.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnL3.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnL3.Location = new System.Drawing.Point(36, 92); + this.sbnL3.Name = "sbnL3"; + this.sbnL3.Size = new System.Drawing.Size(23, 23); + this.sbnL3.TabIndex = 163; + this.sbnL3.Text = "Fall Back"; + this.sbnL3.UseVisualStyleBackColor = false; + this.sbnL3.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnRSDown + // + this.sbnRSDown.BackColor = System.Drawing.Color.Transparent; + this.sbnRSDown.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnRSDown.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnRSDown.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnRSDown.FlatAppearance.BorderSize = 0; + this.sbnRSDown.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnRSDown.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnRSDown.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnRSDown.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnRSDown.Location = new System.Drawing.Point(182, 116); + this.sbnRSDown.Name = "sbnRSDown"; + this.sbnRSDown.Size = new System.Drawing.Size(23, 11); + this.sbnRSDown.TabIndex = 172; + this.sbnRSDown.Text = "Fall Back"; + this.sbnRSDown.UseVisualStyleBackColor = false; + this.sbnRSDown.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnLSUp + // + this.sbnLSUp.BackColor = System.Drawing.Color.Transparent; + this.sbnLSUp.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnLSUp.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnLSUp.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnLSUp.FlatAppearance.BorderSize = 0; + this.sbnLSUp.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnLSUp.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnLSUp.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnLSUp.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnLSUp.Location = new System.Drawing.Point(36, 77); + this.sbnLSUp.Name = "sbnLSUp"; + this.sbnLSUp.Size = new System.Drawing.Size(23, 11); + this.sbnLSUp.TabIndex = 167; + this.sbnLSUp.Text = "Fall Back"; + this.sbnLSUp.UseVisualStyleBackColor = false; + this.sbnLSUp.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnRSUp + // + this.sbnRSUp.BackColor = System.Drawing.Color.Transparent; + this.sbnRSUp.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnRSUp.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnRSUp.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnRSUp.FlatAppearance.BorderSize = 0; + this.sbnRSUp.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnRSUp.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnRSUp.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnRSUp.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnRSUp.Location = new System.Drawing.Point(182, 78); + this.sbnRSUp.Name = "sbnRSUp"; + this.sbnRSUp.Size = new System.Drawing.Size(23, 11); + this.sbnRSUp.TabIndex = 171; + this.sbnRSUp.Text = "Fall Back"; + this.sbnRSUp.UseVisualStyleBackColor = false; + this.sbnRSUp.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnLSLeft + // + this.sbnLSLeft.BackColor = System.Drawing.Color.Transparent; + this.sbnLSLeft.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnLSLeft.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnLSLeft.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnLSLeft.FlatAppearance.BorderSize = 0; + this.sbnLSLeft.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnLSLeft.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnLSLeft.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnLSLeft.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnLSLeft.Location = new System.Drawing.Point(21, 92); + this.sbnLSLeft.Name = "sbnLSLeft"; + this.sbnLSLeft.Size = new System.Drawing.Size(11, 23); + this.sbnLSLeft.TabIndex = 164; + this.sbnLSLeft.Text = "Fall Back"; + this.sbnLSLeft.UseVisualStyleBackColor = false; + this.sbnLSLeft.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnRSRight + // + this.sbnRSRight.BackColor = System.Drawing.Color.Transparent; + this.sbnRSRight.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnRSRight.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnRSRight.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnRSRight.FlatAppearance.BorderSize = 0; + this.sbnRSRight.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnRSRight.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnRSRight.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnRSRight.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnRSRight.Location = new System.Drawing.Point(210, 92); + this.sbnRSRight.Name = "sbnRSRight"; + this.sbnRSRight.Size = new System.Drawing.Size(13, 23); + this.sbnRSRight.TabIndex = 170; + this.sbnRSRight.Text = "Fall Back"; + this.sbnRSRight.UseVisualStyleBackColor = false; + this.sbnRSRight.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnLSRight + // + this.sbnLSRight.BackColor = System.Drawing.Color.Transparent; + this.sbnLSRight.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnLSRight.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnLSRight.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnLSRight.FlatAppearance.BorderSize = 0; + this.sbnLSRight.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnLSRight.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnLSRight.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnLSRight.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnLSRight.Location = new System.Drawing.Point(65, 92); + this.sbnLSRight.Name = "sbnLSRight"; + this.sbnLSRight.Size = new System.Drawing.Size(11, 23); + this.sbnLSRight.TabIndex = 165; + this.sbnLSRight.Text = "Fall Back"; + this.sbnLSRight.UseVisualStyleBackColor = false; + this.sbnLSRight.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnRSLeft + // + this.sbnRSLeft.BackColor = System.Drawing.Color.Transparent; + this.sbnRSLeft.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnRSLeft.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnRSLeft.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnRSLeft.FlatAppearance.BorderSize = 0; + this.sbnRSLeft.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnRSLeft.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnRSLeft.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnRSLeft.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnRSLeft.Location = new System.Drawing.Point(165, 92); + this.sbnRSLeft.Name = "sbnRSLeft"; + this.sbnRSLeft.Size = new System.Drawing.Size(11, 23); + this.sbnRSLeft.TabIndex = 169; + this.sbnRSLeft.Text = "Fall Back"; + this.sbnRSLeft.UseVisualStyleBackColor = false; + this.sbnRSLeft.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnLSDown + // + this.sbnLSDown.BackColor = System.Drawing.Color.Transparent; + this.sbnLSDown.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnLSDown.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnLSDown.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnLSDown.FlatAppearance.BorderSize = 0; + this.sbnLSDown.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnLSDown.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnLSDown.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnLSDown.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnLSDown.Location = new System.Drawing.Point(36, 120); + this.sbnLSDown.Name = "sbnLSDown"; + this.sbnLSDown.Size = new System.Drawing.Size(23, 11); + this.sbnLSDown.TabIndex = 166; + this.sbnLSDown.Text = "Fall Back"; + this.sbnLSDown.UseVisualStyleBackColor = false; + this.sbnLSDown.Click += new System.EventHandler(this.Show_ControlsBn); + // + // sbnR3 + // + this.sbnR3.BackColor = System.Drawing.Color.Transparent; + this.sbnR3.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None; + this.sbnR3.Cursor = System.Windows.Forms.Cursors.Default; + this.sbnR3.FlatAppearance.BorderColor = System.Drawing.Color.Red; + this.sbnR3.FlatAppearance.BorderSize = 0; + this.sbnR3.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.Control; + this.sbnR3.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control; + this.sbnR3.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.sbnR3.ForeColor = System.Drawing.SystemColors.WindowText; + this.sbnR3.Location = new System.Drawing.Point(182, 92); + this.sbnR3.Name = "sbnR3"; + this.sbnR3.Size = new System.Drawing.Size(23, 23); + this.sbnR3.TabIndex = 168; + this.sbnR3.Text = "Fall Back"; + this.sbnR3.UseVisualStyleBackColor = false; + this.sbnR3.Click += new System.EventHandler(this.Show_ControlsBn); + // + // tPController + // + this.tPController.Controls.Add(this.SixaxisPanel); + this.tPController.Controls.Add(this.lBL2Track); + this.tPController.Controls.Add(this.pBDelayTracker); + this.tPController.Controls.Add(this.btnSATrack); + this.tPController.Controls.Add(this.btnRSTrack); + this.tPController.Controls.Add(this.lBRSTip); + this.tPController.Controls.Add(this.lBInputDelay); + this.tPController.Controls.Add(this.lBR2Track); + this.tPController.Controls.Add(this.lBLSTip); + this.tPController.Controls.Add(this.lBSATip); + this.tPController.Controls.Add(this.btnLSTrack); + this.tPController.Controls.Add(this.pBSADeadzone); + this.tPController.Controls.Add(this.pBRSDeadzone); + this.tPController.Controls.Add(this.lBRSTrack); + this.tPController.Controls.Add(this.pBLSDeadzone); + this.tPController.Controls.Add(this.lBLSTrack); + this.tPController.Controls.Add(this.tBR2); + this.tPController.Controls.Add(this.tBL2); + this.tPController.Controls.Add(this.lBSATrack); + this.tPController.Location = new System.Drawing.Point(4, 22); + this.tPController.Name = "tPController"; + this.tPController.Padding = new System.Windows.Forms.Padding(3); + this.tPController.Size = new System.Drawing.Size(428, 216); + this.tPController.TabIndex = 2; + this.tPController.Text = "Controller Readings"; + this.tPController.UseVisualStyleBackColor = true; + // + // lBL2Track + // + this.lBL2Track.AutoSize = true; + this.lBL2Track.Location = new System.Drawing.Point(316, 33); + this.lBL2Track.Name = "lBL2Track"; + this.lBL2Track.Size = new System.Drawing.Size(19, 13); + this.lBL2Track.TabIndex = 216; + this.lBL2Track.Text = "L2"; + this.lBL2Track.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // pBDelayTracker + // + this.pBDelayTracker.Location = new System.Drawing.Point(112, 9); + this.pBDelayTracker.Name = "pBDelayTracker"; + this.pBDelayTracker.Size = new System.Drawing.Size(10, 10); + this.pBDelayTracker.TabIndex = 243; + this.pBDelayTracker.TabStop = false; + // + // btnSATrack + // + this.btnSATrack.BackColor = System.Drawing.Color.Black; + this.btnSATrack.Enabled = false; + this.btnSATrack.FlatStyle = System.Windows.Forms.FlatStyle.Popup; + this.btnSATrack.Location = new System.Drawing.Point(362, 150); + this.btnSATrack.Name = "btnSATrack"; + this.btnSATrack.Size = new System.Drawing.Size(3, 3); + this.btnSATrack.TabIndex = 237; + this.btnSATrack.Text = "button1"; + this.btnSATrack.UseVisualStyleBackColor = false; + // + // btnRSTrack + // + this.btnRSTrack.BackColor = System.Drawing.Color.Black; + this.btnRSTrack.Enabled = false; + this.btnRSTrack.FlatStyle = System.Windows.Forms.FlatStyle.Popup; + this.btnRSTrack.Location = new System.Drawing.Point(211, 149); + this.btnRSTrack.Name = "btnRSTrack"; + this.btnRSTrack.Size = new System.Drawing.Size(3, 3); + this.btnRSTrack.TabIndex = 237; + this.btnRSTrack.Text = "button1"; + this.btnRSTrack.UseVisualStyleBackColor = false; + // + // lBRSTip + // + this.lBRSTip.Location = new System.Drawing.Point(150, 56); + this.lBRSTip.Name = "lBRSTip"; + this.lBRSTip.Size = new System.Drawing.Size(125, 30); + this.lBRSTip.TabIndex = 216; + this.lBRSTip.Text = "Right Stick"; + this.lBRSTip.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // lBInputDelay + // + this.lBInputDelay.AutoSize = true; + this.lBInputDelay.Location = new System.Drawing.Point(6, 7); + this.lBInputDelay.Name = "lBInputDelay"; + this.lBInputDelay.Size = new System.Drawing.Size(100, 13); + this.lBInputDelay.TabIndex = 216; + this.lBInputDelay.Text = "Input Delay: N/Ams"; + this.lBInputDelay.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // lBR2Track + // + this.lBR2Track.AutoSize = true; + this.lBR2Track.Location = new System.Drawing.Point(385, 33); + this.lBR2Track.Name = "lBR2Track"; + this.lBR2Track.Size = new System.Drawing.Size(21, 13); + this.lBR2Track.TabIndex = 216; + this.lBR2Track.Text = "R2"; + this.lBR2Track.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // lBLSTip + // + this.lBLSTip.Location = new System.Drawing.Point(6, 56); + this.lBLSTip.Name = "lBLSTip"; + this.lBLSTip.Size = new System.Drawing.Size(125, 30); + this.lBLSTip.TabIndex = 216; + this.lBLSTip.Text = "Left Stick"; + this.lBLSTip.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // lBSATip + // + this.lBSATip.Location = new System.Drawing.Point(300, 56); + this.lBSATip.Name = "lBSATip"; + this.lBSATip.Size = new System.Drawing.Size(125, 30); + this.lBSATip.TabIndex = 216; + this.lBSATip.Text = "Sixaxis: X axis is flipped for easier reading"; + this.lBSATip.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + this.lBSATip.Click += new System.EventHandler(this.lBSATip_Click); + // + // btnLSTrack + // + this.btnLSTrack.BackColor = System.Drawing.Color.Black; + this.btnLSTrack.Enabled = false; + this.btnLSTrack.FlatStyle = System.Windows.Forms.FlatStyle.Popup; + this.btnLSTrack.Location = new System.Drawing.Point(67, 149); + this.btnLSTrack.Name = "btnLSTrack"; + this.btnLSTrack.Size = new System.Drawing.Size(3, 3); + this.btnLSTrack.TabIndex = 237; + this.btnLSTrack.Text = "button1"; + this.btnLSTrack.UseVisualStyleBackColor = false; + // + // pBSADeadzone + // + this.pBSADeadzone.BackColor = System.Drawing.Color.Transparent; + this.pBSADeadzone.Image = ((System.Drawing.Image)(resources.GetObject("pBSADeadzone.Image"))); + this.pBSADeadzone.Location = new System.Drawing.Point(348, 136); + this.pBSADeadzone.Name = "pBSADeadzone"; + this.pBSADeadzone.Size = new System.Drawing.Size(31, 31); + this.pBSADeadzone.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.pBSADeadzone.TabIndex = 242; + this.pBSADeadzone.TabStop = false; + this.pBSADeadzone.Paint += new System.Windows.Forms.PaintEventHandler(this.DrawCircle); + // + // lBSATrack + // + this.lBSATrack.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.lBSATrack.Location = new System.Drawing.Point(300, 88); + this.lBSATrack.Name = "lBSATrack"; + this.lBSATrack.Size = new System.Drawing.Size(125, 125); + this.lBSATrack.TabIndex = 239; + this.lBSATrack.TextAlign = System.Drawing.ContentAlignment.TopCenter; + this.lBSATrack.Click += new System.EventHandler(this.lBSATrack_Click); + // + // pBRSDeadzone + // + this.pBRSDeadzone.BackColor = System.Drawing.Color.Transparent; + this.pBRSDeadzone.Image = ((System.Drawing.Image)(resources.GetObject("pBRSDeadzone.Image"))); + this.pBRSDeadzone.Location = new System.Drawing.Point(207, 146); + this.pBRSDeadzone.Name = "pBRSDeadzone"; + this.pBRSDeadzone.Size = new System.Drawing.Size(10, 10); + this.pBRSDeadzone.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.pBRSDeadzone.TabIndex = 241; + this.pBRSDeadzone.TabStop = false; + this.pBRSDeadzone.Visible = false; + // + // lBRSTrack + // + this.lBRSTrack.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.lBRSTrack.Location = new System.Drawing.Point(150, 88); + this.lBRSTrack.Name = "lBRSTrack"; + this.lBRSTrack.Size = new System.Drawing.Size(125, 125); + this.lBRSTrack.TabIndex = 239; + this.lBRSTrack.TextAlign = System.Drawing.ContentAlignment.TopCenter; + // + // pBLSDeadzone + // + this.pBLSDeadzone.BackColor = System.Drawing.Color.Transparent; + this.pBLSDeadzone.Image = ((System.Drawing.Image)(resources.GetObject("pBLSDeadzone.Image"))); + this.pBLSDeadzone.Location = new System.Drawing.Point(63, 146); + this.pBLSDeadzone.Name = "pBLSDeadzone"; + this.pBLSDeadzone.Size = new System.Drawing.Size(10, 10); + this.pBLSDeadzone.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage; + this.pBLSDeadzone.TabIndex = 240; + this.pBLSDeadzone.TabStop = false; + this.pBLSDeadzone.Visible = false; + // + // lBLSTrack + // + this.lBLSTrack.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.lBLSTrack.Location = new System.Drawing.Point(5, 88); + this.lBLSTrack.Name = "lBLSTrack"; + this.lBLSTrack.Size = new System.Drawing.Size(125, 125); + this.lBLSTrack.TabIndex = 239; + this.lBLSTrack.TextAlign = System.Drawing.ContentAlignment.TopCenter; + // + // tBR2 + // + this.tBR2.AutoSize = false; + this.tBR2.BackColor = System.Drawing.SystemColors.ControlLightLight; + this.tBR2.Enabled = false; + this.tBR2.Location = new System.Drawing.Point(365, 3); + this.tBR2.Maximum = 255; + this.tBR2.Name = "tBR2"; + this.tBR2.Orientation = System.Windows.Forms.Orientation.Vertical; + this.tBR2.RightToLeft = System.Windows.Forms.RightToLeft.Yes; + this.tBR2.Size = new System.Drawing.Size(25, 50); + this.tBR2.TabIndex = 244; + this.tBR2.TickFrequency = 0; + this.tBR2.TickStyle = System.Windows.Forms.TickStyle.None; + // + // tBL2 + // + this.tBL2.AutoSize = false; + this.tBL2.BackColor = System.Drawing.SystemColors.ControlLightLight; + this.tBL2.Enabled = false; + this.tBL2.Location = new System.Drawing.Point(331, 3); + this.tBL2.Maximum = 255; + this.tBL2.Name = "tBL2"; + this.tBL2.Orientation = System.Windows.Forms.Orientation.Vertical; + this.tBL2.RightToLeft = System.Windows.Forms.RightToLeft.Yes; + this.tBL2.RightToLeftLayout = true; + this.tBL2.Size = new System.Drawing.Size(25, 50); + this.tBL2.TabIndex = 244; + this.tBL2.TickFrequency = 127; + this.tBL2.TickStyle = System.Windows.Forms.TickStyle.None; + // + // SixaxisPanel + // + this.SixaxisPanel.Controls.Add(this.tBsixaxisAccelX); + this.SixaxisPanel.Controls.Add(this.lB6Accel); + this.SixaxisPanel.Controls.Add(this.tBsixaxisGyroX); + this.SixaxisPanel.Controls.Add(this.lB6Gryo); + this.SixaxisPanel.Controls.Add(this.tBsixaxisGyroY); + this.SixaxisPanel.Controls.Add(this.tBsixaxisGyroZ); + this.SixaxisPanel.Controls.Add(this.tBsixaxisAccelY); + this.SixaxisPanel.Controls.Add(this.tBsixaxisAccelZ); + this.SixaxisPanel.Location = new System.Drawing.Point(300, 88); + this.SixaxisPanel.Name = "SixaxisPanel"; + this.SixaxisPanel.Size = new System.Drawing.Size(125, 125); + this.SixaxisPanel.TabIndex = 236; + this.SixaxisPanel.Visible = false; + this.SixaxisPanel.Click += new System.EventHandler(this.SixaxisPanel_Click); // // advColorDialog // @@ -2093,47 +3284,25 @@ this.advColorDialog.Color = System.Drawing.Color.Blue; this.advColorDialog.FullOpen = true; // - // cBMouseAccel - // - this.cBMouseAccel.AutoSize = true; - this.cBMouseAccel.Location = new System.Drawing.Point(161, 17); - this.cBMouseAccel.Name = "cBMouseAccel"; - this.cBMouseAccel.Size = new System.Drawing.Size(85, 17); - this.cBMouseAccel.TabIndex = 251; - this.cBMouseAccel.Text = "Acceleration"; - this.cBMouseAccel.UseVisualStyleBackColor = true; - this.cBMouseAccel.CheckedChanged += new System.EventHandler(this.cBMouseAccel_CheckedChanged); - // // Options // this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi; - this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; + this.AutoScroll = true; this.BackColor = System.Drawing.Color.White; - this.ClientSize = new System.Drawing.Size(888, 295); - this.Controls.Add(this.rumbleBoostLabel); - this.Controls.Add(this.nUDHeavyRumble); - this.Controls.Add(this.lB6Gryo); + this.ClientSize = new System.Drawing.Size(885, 325); + this.Controls.Add(this.tabControls); this.Controls.Add(this.gBDeadzone); - this.Controls.Add(this.leftMotorLabel); this.Controls.Add(this.gBRumble); - this.Controls.Add(this.nUDLightRumble); - this.Controls.Add(this.rightMotorLabel); this.Controls.Add(this.gBLightbar); this.Controls.Add(this.gBTouchpad); - this.Controls.Add(this.lBControlTip); - this.Controls.Add(this.lBControls); - this.Controls.Add(this.MainPanel); - this.Controls.Add(this.SticksPanel); this.Controls.Add(this.gBOther); - this.Controls.Add(this.SixaxisPanel); - this.Controls.Add(this.fLPTiltControls); - this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; this.MaximizeBox = false; + this.MaximumSize = new System.Drawing.Size(901, 364); this.MinimizeBox = false; - this.MinimumSize = new System.Drawing.Size(450, 270); + this.MinimumSize = new System.Drawing.Size(100, 100); this.Name = "Options"; - this.Text = "Options"; + this.Text = "Profile Options"; this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.Options_Closed); this.MainPanel.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)(this.pBController)).EndInit(); @@ -2156,8 +3325,6 @@ ((System.ComponentModel.ISupportInitialize)(this.tBsixaxisGyroY)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.tBsixaxisGyroX)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.nUDRumbleBoost)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nUDHeavyRumble)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.nUDLightRumble)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.lowRedBar)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.lowGreenBar)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.lowBlueBar)).EndInit(); @@ -2165,8 +3332,6 @@ this.FullPanel.PerformLayout(); this.lowBatteryPanel.ResumeLayout(false); this.lowBatteryPanel.PerformLayout(); - this.SixaxisPanel.ResumeLayout(false); - this.SixaxisPanel.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.nUDRS)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.numUDMouseSens)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.nUDLS)).EndInit(); @@ -2185,9 +3350,28 @@ this.gBDeadzone.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.nUDSZ)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.nUDSX)).EndInit(); + this.tabControls.ResumeLayout(false); + this.tPControls.ResumeLayout(false); + this.tPControls.PerformLayout(); this.fLPTiltControls.ResumeLayout(false); + this.tPShiftMod.ResumeLayout(false); + this.tPShiftMod.PerformLayout(); + this.sfLPTiltControls.ResumeLayout(false); + this.ShiftMainPanel.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.spBController)).EndInit(); + this.ShiftSticksPanel.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.spBSticks)).EndInit(); + this.tPController.ResumeLayout(false); + this.tPController.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.pBDelayTracker)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.pBSADeadzone)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.pBRSDeadzone)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.pBLSDeadzone)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.tBR2)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.tBL2)).EndInit(); + this.SixaxisPanel.ResumeLayout(false); + this.SixaxisPanel.PerformLayout(); this.ResumeLayout(false); - this.PerformLayout(); } @@ -2263,18 +3447,12 @@ private System.Windows.Forms.TrackBar tBsixaxisAccelZ; private System.Windows.Forms.CheckBox cBFlushHIDQueue; private System.Windows.Forms.TrackBar tBsixaxisAccelY; - private System.Windows.Forms.Label leftMotorLabel; private System.Windows.Forms.TrackBar tBsixaxisAccelX; - private System.Windows.Forms.Label rightMotorLabel; private System.Windows.Forms.TrackBar tBsixaxisGyroZ; - private System.Windows.Forms.Label rumbleBoostLabel; private System.Windows.Forms.TrackBar tBsixaxisGyroY; private System.Windows.Forms.TrackBar tBsixaxisGyroX; private System.Windows.Forms.NumericUpDown nUDRumbleBoost; private System.Windows.Forms.Label lB6Accel; - private System.Windows.Forms.NumericUpDown nUDHeavyRumble; - private System.Windows.Forms.Label lB6Gryo; - private System.Windows.Forms.NumericUpDown nUDLightRumble; private System.Windows.Forms.Button btnRumbleTest; private System.Windows.Forms.Label lbFull; private System.Windows.Forms.Label lBLowRed; @@ -2286,7 +3464,6 @@ private System.Windows.Forms.Label lBEmpty; private System.Windows.Forms.Panel lowBatteryPanel; private System.Windows.Forms.Panel FullPanel; - private System.Windows.Forms.Panel SixaxisPanel; private System.Windows.Forms.Label lBControlTip; private System.Windows.Forms.Label lbRS; private System.Windows.Forms.Label lbLS; @@ -2302,7 +3479,7 @@ private System.Windows.Forms.CheckBox cBControllerInput; private System.Windows.Forms.NumericUpDown nUDSixaxis; private System.Windows.Forms.NumericUpDown nUDflashLED; - private System.Windows.Forms.Label label1; + private System.Windows.Forms.Label lBPercentFlashBar; private System.Windows.Forms.Label lBFlashAt; private System.Windows.Forms.RadioButton rBFade; private System.Windows.Forms.RadioButton rBNormal; @@ -2311,17 +3488,91 @@ private System.Windows.Forms.Button btnChargingColor; private System.Windows.Forms.RadioButton rBColor; private System.Windows.Forms.CheckBox cBIdleDisconnect; - private System.Windows.Forms.Button bnGyroXP; - private System.Windows.Forms.Button bnGyroXN; - private System.Windows.Forms.Button bnGyroZP; - private System.Windows.Forms.Button bnGyroZN; - private System.Windows.Forms.FlowLayoutPanel fLPTiltControls; private System.Windows.Forms.Label lbSixaxisX; private System.Windows.Forms.Label lbSixaxisZ; private System.Windows.Forms.NumericUpDown nUDSZ; private System.Windows.Forms.NumericUpDown nUDSX; - private System.Windows.Forms.Label label2; + private System.Windows.Forms.Label lBPercentRumble; private System.Windows.Forms.CheckBox cBMouseAccel; + private System.Windows.Forms.TabControl tabControls; + private System.Windows.Forms.TabPage tPShiftMod; + private System.Windows.Forms.ComboBox cBShiftControl; + private System.Windows.Forms.Panel ShiftMainPanel; + private System.Windows.Forms.PictureBox spBController; + private System.Windows.Forms.Button sbnTouchUpper; + private System.Windows.Forms.Button sbnTouchLeft; + private System.Windows.Forms.Button sbnTouchRight; + private System.Windows.Forms.Button sbnTouchMulti; + private System.Windows.Forms.Button sbnR1; + private System.Windows.Forms.Button sbnCross; + private System.Windows.Forms.Button sbnCircle; + private System.Windows.Forms.Button sbtnRightStick; + private System.Windows.Forms.Button sbnSquare; + private System.Windows.Forms.Button sbtnLightbar; + private System.Windows.Forms.Button sbnTriangle; + private System.Windows.Forms.Button sbnUp; + private System.Windows.Forms.Button sbtnLeftStick; + private System.Windows.Forms.Button sbnDown; + private System.Windows.Forms.Button sbnL2; + private System.Windows.Forms.Button sbnRight; + private System.Windows.Forms.Button sbnR2; + private System.Windows.Forms.Button sbnLeft; + private System.Windows.Forms.Button sbnL1; + private System.Windows.Forms.Button sbnOptions; + private System.Windows.Forms.Button sbnPS; + private System.Windows.Forms.Button sbnShare; + private System.Windows.Forms.Panel ShiftSticksPanel; + private System.Windows.Forms.Button sbtnFullView; + private System.Windows.Forms.PictureBox spBSticks; + private System.Windows.Forms.Button sbnL3; + private System.Windows.Forms.Button sbnRSDown; + private System.Windows.Forms.Button sbnLSUp; + private System.Windows.Forms.Button sbnRSUp; + private System.Windows.Forms.Button sbnLSLeft; + private System.Windows.Forms.Button sbnRSRight; + private System.Windows.Forms.Button sbnLSRight; + private System.Windows.Forms.Button sbnRSLeft; + private System.Windows.Forms.Button sbnLSDown; + private System.Windows.Forms.Button sbnR3; + public System.Windows.Forms.ListBox lBShiftControls; + private System.Windows.Forms.Label lBtoUse; + private System.Windows.Forms.TabPage tPControls; + private System.Windows.Forms.Label lB6Gryo; + private System.Windows.Forms.Label lBGryo; + private System.Windows.Forms.FlowLayoutPanel fLPTiltControls; + private System.Windows.Forms.Button bnGyroZN; + private System.Windows.Forms.Button bnGyroZP; + private System.Windows.Forms.Button bnGyroXP; + private System.Windows.Forms.Button bnGyroXN; + private System.Windows.Forms.Label slBGryo; + private System.Windows.Forms.FlowLayoutPanel sfLPTiltControls; + private System.Windows.Forms.Button sbnGyroZN; + private System.Windows.Forms.Button sbnGyroZP; + private System.Windows.Forms.Button sbnGyroXP; + private System.Windows.Forms.Button sbnGyroXN; + private System.Windows.Forms.Label lBHold; + private System.Windows.Forms.TabPage tPController; + private System.Windows.Forms.Button btnLSTrack; + private System.Windows.Forms.Button btnSATrack; + private System.Windows.Forms.Button btnRSTrack; + private System.Windows.Forms.Label lBSATrack; + private System.Windows.Forms.Label lBRSTrack; + private System.Windows.Forms.Label lBLSTrack; + private System.Windows.Forms.Label lBSATip; + private System.Windows.Forms.PictureBox pBLSDeadzone; + private System.Windows.Forms.PictureBox pBSADeadzone; + private System.Windows.Forms.PictureBox pBRSDeadzone; + private System.Windows.Forms.Label lBforMandR; + private System.Windows.Forms.Label lBUseController; + private System.Windows.Forms.Label lBRSTip; + private System.Windows.Forms.Label lBLSTip; + private System.Windows.Forms.PictureBox pBDelayTracker; + private System.Windows.Forms.Label lBInputDelay; + private System.Windows.Forms.TrackBar tBL2; + private System.Windows.Forms.TrackBar tBR2; + private System.Windows.Forms.Label lBR2Track; + private System.Windows.Forms.Label lBL2Track; + private System.Windows.Forms.Panel SixaxisPanel; } }  \ No newline at end of file diff --git a/DS4Tool/Options.cs b/DS4Tool/Options.cs index 7a8831b..6e0fc19 100644 --- a/DS4Tool/Options.cs +++ b/DS4Tool/Options.cs @@ -15,7 +15,7 @@ namespace ScpServer public string filename; Byte[] oldLedColor, oldLowLedColor, oldChargingColor; public Timer inputtimer = new Timer(), sixaxisTimer = new Timer(); - public List