Version 1.4.15

Use Touchpad swipes for controls and disable it for mouse: swipe in 4
directions to use buttons, marcos, and even use the touchpad as an
analog stick (Relive the great moments of playing an FPS on a
touchscreen)
Mapping Stick directions to triggers now work properly
This commit is contained in:
jays2kings 2014-11-15 16:54:14 -05:00
parent a66878498e
commit a4e59cacb8
8 changed files with 1261 additions and 1324 deletions

View File

@ -1483,26 +1483,32 @@ namespace DS4Control
case DS4Controls.TouchRight: return (byte)(tp != null && tp.rightDown ? 255 : 0);
case DS4Controls.TouchMulti: return (byte)(tp != null && tp.multiDown ? 255 : 0);
case DS4Controls.TouchUpper: return (byte)(tp != null && tp.upperDown ? 255 : 0);
case DS4Controls.LXNeg: return (byte)cState.LX;
case DS4Controls.LYNeg: return (byte)cState.LY;
case DS4Controls.RXNeg: return (byte)cState.RX;
case DS4Controls.RYNeg: return (byte)cState.RY;
case DS4Controls.LXPos: return (byte)(cState.LX - 127 < 0 ? 0 : (cState.LX - 127));
case DS4Controls.LYPos: return (byte)(cState.LY - 123 < 0 ? 0 : (cState.LY - 123));
case DS4Controls.RXPos: return (byte)(cState.RX - 129 < 0 ? 0 : (cState.RX - 125));
case DS4Controls.RYPos: return (byte)(cState.RY - 125 < 0 ? 0 : (cState.RY - 127));
case DS4Controls.L2: return (byte)cState.L2;
case DS4Controls.R2: return (byte)cState.R2;
case DS4Controls.LXNeg: return (byte)(cState.LX - 127.5f > 0 ? 0 : -(cState.LX - 127.5f) * 2);
case DS4Controls.LYNeg: return (byte)(cState.LY - 127.5f > 0 ? 0 : -(cState.LY - 127.5f) * 2);
case DS4Controls.RXNeg: return (byte)(cState.RX - 127.5f > 0 ? 0 : -(cState.RX - 127.5f) * 2);
case DS4Controls.RYNeg: return (byte)(cState.RY - 127.5f > 0 ? 0 : -(cState.RY - 127.5f) * 2);
case DS4Controls.LXPos: return (byte)(cState.LX - 127.5f < 0 ? 0 : (cState.LX - 127.5f) * 2);
case DS4Controls.LYPos: return (byte)(cState.LY - 127.5f < 0 ? 0 : (cState.LY - 127.5f) * 2);
case DS4Controls.RXPos: return (byte)(cState.RX - 127.5f < 0 ? 0 : (cState.RX - 127.5f) * 2);
case DS4Controls.RYPos: return (byte)(cState.RY - 127.5f < 0 ? 0 : (cState.RY - 127.5f) * 2);
case DS4Controls.L2: return cState.L2;
case DS4Controls.R2: return cState.R2;
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);
case DS4Controls.SwipeUp: return (byte)(tp != null ? tp.swipeUpB : 0);
case DS4Controls.SwipeDown: return (byte)(tp != null ? tp.swipeDownB: 0);
case DS4Controls.SwipeLeft: return (byte)(tp != null ? tp.swipeLeftB: 0);
case DS4Controls.SwipeRight: return (byte)(tp != null ? tp.swipeRightB : 0);
}
return 0;
}
public static bool getBoolMapping(DS4Controls control, DS4State cState, DS4StateExposed eState, Mouse tp)
{
//if (control == DS4Controls.Up)
//Cons
switch (control)
{
case DS4Controls.Share: return cState.Share;
@ -1538,6 +1544,10 @@ namespace DS4Control
case DS4Controls.GyroXNeg: return eState.GyroX < -5000;
case DS4Controls.GyroZPos: return eState.GyroZ > 5000;
case DS4Controls.GyroZNeg: return eState.GyroZ < -5000;
case DS4Controls.SwipeUp: return (tp != null && tp.swipeUp);
case DS4Controls.SwipeDown: return (tp != null && tp.swipeDown);
case DS4Controls.SwipeLeft: return (tp != null && tp.swipeLeft);
case DS4Controls.SwipeRight: return (tp != null && tp.swipeRight);
}
return false;
}
@ -1571,8 +1581,12 @@ namespace DS4Control
case DS4Controls.TouchRight: return (byte)(tp != null && tp.rightDown ? trueVal : falseVal);
case DS4Controls.TouchMulti: return (byte)(tp != null && tp.multiDown ? trueVal : falseVal);
case DS4Controls.TouchUpper: return (byte)(tp != null && tp.upperDown ? trueVal : falseVal);
case DS4Controls.L2: if (alt) return (byte)(127 + cState.L2 / 2); else return (byte)(127 - cState.L2 / 2);
case DS4Controls.R2: if (alt) return (byte)(127 + cState.R2 / 2); else return (byte)(127 - cState.R2 / 2);
case DS4Controls.L2: if (alt) return (byte)(127.5f + cState.L2 / 2f); else return (byte)(127.5f - cState.L2 / 2f);
case DS4Controls.R2: if (alt) return (byte)(127.5f + cState.R2 / 2f); else return (byte)(127.5f - cState.R2 / 2f);
case DS4Controls.SwipeUp: if (alt) return (byte)(tp != null ? 127.5f + tp.swipeUpB / 2f : 0); else return (byte)(tp != null ? 127.5f - tp.swipeUpB / 2f : 0);
case DS4Controls.SwipeDown: if (alt) return (byte)(tp != null ? 127.5f + tp.swipeDownB / 2f : 0); else return (byte)(tp != null ? 127.5f - tp.swipeDownB / 2f : 0);
case DS4Controls.SwipeLeft: if (alt) return (byte)(tp != null ? 127.5f + tp.swipeLeftB / 2f : 0); else return (byte)(tp != null ? 127.5f - tp.swipeLeftB / 2f : 0);
case DS4Controls.SwipeRight: if (alt) return (byte)(tp != null ? 127.5f + tp.swipeRightB / 2f : 0); else return (byte)(tp != null ? 127.5f - tp.swipeRightB / 2f : 0);
case DS4Controls.GyroXPos: if (eState.GyroX > SXD * 7500)
if (alt) return (byte)Math.Min(255, 127 + eState.GyroX / 62); else return (byte)Math.Max(0, 127 - eState.GyroX / 62);
else return falseVal;
@ -1649,10 +1663,6 @@ namespace DS4Control
case DS4Controls.RYPos: cState.RY = 127; break;
case DS4Controls.L2: cState.L2 = 0; break;
case DS4Controls.R2: cState.R2 = 0; break;
//case DS4Controls.TouchButton: cState.TouchLeft = false; break;
//case DS4Controls.TouchMulti: cState.Touch2 = false; break;
//case DS4Controls.TouchRight: cState.TouchRight = false; break;
//case DS4Controls.TouchUpper: cState.TouchButton = false; break;
}
}

View File

@ -17,6 +17,7 @@ namespace DS4Control
private readonly MouseWheel wheel;
private bool tappedOnce = false, secondtouchbegin = false;
public bool swipeLeft, swipeRight, swipeUp, swipeDown;
public byte swipeLeftB, swipeRightB, swipeUpB, swipeDownB, swipedB;
public bool slideleft, slideright;
// touch area stuff
public bool leftDown, rightDown, upperDown, multiDown;
@ -38,30 +39,40 @@ namespace DS4Control
public virtual void touchesMoved(object sender, TouchpadEventArgs arg)
{
cursor.touchesMoved(arg);
wheel.touchesMoved(arg);
if (!(swipeUp || swipeDown || swipeLeft || swipeRight))
if (!Global.getUseTPforControls(deviceNum))
{
if (arg.touches[0].hwX - firstTouch.hwX > 200) swipeRight = true;
if (arg.touches[0].hwX - firstTouch.hwX < -200) swipeLeft = true;
if (arg.touches[0].hwY - firstTouch.hwY > 100) swipeDown = true;
if (arg.touches[0].hwY - firstTouch.hwY < -100) swipeUp = true;
cursor.touchesMoved(arg);
wheel.touchesMoved(arg);
}
/*if ((swipeUp || swipeDown || swipeLeft || swipeRight))
Console.WriteLine("Up " + swipeUp + " Down " + swipeDown + " Left " + swipeLeft + " Right " + swipeRight);*/
if (Math.Abs(firstTouch.hwY - arg.touches[0].hwY) < 50)
if (arg.touches.Length == 2)
if (arg.touches[0].hwX - firstTouch.hwX > 200 && !slideleft)
slideright = true;
else if (firstTouch.hwX - arg.touches[0].hwX > 200 && !slideright)
slideleft = true;
else
{
if (!(swipeUp || swipeDown || swipeLeft || swipeRight) && arg.touches.Length == 1)
{
if (arg.touches[0].hwX - firstTouch.hwX > 200) swipeRight = true;
if (arg.touches[0].hwX - firstTouch.hwX < -200) swipeLeft = true;
if (arg.touches[0].hwY - firstTouch.hwY > 150) swipeDown = true;
if (arg.touches[0].hwY - firstTouch.hwY < -150) swipeUp = true;
}
swipeUpB = (byte)Math.Min(255, Math.Max(0, (firstTouch.hwY - arg.touches[0].hwY) * 1.5f));
swipeDownB = (byte)Math.Min(255, Math.Max(0, (arg.touches[0].hwY - firstTouch.hwY) * 1.5f));
swipeLeftB = (byte)Math.Min(255, Math.Max(0, firstTouch.hwX - arg.touches[0].hwX));
swipeRightB = (byte)Math.Min(255, Math.Max(0, arg.touches[0].hwX - firstTouch.hwX));
}
if (Math.Abs(firstTouch.hwY - arg.touches[0].hwY) < 50 && arg.touches.Length == 2)
if (arg.touches[0].hwX - firstTouch.hwX > 200 && !slideleft)
slideright = true;
else if (firstTouch.hwX - arg.touches[0].hwX > 200 && !slideright)
slideleft = true;
dev.getCurrentState(s);
synthesizeMouseButtons();
}
public virtual void touchesBegan(object sender, TouchpadEventArgs arg)
{
cursor.touchesBegan(arg);
wheel.touchesBegan(arg);
if (!Global.getUseTPforControls(deviceNum))
{
cursor.touchesBegan(arg);
wheel.touchesBegan(arg);
}
pastTime = arg.timeStamp;
firstTouch = arg.touches[0];
if (Global.getDoubleTap(deviceNum))
@ -71,13 +82,14 @@ namespace DS4Control
secondtouchbegin = true;
}
dev.getCurrentState(s);
synthesizeMouseButtons();
synthesizeMouseButtons();
}
public virtual void touchesEnded(object sender, TouchpadEventArgs arg)
{
slideright = slideleft = false;
swipeUp = swipeDown = swipeLeft = swipeRight = false;
if (Global.getTapSensitivity(deviceNum) != 0)
swipeUpB = swipeDownB = swipeLeftB = swipeRightB = 0;
if (Global.getTapSensitivity(deviceNum) != 0 && !Global.getUseTPforControls(deviceNum))
{
if (secondtouchbegin)
@ -88,14 +100,14 @@ namespace DS4Control
DateTime test = arg.timeStamp;
if (test <= (pastTime + TimeSpan.FromMilliseconds((double)Global.getTapSensitivity(deviceNum) * 2)) && !arg.touchButtonPressed && !tappedOnce)
if (Math.Abs(firstTouch.hwX - arg.touches[0].hwX) < 10 && Math.Abs(firstTouch.hwY - arg.touches[0].hwY) < 10)
if (Global.getDoubleTap(deviceNum))
{
tappedOnce = true;
firstTap = arg.timeStamp;
TimeofEnd = DateTime.Now; //since arg can't be used in synthesizeMouseButtons
}
else
Mapping.MapClick(deviceNum, Mapping.Click.Left); //this way no delay if disabled
if (Global.getDoubleTap(deviceNum))
{
tappedOnce = true;
firstTap = arg.timeStamp;
TimeofEnd = DateTime.Now; //since arg can't be used in synthesizeMouseButtons
}
else
Mapping.MapClick(deviceNum, Mapping.Click.Left); //this way no delay if disabled
}
dev.getCurrentState(s);
synthesizeMouseButtons();
@ -115,7 +127,7 @@ namespace DS4Control
{
dev.getCurrentState(s);
//if (s.Touch1 || s.Touch2 || s.TouchButton)
synthesizeMouseButtons();
synthesizeMouseButtons();
}
private DS4State remapped = new DS4State();
@ -141,18 +153,21 @@ namespace DS4Control
Global.getCustomKey(deviceNum, DS4Controls.TouchMulti) == 0 &&
multiDown)
Mapping.MapClick(deviceNum, Mapping.Click.Right);
if (tappedOnce)
if (!Global.getUseTPforControls(deviceNum))
{
DateTime tester = DateTime.Now;
if (tester > (TimeofEnd + TimeSpan.FromMilliseconds((double)(Global.getTapSensitivity(deviceNum)) * 1.5)))
if (tappedOnce)
{
DateTime tester = DateTime.Now;
if (tester > (TimeofEnd + TimeSpan.FromMilliseconds((double)(Global.getTapSensitivity(deviceNum)) * 1.5)))
{
Mapping.MapClick(deviceNum, Mapping.Click.Left);
Mapping.MapClick(deviceNum, Mapping.Click.Left);
tappedOnce = false;
}
//if it fails the method resets, and tries again with a new tester value (gives tap a delay so tap and hold can work)
//if it fails the method resets, and tries again with a new tester value (gives tap a delay so tap and hold can work)
}
if (secondtouchbegin) //if tap and hold (also works as double tap)
Mapping.MapClick(deviceNum, Mapping.Click.Left);
}
if (secondtouchbegin) //if tap and hold (also works as double tap)
Mapping.MapClick(deviceNum, Mapping.Click.Left);
s = remapped;
//remapped.CopyTo(s);
}
@ -169,37 +184,18 @@ namespace DS4Control
public virtual void touchButtonDown(object sender, TouchpadEventArgs arg)
{
//byte leftRumble, rightRumble;
if (arg.touches == null)
{
//No touches, finger on upper portion of touchpad
//leftRumble = rightRumble = 0;
upperDown = true;
}
else if (arg.touches.Length > 1 )//|| (Global.getLowerRCOn(deviceNum) && arg.touches[0].hwX > (1920 * 3) / 4 && arg.touches[0].hwY > (960 * 3) / 4))
{
//leftRumble = rightRumble = 150;
else if (arg.touches.Length > 1)
multiDown = true;
}
else
{
if ((Global.getLowerRCOn(deviceNum) && arg.touches[0].hwX > (1920 * 3) / 4 && arg.touches[0].hwY > (960 * 3) / 4))
Mapping.MapClick(deviceNum, Mapping.Click.Right);
if (isLeft(arg.touches[0]))
{
leftDown = true;
//leftRumble = 25;
//rightRumble = 0;
}
else if (isRight(arg.touches[0]))
{
rightDown = true;
//leftRumble = 0;
//rightRumble = 25;
}
else
{
}
}
dev.getCurrentState(s);
synthesizeMouseButtons();

View File

@ -13,7 +13,7 @@ namespace DS4Control
[Flags]
public enum DS4KeyType : byte { None = 0, ScanCode = 1, Toggle = 2, Unbound = 4, Macro = 8, HoldMacro = 16, RepeatMacro = 32 }; //Increment by exponents of 2*, starting at 2^0
public enum Ds3PadId : byte { None = 0xFF, One = 0x00, Two = 0x01, Three = 0x02, Four = 0x03, All = 0x04 };
public enum DS4Controls : byte { None, LXNeg, LXPos, LYNeg, LYPos, RXNeg, RXPos, RYNeg, RYPos, L1, L2, L3, R1, R2, R3, Square, Triangle, Circle, Cross, DpadUp, DpadRight, DpadDown, DpadLeft, PS, TouchLeft, TouchUpper, TouchMulti, TouchRight, Share, Options, GyroXPos, GyroXNeg, GyroZPos, GyroZNeg };
public enum DS4Controls : byte { None, LXNeg, LXPos, LYNeg, LYPos, RXNeg, RXPos, RYNeg, RYPos, L1, L2, L3, R1, R2, R3, Square, Triangle, Circle, Cross, DpadUp, DpadRight, DpadDown, DpadLeft, PS, TouchLeft, TouchUpper, TouchMulti, TouchRight, Share, Options, GyroXPos, GyroXNeg, GyroZPos, GyroZNeg, SwipeLeft, SwipeRight, SwipeUp, SwipeDown };
public enum X360Controls : byte { None, LXNeg, LXPos, LYNeg, LYPos, RXNeg, RXPos, RYNeg, RYPos, LB, LT, LS, RB, RT, RS, X, Y, B, A, DpadUp, DpadRight, DpadDown, DpadLeft, Guide, Back, Start, LeftMouse, RightMouse, MiddleMouse, FourthMouse, FifthMouse, WUP, WDOWN, MouseUp, MouseDown, MouseLeft, MouseRight, Unbound };
public class DebugEventArgs : EventArgs
@ -248,6 +248,15 @@ namespace DS4Control
{
return m_Config.startTouchpadOff[device];
}
public static void setUseTPforControls(int device, bool data)
{
m_Config.useTPforControls[device] = data;
}
public static bool getUseTPforControls(int device)
{
return m_Config.useTPforControls[device];
}
public static void setUseExclusiveMode(bool exclusive)
{
m_Config.useExclusiveMode = exclusive;
@ -773,6 +782,7 @@ namespace DS4Control
public string[] launchProgram = { string.Empty, string.Empty, string.Empty, string.Empty, string.Empty };
public bool[] dinputOnly = { false, false, false, false, false };
public bool[] startTouchpadOff = { false, false, false, false, false };
public bool[] useTPforControls = { false, false, false, false, false };
public Boolean useExclusiveMode = false;
public Int32 formWidth = 782;
public Int32 formHeight = 550;
@ -930,6 +940,7 @@ namespace DS4Control
XmlNode xmlLaunchProgram = m_Xdoc.CreateNode(XmlNodeType.Element, "LaunchProgram", null); xmlLaunchProgram.InnerText = launchProgram[device].ToString(); Node.AppendChild(xmlLaunchProgram);
XmlNode xmlDinput = m_Xdoc.CreateNode(XmlNodeType.Element, "DinputOnly", null); xmlDinput.InnerText = dinputOnly[device].ToString(); Node.AppendChild(xmlDinput);
XmlNode xmlStartTouchpadOff = m_Xdoc.CreateNode(XmlNodeType.Element, "StartTouchpadOff", null); xmlStartTouchpadOff.InnerText = startTouchpadOff[device].ToString(); Node.AppendChild(xmlStartTouchpadOff);
XmlNode xmlUseTPforControls = m_Xdoc.CreateNode(XmlNodeType.Element, "UseTPforControls", null); xmlUseTPforControls.InnerText = useTPforControls[device].ToString(); Node.AppendChild(xmlUseTPforControls);
XmlNode NodeControl = m_Xdoc.CreateNode(XmlNodeType.Element, "Control", null);
XmlNode Key = m_Xdoc.CreateNode(XmlNodeType.Element, "Key", null);
@ -1101,6 +1112,10 @@ namespace DS4Control
case "bnGyroZP": return DS4Controls.GyroZPos;
case "bnGyroZN": return DS4Controls.GyroZNeg;
case "bnSwipeUp": return DS4Controls.SwipeUp;
case "bnSwipeDown": return DS4Controls.SwipeDown;
case "bnSwipeLeft": return DS4Controls.SwipeLeft;
case "bnSwipeRight": return DS4Controls.SwipeRight;
case "bnShiftShare": return DS4Controls.Share;
case "bnShiftL3": return DS4Controls.L3;
@ -1140,83 +1155,10 @@ namespace DS4Control
case "bnShiftGyroZP": return DS4Controls.GyroZPos;
case "bnShiftGyroZN": return DS4Controls.GyroZNeg;
//old name
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;
//end old name
case "bnHoldShare": return DS4Controls.Share;
case "bnHoldL3": return DS4Controls.L3;
case "bnHoldR3": return DS4Controls.R3;
case "bnHoldOptions": return DS4Controls.Options;
case "bnHoldUp": return DS4Controls.DpadUp;
case "bnHoldRight": return DS4Controls.DpadRight;
case "bnHoldDown": return DS4Controls.DpadDown;
case "bnHoldLeft": return DS4Controls.DpadLeft;
case "bnHoldL1": return DS4Controls.L1;
case "bnHoldR1": return DS4Controls.R1;
case "bnHoldTriangle": return DS4Controls.Triangle;
case "bnHoldCircle": return DS4Controls.Circle;
case "bnHoldCross": return DS4Controls.Cross;
case "bnHoldSquare": return DS4Controls.Square;
case "bnHoldPS": return DS4Controls.PS;
case "bnHoldLSLeft": return DS4Controls.LXNeg;
case "bnHoldLSUp": return DS4Controls.LYNeg;
case "bnHoldRSLeft": return DS4Controls.RXNeg;
case "bnHoldRSUp": return DS4Controls.RYNeg;
case "bnHoldLSRight": return DS4Controls.LXPos;
case "bnHoldLSDown": return DS4Controls.LYPos;
case "bnHoldRSRight": return DS4Controls.RXPos;
case "bnHoldRSDown": return DS4Controls.RYPos;
case "bnHoldL2": return DS4Controls.L2;
case "bnHoldR2": return DS4Controls.R2;
case "bnHoldTouchLeft": return DS4Controls.TouchLeft;
case "bnHoldTouchMulti": return DS4Controls.TouchMulti;
case "bnHoldTouchUpper": return DS4Controls.TouchUpper;
case "bnHoldTouchRight": return DS4Controls.TouchRight;
case "bnHoldGsyroXP": return DS4Controls.GyroXPos;
case "bnHoldGyroXN": return DS4Controls.GyroXNeg;
case "bnHoldGyroZP": return DS4Controls.GyroZPos;
case "bnHoldGyroZN": return DS4Controls.GyroZNeg;
case "bnShiftSwipeUp": return DS4Controls.SwipeUp;
case "bnShiftSwipeDown": return DS4Controls.SwipeDown;
case "bnShiftSwipeLeft": return DS4Controls.SwipeLeft;
case "bnShiftSwipeRight": return DS4Controls.SwipeRight;
}
return 0;
}
@ -1465,6 +1407,9 @@ namespace DS4Control
if (startTouchpadOff[device] == true) control.StartTPOff(device);
}
catch { startTouchpadOff[device] = false; missingSetting = true; }
try
{ Item = m_Xdoc.SelectSingleNode("/ScpControl/UseTPforControls"); Boolean.TryParse(Item.InnerText, out useTPforControls[device]); }
catch { useTPforControls[device] = false; missingSetting = true; }
DS4KeyType keyType;
UInt16 wvk;
if (buttons == null)

View File

@ -77,6 +77,7 @@
this.gBTouchpad = new System.Windows.Forms.GroupBox();
this.cbStartTouchpadOff = new System.Windows.Forms.CheckBox();
this.gBOther = new System.Windows.Forms.GroupBox();
this.cBTPforControls = new System.Windows.Forms.CheckBox();
this.cBDinput = new System.Windows.Forms.CheckBox();
this.pBProgram = new System.Windows.Forms.PictureBox();
this.cBLaunchProgram = new System.Windows.Forms.CheckBox();
@ -142,6 +143,12 @@
this.tBL2 = new System.Windows.Forms.TrackBar();
this.lbSATrack = new System.Windows.Forms.Label();
this.tPShiftMod = new System.Windows.Forms.TabPage();
this.label2 = new System.Windows.Forms.Label();
this.fLPShiftTouchSwipe = new System.Windows.Forms.FlowLayoutPanel();
this.bnShiftSwipeUp = new System.Windows.Forms.Button();
this.bnShiftSwipeDown = new System.Windows.Forms.Button();
this.bnShiftSwipeLeft = new System.Windows.Forms.Button();
this.bnShiftSwipeRight = new System.Windows.Forms.Button();
this.lbShiftGryo = new System.Windows.Forms.Label();
this.fLPShiftTiltControls = new System.Windows.Forms.FlowLayoutPanel();
this.bnShiftGyroZN = new System.Windows.Forms.Button();
@ -190,6 +197,12 @@
this.bnShiftLSDown = new System.Windows.Forms.Button();
this.bnShiftR3 = new System.Windows.Forms.Button();
this.tPControls = new System.Windows.Forms.TabPage();
this.label1 = new System.Windows.Forms.Label();
this.fLPTouchSwipe = new System.Windows.Forms.FlowLayoutPanel();
this.bnSwipeUp = new System.Windows.Forms.Button();
this.bnSwipeDown = new System.Windows.Forms.Button();
this.bnSwipeLeft = new System.Windows.Forms.Button();
this.bnSwipeRight = new System.Windows.Forms.Button();
this.lbGryo = new System.Windows.Forms.Label();
this.fLPTiltControls = new System.Windows.Forms.FlowLayoutPanel();
this.bnGyroZN = new System.Windows.Forms.Button();
@ -286,12 +299,14 @@
((System.ComponentModel.ISupportInitialize)(this.tBR2)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.tBL2)).BeginInit();
this.tPShiftMod.SuspendLayout();
this.fLPShiftTouchSwipe.SuspendLayout();
this.fLPShiftTiltControls.SuspendLayout();
this.pnlShiftMain.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pBShiftController)).BeginInit();
this.pnlShiftSticks.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pBShiftSticks)).BeginInit();
this.tPControls.SuspendLayout();
this.fLPTouchSwipe.SuspendLayout();
this.fLPTiltControls.SuspendLayout();
this.pnlMain.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pBController)).BeginInit();
@ -748,7 +763,6 @@
//
this.gBTouchpad.Controls.Add(this.cbStartTouchpadOff);
this.gBTouchpad.Controls.Add(this.cBTouchpadJitterCompensation);
this.gBTouchpad.Controls.Add(this.cBDoubleTap);
this.gBTouchpad.Controls.Add(this.cBlowerRCOn);
this.gBTouchpad.Controls.Add(this.cBSlide);
this.gBTouchpad.Controls.Add(this.nUDTouch);
@ -756,6 +770,7 @@
this.gBTouchpad.Controls.Add(this.nUDScroll);
this.gBTouchpad.Controls.Add(this.nUDTap);
this.gBTouchpad.Controls.Add(this.cBScroll);
this.gBTouchpad.Controls.Add(this.cBDoubleTap);
resources.ApplyResources(this.gBTouchpad, "gBTouchpad");
this.gBTouchpad.Name = "gBTouchpad";
this.gBTouchpad.TabStop = false;
@ -769,6 +784,7 @@
//
// gBOther
//
this.gBOther.Controls.Add(this.cBTPforControls);
this.gBOther.Controls.Add(this.cBDinput);
this.gBOther.Controls.Add(this.pBProgram);
this.gBOther.Controls.Add(this.cBLaunchProgram);
@ -787,6 +803,13 @@
this.gBOther.Name = "gBOther";
this.gBOther.TabStop = false;
//
// cBTPforControls
//
resources.ApplyResources(this.cBTPforControls, "cBTPforControls");
this.cBTPforControls.Name = "cBTPforControls";
this.cBTPforControls.UseVisualStyleBackColor = true;
this.cBTPforControls.CheckedChanged += new System.EventHandler(this.cBTPforControls_CheckedChanged);
//
// cBDinput
//
resources.ApplyResources(this.cBDinput, "cBDinput");
@ -1345,6 +1368,8 @@
//
// tPShiftMod
//
this.tPShiftMod.Controls.Add(this.label2);
this.tPShiftMod.Controls.Add(this.fLPShiftTouchSwipe);
this.tPShiftMod.Controls.Add(this.lbShiftGryo);
this.tPShiftMod.Controls.Add(this.fLPShiftTiltControls);
this.tPShiftMod.Controls.Add(this.cBShiftControl);
@ -1357,6 +1382,48 @@
this.tPShiftMod.Name = "tPShiftMod";
this.tPShiftMod.UseVisualStyleBackColor = true;
//
// label2
//
resources.ApplyResources(this.label2, "label2");
this.label2.Name = "label2";
//
// fLPShiftTouchSwipe
//
this.fLPShiftTouchSwipe.Controls.Add(this.bnShiftSwipeUp);
this.fLPShiftTouchSwipe.Controls.Add(this.bnShiftSwipeDown);
this.fLPShiftTouchSwipe.Controls.Add(this.bnShiftSwipeLeft);
this.fLPShiftTouchSwipe.Controls.Add(this.bnShiftSwipeRight);
resources.ApplyResources(this.fLPShiftTouchSwipe, "fLPShiftTouchSwipe");
this.fLPShiftTouchSwipe.Name = "fLPShiftTouchSwipe";
//
// bnShiftSwipeUp
//
resources.ApplyResources(this.bnShiftSwipeUp, "bnShiftSwipeUp");
this.bnShiftSwipeUp.Name = "bnShiftSwipeUp";
this.bnShiftSwipeUp.UseVisualStyleBackColor = true;
this.bnShiftSwipeUp.Click += new System.EventHandler(this.Show_ControlsBn);
//
// bnShiftSwipeDown
//
resources.ApplyResources(this.bnShiftSwipeDown, "bnShiftSwipeDown");
this.bnShiftSwipeDown.Name = "bnShiftSwipeDown";
this.bnShiftSwipeDown.UseVisualStyleBackColor = true;
this.bnShiftSwipeDown.Click += new System.EventHandler(this.Show_ControlsBn);
//
// bnShiftSwipeLeft
//
resources.ApplyResources(this.bnShiftSwipeLeft, "bnShiftSwipeLeft");
this.bnShiftSwipeLeft.Name = "bnShiftSwipeLeft";
this.bnShiftSwipeLeft.UseVisualStyleBackColor = true;
this.bnShiftSwipeLeft.Click += new System.EventHandler(this.Show_ControlsBn);
//
// bnShiftSwipeRight
//
resources.ApplyResources(this.bnShiftSwipeRight, "bnShiftSwipeRight");
this.bnShiftSwipeRight.Name = "bnShiftSwipeRight";
this.bnShiftSwipeRight.UseVisualStyleBackColor = true;
this.bnShiftSwipeRight.Click += new System.EventHandler(this.Show_ControlsBn);
//
// lbShiftGryo
//
resources.ApplyResources(this.lbShiftGryo, "lbShiftGryo");
@ -1438,7 +1505,6 @@
// lBShiftControls
//
this.lBShiftControls.FormattingEnabled = true;
resources.ApplyResources(this.lBShiftControls, "lBShiftControls");
this.lBShiftControls.Items.AddRange(new object[] {
resources.GetString("lBShiftControls.Items"),
resources.GetString("lBShiftControls.Items1"),
@ -1473,6 +1539,7 @@
resources.GetString("lBShiftControls.Items30"),
resources.GetString("lBShiftControls.Items31"),
resources.GetString("lBShiftControls.Items32")});
resources.ApplyResources(this.lBShiftControls, "lBShiftControls");
this.lBShiftControls.Name = "lBShiftControls";
this.lBShiftControls.KeyDown += new System.Windows.Forms.KeyEventHandler(this.List_KeyDown);
this.lBShiftControls.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.List_MouseDoubleClick);
@ -2002,6 +2069,8 @@
//
// tPControls
//
this.tPControls.Controls.Add(this.label1);
this.tPControls.Controls.Add(this.fLPTouchSwipe);
this.tPControls.Controls.Add(this.lbGryo);
this.tPControls.Controls.Add(this.fLPTiltControls);
this.tPControls.Controls.Add(this.pnlMain);
@ -2012,6 +2081,48 @@
this.tPControls.Name = "tPControls";
this.tPControls.UseVisualStyleBackColor = true;
//
// label1
//
resources.ApplyResources(this.label1, "label1");
this.label1.Name = "label1";
//
// fLPTouchSwipe
//
this.fLPTouchSwipe.Controls.Add(this.bnSwipeUp);
this.fLPTouchSwipe.Controls.Add(this.bnSwipeDown);
this.fLPTouchSwipe.Controls.Add(this.bnSwipeLeft);
this.fLPTouchSwipe.Controls.Add(this.bnSwipeRight);
resources.ApplyResources(this.fLPTouchSwipe, "fLPTouchSwipe");
this.fLPTouchSwipe.Name = "fLPTouchSwipe";
//
// bnSwipeUp
//
resources.ApplyResources(this.bnSwipeUp, "bnSwipeUp");
this.bnSwipeUp.Name = "bnSwipeUp";
this.bnSwipeUp.UseVisualStyleBackColor = true;
this.bnSwipeUp.Click += new System.EventHandler(this.Show_ControlsBn);
//
// bnSwipeDown
//
resources.ApplyResources(this.bnSwipeDown, "bnSwipeDown");
this.bnSwipeDown.Name = "bnSwipeDown";
this.bnSwipeDown.UseVisualStyleBackColor = true;
this.bnSwipeDown.Click += new System.EventHandler(this.Show_ControlsBn);
//
// bnSwipeLeft
//
resources.ApplyResources(this.bnSwipeLeft, "bnSwipeLeft");
this.bnSwipeLeft.Name = "bnSwipeLeft";
this.bnSwipeLeft.UseVisualStyleBackColor = true;
this.bnSwipeLeft.Click += new System.EventHandler(this.Show_ControlsBn);
//
// bnSwipeRight
//
resources.ApplyResources(this.bnSwipeRight, "bnSwipeRight");
this.bnSwipeRight.Name = "bnSwipeRight";
this.bnSwipeRight.UseVisualStyleBackColor = true;
this.bnSwipeRight.Click += new System.EventHandler(this.Show_ControlsBn);
//
// lbGryo
//
resources.ApplyResources(this.lbGryo, "lbGryo");
@ -2409,7 +2520,6 @@
// lBControls
//
this.lBControls.FormattingEnabled = true;
resources.ApplyResources(this.lBControls, "lBControls");
this.lBControls.Items.AddRange(new object[] {
resources.GetString("lBControls.Items"),
resources.GetString("lBControls.Items1"),
@ -2444,6 +2554,7 @@
resources.GetString("lBControls.Items30"),
resources.GetString("lBControls.Items31"),
resources.GetString("lBControls.Items32")});
resources.ApplyResources(this.lBControls, "lBControls");
this.lBControls.Name = "lBControls";
this.lBControls.DoubleClick += new System.EventHandler(this.Show_ControlsList);
this.lBControls.KeyDown += new System.Windows.Forms.KeyEventHandler(this.List_KeyDown);
@ -2715,6 +2826,7 @@
((System.ComponentModel.ISupportInitialize)(this.tBL2)).EndInit();
this.tPShiftMod.ResumeLayout(false);
this.tPShiftMod.PerformLayout();
this.fLPShiftTouchSwipe.ResumeLayout(false);
this.fLPShiftTiltControls.ResumeLayout(false);
this.pnlShiftMain.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.pBShiftController)).EndInit();
@ -2722,6 +2834,7 @@
((System.ComponentModel.ISupportInitialize)(this.pBShiftSticks)).EndInit();
this.tPControls.ResumeLayout(false);
this.tPControls.PerformLayout();
this.fLPTouchSwipe.ResumeLayout(false);
this.fLPTiltControls.ResumeLayout(false);
this.pnlMain.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.pBController)).EndInit();
@ -2944,5 +3057,18 @@
private System.Windows.Forms.Button bnLSDown;
private System.Windows.Forms.Button bnR3;
private System.Windows.Forms.TabControl tabControls;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.FlowLayoutPanel fLPTouchSwipe;
private System.Windows.Forms.Button bnSwipeUp;
private System.Windows.Forms.Button bnSwipeDown;
private System.Windows.Forms.Button bnSwipeLeft;
private System.Windows.Forms.Button bnSwipeRight;
private System.Windows.Forms.CheckBox cBTPforControls;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.FlowLayoutPanel fLPShiftTouchSwipe;
private System.Windows.Forms.Button bnShiftSwipeUp;
private System.Windows.Forms.Button bnShiftSwipeDown;
private System.Windows.Forms.Button bnShiftSwipeLeft;
private System.Windows.Forms.Button bnShiftSwipeRight;
}
}

View File

@ -59,6 +59,9 @@ namespace ScpServer
foreach (System.Windows.Forms.Control control in fLPTiltControls.Controls)
if (control is Button && !((Button)control).Name.Contains("btn"))
buttons.Add((Button)control);
foreach (System.Windows.Forms.Control control in fLPTouchSwipe.Controls)
if (control is Button && !((Button)control).Name.Contains("btn"))
buttons.Add((Button)control);
foreach (System.Windows.Forms.Control control in pnlShiftMain.Controls)
if (control is Button && !((Button)control).Name.Contains("btnShift"))
subbuttons.Add((Button)control);
@ -67,11 +70,15 @@ namespace ScpServer
subbuttons.Add((Button)control);
foreach (System.Windows.Forms.Control control in fLPShiftTiltControls.Controls)
if (control is Button && !((Button)control).Name.Contains("btnShift"))
subbuttons.Add((Button)control);
subbuttons.Add((Button)control);
foreach (System.Windows.Forms.Control control in fLPShiftTouchSwipe.Controls)
if (control is Button && !((Button)control).Name.Contains("btn"))
subbuttons.Add((Button)control);
string butts = "";
foreach (Button b in buttons)
butts += "\n" + b.Name;
//MessageBox.Show(butts);
root.lbLastMessage.ForeColor = Color.Black;
root.lbLastMessage.Text = "Hover over items to see description or more about";
foreach (System.Windows.Forms.Control control in Controls)
@ -88,11 +95,12 @@ namespace ScpServer
ctrl.MouseHover += Items_MouseHover;
else
control.MouseHover += Items_MouseHover;
if (device < 4)
nUDSixaxis.Value = deviceNum + 1;
if (filename != "")
{
if (device == 4)
if (device == 4) //if temp device is called
Global.setAProfile(4, name);
Global.LoadProfile(device, buttons.ToArray(), subbuttons.ToArray(), false, scpDevice);
DS4Color color = Global.loadColor(device);
@ -185,6 +193,7 @@ namespace ScpServer
cBDinput.Checked = Global.getDinputOnly(device);
olddinputcheck = cBDinput.Checked;
cbStartTouchpadOff.Checked = Global.getStartTouchpadOff(device);
cBTPforControls.Checked = Global.getUseTPforControls(device);
}
else
{
@ -318,73 +327,83 @@ namespace ScpServer
switch (((Button)sender).Name)
{
#region
case ("bnCross"): lBControls.SelectedIndex = 0; break;
case ("bnCircle"): lBControls.SelectedIndex = 1; break;
case ("bnSquare"): lBControls.SelectedIndex = 2; break;
case ("bnTriangle"): lBControls.SelectedIndex = 3; break;
case ("bnOptions"): lBControls.SelectedIndex = 4; break;
case ("bnShare"): lBControls.SelectedIndex = 5; break;
case ("bnUp"): lBControls.SelectedIndex = 6; break;
case ("bnDown"): lBControls.SelectedIndex = 7; break;
case ("bnLeft"): lBControls.SelectedIndex = 8; break;
case ("bnRight"): lBControls.SelectedIndex = 9; break;
case ("bnPS"): lBControls.SelectedIndex = 10; break;
case ("bnL1"): lBControls.SelectedIndex = 11; break;
case ("bnR1"): lBControls.SelectedIndex = 12; break;
case ("bnL2"): lBControls.SelectedIndex = 13; break;
case ("bnR2"): lBControls.SelectedIndex = 14; break;
case ("bnL3"): lBControls.SelectedIndex = 15; break;
case ("bnR3"): lBControls.SelectedIndex = 16; break;
case ("bnTouchLeft"): lBControls.SelectedIndex = 17; break;
case ("bnTouchRight"): lBControls.SelectedIndex = 18; break;
case ("bnTouchMulti"): lBControls.SelectedIndex = 19; break;
case ("bnTouchUpper"): lBControls.SelectedIndex = 20; break;
case ("bnLSUp"): lBControls.SelectedIndex = 21; break;
case ("bnLSDown"): lBControls.SelectedIndex = 22; break;
case ("bnLSLeft"): lBControls.SelectedIndex = 23; break;
case ("bnLSRight"): lBControls.SelectedIndex = 24; break;
case ("bnRSUp"): lBControls.SelectedIndex = 25; break;
case ("bnRSDown"): lBControls.SelectedIndex = 26; break;
case ("bnRSLeft"): lBControls.SelectedIndex = 27; break;
case ("bnRSRight"): lBControls.SelectedIndex = 28; break;
case ("bnGyroZN"): lBControls.SelectedIndex = 29; break;
case ("bnGyroZP"): lBControls.SelectedIndex = 30; break;
case ("bnGyroXP"): lBControls.SelectedIndex = 31; break;
case ("bnGyroXN"): lBControls.SelectedIndex = 32; break;
case "bnCross": lBControls.SelectedIndex = 0; break;
case "bnCircle": lBControls.SelectedIndex = 1; break;
case "bnSquare": lBControls.SelectedIndex = 2; break;
case "bnTriangle": lBControls.SelectedIndex = 3; break;
case "bnOptions": lBControls.SelectedIndex = 4; break;
case "bnShare": lBControls.SelectedIndex = 5; break;
case "bnUp": lBControls.SelectedIndex = 6; break;
case "bnDown": lBControls.SelectedIndex = 7; break;
case "bnLeft": lBControls.SelectedIndex = 8; break;
case "bnRight": lBControls.SelectedIndex = 9; break;
case "bnPS": lBControls.SelectedIndex = 10; break;
case "bnL1": lBControls.SelectedIndex = 11; break;
case "bnR1": lBControls.SelectedIndex = 12; break;
case "bnL2": lBControls.SelectedIndex = 13; break;
case "bnR2": lBControls.SelectedIndex = 14; break;
case "bnL3": lBControls.SelectedIndex = 15; break;
case "bnR3": lBControls.SelectedIndex = 16; break;
case "bnTouchLeft": lBControls.SelectedIndex = 17; break;
case "bnTouchRight": lBControls.SelectedIndex = 18; break;
case "bnTouchMulti": lBControls.SelectedIndex = 19; break;
case "bnTouchUpper": lBControls.SelectedIndex = 20; break;
case "bnLSUp": lBControls.SelectedIndex = 21; break;
case "bnLSDown": lBControls.SelectedIndex = 22; break;
case "bnLSLeft": lBControls.SelectedIndex = 23; break;
case "bnLSRight": lBControls.SelectedIndex = 24; break;
case "bnRSUp": lBControls.SelectedIndex = 25; break;
case "bnRSDown": lBControls.SelectedIndex = 26; break;
case "bnRSLeft": lBControls.SelectedIndex = 27; break;
case "bnRSRight": lBControls.SelectedIndex = 28; break;
case "bnGyroZN": lBControls.SelectedIndex = 29; break;
case "bnGyroZP": lBControls.SelectedIndex = 30; break;
case "bnGyroXP": lBControls.SelectedIndex = 31; break;
case "bnGyroXN": lBControls.SelectedIndex = 32; break;
case ("bnShiftCross"): lBShiftControls.SelectedIndex = 0; break;
case ("bnShiftCircle"): lBShiftControls.SelectedIndex = 1; break;
case ("bnShiftSquare"): lBShiftControls.SelectedIndex = 2; break;
case ("bnShiftTriangle"): lBShiftControls.SelectedIndex = 3; break;
case ("bnShiftOptions"): lBShiftControls.SelectedIndex = 4; break;
case ("bnShiftShare"): lBShiftControls.SelectedIndex = 5; break;
case ("bnShiftUp"): lBShiftControls.SelectedIndex = 6; break;
case ("bnShiftDown"): lBShiftControls.SelectedIndex = 7; break;
case ("bnShiftLeft"): lBShiftControls.SelectedIndex = 8; break;
case ("bnShiftRight"): lBShiftControls.SelectedIndex = 9; break;
case ("bnShiftPS"): lBShiftControls.SelectedIndex = 10; break;
case ("bnShiftL1"): lBShiftControls.SelectedIndex = 11; break;
case ("bnShiftR1"): lBShiftControls.SelectedIndex = 12; break;
case ("bnShiftL2"): lBShiftControls.SelectedIndex = 13; break;
case ("bnShiftR2"): lBShiftControls.SelectedIndex = 14; break;
case ("bnShiftL3"): lBShiftControls.SelectedIndex = 15; break;
case ("bnShiftR3"): lBShiftControls.SelectedIndex = 16; break;
case ("bnShiftTouchLeft"): lBShiftControls.SelectedIndex = 17; break;
case ("bnShiftTouchRight"): lBShiftControls.SelectedIndex = 18; break;
case ("bnShiftTouchMulti"): lBShiftControls.SelectedIndex = 19; break;
case ("bnShiftTouchUpper"): lBShiftControls.SelectedIndex = 20; break;
case ("bnShiftLSUp"): lBShiftControls.SelectedIndex = 21; break;
case ("bnShiftLSDown"): lBShiftControls.SelectedIndex = 22; break;
case ("bnShiftLSLeft"): lBShiftControls.SelectedIndex = 23; break;
case ("bnShiftLSRight"): lBShiftControls.SelectedIndex = 24; break;
case ("bnShiftRSUp"): lBShiftControls.SelectedIndex = 25; break;
case ("bnShiftRSDown"): lBShiftControls.SelectedIndex = 26; break;
case ("bnShiftRSLeft"): lBShiftControls.SelectedIndex = 27; break;
case ("bnShiftRSRight"): lBShiftControls.SelectedIndex = 28; break;
case ("bnShiftGyroZN"): lBShiftControls.SelectedIndex = 29; break;
case ("bnShiftGyroZP"): lBShiftControls.SelectedIndex = 30; break;
case ("bnShiftGyroXP"): lBShiftControls.SelectedIndex = 31; break;
case ("bnShiftGyroXN"): lBShiftControls.SelectedIndex = 32; break;
case "bnSwipeUp": lBControls.SelectedIndex = 33; break;
case "bnSwipeDown": lBControls.SelectedIndex = 34; break;
case "bnSwipeLeft": lBControls.SelectedIndex = 35; break;
case "bnSwipeRight": lBControls.SelectedIndex = 36; break;
case "bnShiftCross": lBShiftControls.SelectedIndex = 0; break;
case "bnShiftCircle": lBShiftControls.SelectedIndex = 1; break;
case "bnShiftSquare": lBShiftControls.SelectedIndex = 2; break;
case "bnShiftTriangle": lBShiftControls.SelectedIndex = 3; break;
case "bnShiftOptions": lBShiftControls.SelectedIndex = 4; break;
case "bnShiftShare": lBShiftControls.SelectedIndex = 5; break;
case "bnShiftUp": lBShiftControls.SelectedIndex = 6; break;
case "bnShiftDown": lBShiftControls.SelectedIndex = 7; break;
case "bnShiftLeft": lBShiftControls.SelectedIndex = 8; break;
case "bnShiftRight": lBShiftControls.SelectedIndex = 9; break;
case "bnShiftPS": lBShiftControls.SelectedIndex = 10; break;
case "bnShiftL1": lBShiftControls.SelectedIndex = 11; break;
case "bnShiftR1": lBShiftControls.SelectedIndex = 12; break;
case "bnShiftL2": lBShiftControls.SelectedIndex = 13; break;
case "bnShiftR2": lBShiftControls.SelectedIndex = 14; break;
case "bnShiftL3": lBShiftControls.SelectedIndex = 15; break;
case "bnShiftR3": lBShiftControls.SelectedIndex = 16; break;
case "bnShiftTouchLeft": lBShiftControls.SelectedIndex = 17; break;
case "bnShiftTouchRight": lBShiftControls.SelectedIndex = 18; break;
case "bnShiftTouchMulti": lBShiftControls.SelectedIndex = 19; break;
case "bnShiftTouchUpper": lBShiftControls.SelectedIndex = 20; break;
case "bnShiftLSUp": lBShiftControls.SelectedIndex = 21; break;
case "bnShiftLSDown": lBShiftControls.SelectedIndex = 22; break;
case "bnShiftLSLeft": lBShiftControls.SelectedIndex = 23; break;
case "bnShiftLSRight": lBShiftControls.SelectedIndex = 24; break;
case "bnShiftRSUp": lBShiftControls.SelectedIndex = 25; break;
case "bnShiftRSDown": lBShiftControls.SelectedIndex = 26; break;
case "bnShiftRSLeft": lBShiftControls.SelectedIndex = 27; break;
case "bnShiftRSRight": lBShiftControls.SelectedIndex = 28; break;
case "bnShiftGyroZN": lBShiftControls.SelectedIndex = 29; break;
case "bnShiftGyroZP": lBShiftControls.SelectedIndex = 30; break;
case "bnShiftGyroXP": lBShiftControls.SelectedIndex = 31; break;
case "bnShiftGyroXN": lBShiftControls.SelectedIndex = 32; break;
case "bnShiftSwipeUp": lBShiftControls.SelectedIndex = 33; break;
case "bnShiftSwipeDown": lBShiftControls.SelectedIndex = 34; break;
case "bnShiftSwipeLeft": lBShiftControls.SelectedIndex = 35; break;
case "bnShiftSwipeRight": lBShiftControls.SelectedIndex = 36; break;
#endregion
}
}
@ -428,7 +447,12 @@ namespace ScpServer
Global.setShiftModifier(device, cBShiftControl.SelectedIndex);
Global.setDinputOnly(device, cBDinput.Checked);
Global.setStartTouchpadOff(device, cbStartTouchpadOff.Checked);
Global.setUseTPforControls(device, cBTPforControls.Checked);
gBTouchpad.Enabled = !cBTPforControls.Checked;
if (cBTPforControls.Checked)
tabControls.Size = new Size(tabControls.Size.Width, (int)(282 * dpiy));
else
tabControls.Size = new Size(tabControls.Size.Width, (int)(242 * dpiy));
if (nUDRainbow.Value == 0) pBRainbow.Image = greyscale;
else pBRainbow.Image = colored;
}
@ -869,14 +893,25 @@ namespace ScpServer
lBControls.Items[26] = "RS Down : " + bnRSDown.Text;
lBControls.Items[27] = "RS Left : " + bnRSLeft.Text;
lBControls.Items[28] = "RS Right : " + bnRSRight.Text;
lBControls.Items[29] = Properties.Resources.TiltUp + " : " + UpdateGyroList(bnGyroZN);
lBControls.Items[30] = Properties.Resources.TiltDown + " : " + UpdateGyroList(bnGyroZP);
lBControls.Items[31] = Properties.Resources.TiltLeft + " : " + UpdateGyroList(bnGyroXP);
lBControls.Items[32] = Properties.Resources.TiltRight + " : " + UpdateGyroList(bnGyroXN);
lBControls.Items[29] = Properties.Resources.TiltUp + " : " + UpdateRegButtonList(bnGyroZN);
lBControls.Items[30] = Properties.Resources.TiltDown + " : " + UpdateRegButtonList(bnGyroZP);
lBControls.Items[31] = Properties.Resources.TiltLeft + " : " + UpdateRegButtonList(bnGyroXP);
lBControls.Items[32] = Properties.Resources.TiltRight + " : " + UpdateRegButtonList(bnGyroXN);
bnGyroZN.Text = Properties.Resources.TiltUp;
bnGyroZP.Text = Properties.Resources.TiltDown;
bnGyroXP.Text = Properties.Resources.TiltLeft;
bnGyroXN.Text = Properties.Resources.TiltRight;
if (lBControls.Items.Count > 33)
{
lBControls.Items[33] = Properties.Resources.SwipeUp + " : " + UpdateRegButtonList(bnSwipeUp);
lBControls.Items[34] = Properties.Resources.SwipeDown + " : " + UpdateRegButtonList(bnSwipeDown);
lBControls.Items[35] = Properties.Resources.SwipeLeft + " : " + UpdateRegButtonList(bnSwipeLeft);
lBControls.Items[36] = Properties.Resources.SwipeRight + " : " + UpdateRegButtonList(bnSwipeRight);
bnSwipeUp.Text = Properties.Resources.SwipeUp;
bnSwipeDown.Text = Properties.Resources.SwipeDown;
bnSwipeLeft.Text = Properties.Resources.SwipeLeft;
bnSwipeRight.Text = Properties.Resources.SwipeRight;
}
foreach (Button b in subbuttons)
if (b.Tag == null)
@ -910,17 +945,28 @@ namespace ScpServer
lBShiftControls.Items[26] = "RS Down : " + bnShiftRSDown.Text;
lBShiftControls.Items[27] = "RS Left : " + bnShiftRSLeft.Text;
lBShiftControls.Items[28] = "RS Right : " + bnShiftRSRight.Text;
lBShiftControls.Items[29] = Properties.Resources.TiltUp + " : " + UpdateGyroList(bnShiftGyroZN);
lBShiftControls.Items[30] = Properties.Resources.TiltDown + " : " + UpdateGyroList(bnShiftGyroZP);
lBShiftControls.Items[31] = Properties.Resources.TiltLeft + " : " + UpdateGyroList(bnShiftGyroXP);
lBShiftControls.Items[32] = Properties.Resources.TiltRight + " : " + UpdateGyroList(bnShiftGyroXN);
lBShiftControls.Items[29] = Properties.Resources.TiltUp + " : " + UpdateRegButtonList(bnShiftGyroZN);
lBShiftControls.Items[30] = Properties.Resources.TiltDown + " : " + UpdateRegButtonList(bnShiftGyroZP);
lBShiftControls.Items[31] = Properties.Resources.TiltLeft + " : " + UpdateRegButtonList(bnShiftGyroXP);
lBShiftControls.Items[32] = Properties.Resources.TiltRight + " : " + UpdateRegButtonList(bnShiftGyroXN);
bnShiftGyroZN.Text = Properties.Resources.TiltUp;
bnShiftGyroZP.Text = Properties.Resources.TiltDown;
bnShiftGyroXP.Text = Properties.Resources.TiltLeft;
bnShiftGyroXN.Text = Properties.Resources.TiltRight;
if (lBShiftControls.Items.Count > 33)
{
lBShiftControls.Items[33] = Properties.Resources.SwipeUp + " : " + UpdateRegButtonList(bnShiftSwipeUp);
lBShiftControls.Items[34] = Properties.Resources.SwipeDown + " : " + UpdateRegButtonList(bnShiftSwipeDown);
lBShiftControls.Items[35] = Properties.Resources.SwipeLeft + " : " + UpdateRegButtonList(bnShiftSwipeLeft);
lBShiftControls.Items[36] = Properties.Resources.SwipeRight + " : " + UpdateRegButtonList(bnShiftSwipeRight);
bnShiftSwipeUp.Text = Properties.Resources.SwipeUp;
bnShiftSwipeDown.Text = Properties.Resources.SwipeDown;
bnShiftSwipeLeft.Text = Properties.Resources.SwipeLeft;
bnShiftSwipeRight.Text = Properties.Resources.SwipeRight;
}
}
private string UpdateGyroList(Button button)
private string UpdateRegButtonList(Button button)
{
if (button.Tag is String && (String)button.Tag == "Unbound")
return "Unbound";
@ -933,7 +979,7 @@ namespace ScpServer
else if (button.Tag is string)
return button.Tag.ToString();
else if (button.Name.StartsWith("s") && buttons[subbuttons.IndexOf(button)].Tag != null && button.Tag == null)
return "Fall Back to " + UpdateGyroList(buttons[subbuttons.IndexOf(button)]);
return "Fall Back to " + UpdateRegButtonList(buttons[subbuttons.IndexOf(button)]);
else
return string.Empty;
}
@ -975,6 +1021,11 @@ namespace ScpServer
if (lBControls.SelectedIndex == 30) Show_ControlsBn(bnGyroZP, e);
if (lBControls.SelectedIndex == 31) Show_ControlsBn(bnGyroXP, e);
if (lBControls.SelectedIndex == 32) Show_ControlsBn(bnGyroXN, e);
if (lBControls.SelectedIndex == 33) Show_ControlsBn(bnSwipeUp, e);
if (lBControls.SelectedIndex == 34) Show_ControlsBn(bnSwipeDown, e);
if (lBControls.SelectedIndex == 35) Show_ControlsBn(bnSwipeLeft, e);
if (lBControls.SelectedIndex == 36) Show_ControlsBn(bnSwipeRight, e);
}
private void Show_ShiftControlsList(object sender, EventArgs e)
@ -1015,6 +1066,12 @@ namespace ScpServer
if (lBShiftControls.SelectedIndex == 30) Show_ControlsBn(bnShiftGyroZP, e);
if (lBShiftControls.SelectedIndex == 31) Show_ControlsBn(bnShiftGyroXP, e);
if (lBShiftControls.SelectedIndex == 32) Show_ControlsBn(bnShiftGyroXN, e);
if (lBShiftControls.SelectedIndex == 33) Show_ControlsBn(bnShiftSwipeUp, e);
if (lBShiftControls.SelectedIndex == 34) Show_ControlsBn(bnShiftSwipeDown, e);
if (lBShiftControls.SelectedIndex == 35) Show_ControlsBn(bnShiftSwipeLeft, e);
if (lBShiftControls.SelectedIndex == 36) Show_ControlsBn(bnShiftSwipeRight, e);
}
private void List_MouseDoubleClick(object sender, MouseEventArgs e)
@ -1425,6 +1482,7 @@ namespace ScpServer
case "cBDinput": root.lbLastMessage.Text = Properties.Resources.DinputOnly; break;
case "lbFlashAt": root.lbLastMessage.Text = "Click to change flash color. Black = default color"; break;
case "cbStartTouchpadOff": root.lbLastMessage.Text = "Re-enable by pressing PS+Touchpad"; break;
case "cBTPforControls": root.lbLastMessage.Text = "This disables the Touchpad as a mouse"; break;
default: root.lbLastMessage.Text = "Hover over items to see description or more about"; break;
}
if (root.lbLastMessage.Text != "Hover over items to see description or more about")
@ -1432,5 +1490,43 @@ namespace ScpServer
else
root.lbLastMessage.ForeColor = SystemColors.GrayText;
}
private void cBTPforControls_CheckedChanged(object sender, EventArgs e)
{
Global.setUseTPforControls(device, cBTPforControls.Checked);
gBTouchpad.Enabled = !cBTPforControls.Checked;
if (cBTPforControls.Checked)
{
tabControls.Size = new Size(tabControls.Size.Width, (int)(282 * dpiy));
lBControls.Items.Add(Properties.Resources.SwipeUp + " : " + UpdateRegButtonList(bnSwipeUp));
lBControls.Items.Add(Properties.Resources.SwipeDown + " : " + UpdateRegButtonList(bnSwipeDown));
lBControls.Items.Add(Properties.Resources.SwipeLeft + " : " + UpdateRegButtonList(bnSwipeLeft));
lBControls.Items.Add(Properties.Resources.SwipeRight + " : " + UpdateRegButtonList(bnSwipeRight));
bnSwipeUp.Text = Properties.Resources.SwipeUp;
bnSwipeDown.Text = Properties.Resources.SwipeDown;
bnSwipeLeft.Text = Properties.Resources.SwipeLeft;
bnSwipeRight.Text = Properties.Resources.SwipeRight;
lBShiftControls.Items.Add(Properties.Resources.SwipeUp + " : " + UpdateRegButtonList(bnShiftSwipeUp));
lBShiftControls.Items.Add(Properties.Resources.SwipeDown + " : " + UpdateRegButtonList(bnShiftSwipeDown));
lBShiftControls.Items.Add(Properties.Resources.SwipeLeft + " : " + UpdateRegButtonList(bnShiftSwipeLeft));
lBShiftControls.Items.Add(Properties.Resources.SwipeRight + " : " + UpdateRegButtonList(bnShiftSwipeRight));
bnShiftSwipeUp.Text = Properties.Resources.SwipeUp;
bnShiftSwipeDown.Text = Properties.Resources.SwipeDown;
bnShiftSwipeLeft.Text = Properties.Resources.SwipeLeft;
bnShiftSwipeRight.Text = Properties.Resources.SwipeRight;
}
else
{
tabControls.Size = new Size(tabControls.Size.Width, (int)(242 * dpiy));
lBControls.Items.RemoveAt(36);
lBControls.Items.RemoveAt(35);
lBControls.Items.RemoveAt(34);
lBControls.Items.RemoveAt(33);
lBShiftControls.Items.RemoveAt(36);
lBShiftControls.Items.RemoveAt(35);
lBShiftControls.Items.RemoveAt(34);
lBShiftControls.Items.RemoveAt(33);
}
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -553,4 +553,16 @@
<data name="InstallFailed" xml:space="preserve">
<value>Install Failed, Please Retry</value>
</data>
<data name="SwipeDown" xml:space="preserve">
<value>Swipe Down</value>
</data>
<data name="SwipeLeft" xml:space="preserve">
<value>Swipe Left</value>
</data>
<data name="SwipeRight" xml:space="preserve">
<value>Swipe Right</value>
</data>
<data name="SwipeUp" xml:space="preserve">
<value>Swipe Up</value>
</data>
</root>

View File

@ -1176,6 +1176,33 @@ namespace ScpServer.Properties {
}
}
/// <summary>
/// Looks up a localized string similar to Swipe Down.
/// </summary>
internal static string SwipeDown {
get {
return ResourceManager.GetString("SwipeDown", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Swipe Left.
/// </summary>
internal static string SwipeLeft {
get {
return ResourceManager.GetString("SwipeLeft", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Swipe Right.
/// </summary>
internal static string SwipeRight {
get {
return ResourceManager.GetString("SwipeRight", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Swipe Touchpad to change profiles.
/// </summary>
@ -1185,6 +1212,15 @@ namespace ScpServer.Properties {
}
}
/// <summary>
/// Looks up a localized string similar to Swipe Up.
/// </summary>
internal static string SwipeUp {
get {
return ResourceManager.GetString("SwipeUp", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Tap and hold to drag, slight delay with single taps.
/// </summary>