mirror of
https://github.com/cemu-project/DS4Windows.git
synced 2024-11-26 11:04:21 +01:00
Version 1.4.156
Significant CPU usage decrease by reworking how single instances work, on a mobile i7 for example with a single controller connected usage went from 4-6% to .5-1.5%. With no controllers connected the usage went from 2.5-4.5% to 0%! As mentioned before, single instances has been reworked, so trying to relaunch DS4W more reliably opens the previous instance Fixed Shift modifier not working if main controls were not modified Fixed Tilt Left for Shift modifier Fixed default text of shift controls Remove touchpad movement notification when swipe for controls is enabled Can test the rumble motors separately via Heavy and Light Truly implemented Flush HID (I think) Slight change in profiles, when loading profiles in for the first time in this new version, there may be a slight delay Updated French Translations Removed mouse moving as an option for touch swipes controls, as they weren't implemented nor have a purpose to be
This commit is contained in:
parent
a4e59cacb8
commit
b4a6249fa3
@ -397,6 +397,8 @@ namespace DS4Control
|
||||
|
||||
if (ind != -1)
|
||||
{
|
||||
if (Global.getFlushHIDQueue(ind))
|
||||
device.FlushHID();
|
||||
device.getExposedState(ExposedState[ind], CurrentState[ind]);
|
||||
DS4State cState = CurrentState[ind];
|
||||
device.getPreviousState(PreviousState[ind]);
|
||||
@ -406,7 +408,7 @@ namespace DS4Control
|
||||
CheckForHotkeys(ind, cState, pState);
|
||||
GetInputkeys(ind);
|
||||
|
||||
if (Global.getHasCustomKeysorButtons(ind))
|
||||
if (Global.getHasCustomKeysorButtons(ind) || Global.getHasShiftCustomKeysorButtons(ind))
|
||||
{
|
||||
if (!recordingMacro)
|
||||
Mapping.MapCustom(ind, cState, MappedState[ind], ExposedState[ind], touchPad[ind]);
|
||||
@ -534,7 +536,7 @@ namespace DS4Control
|
||||
d = null;
|
||||
}
|
||||
}
|
||||
if (cState.Touch1 && pState.PS)
|
||||
if (!Global.getUseTPforControls(deviceID) && cState.Touch1 && pState.PS)
|
||||
{
|
||||
if (Global.getTouchSensitivity(deviceID) > 0 && touchreleased[deviceID])
|
||||
{
|
||||
|
@ -883,20 +883,20 @@ namespace DS4Control
|
||||
try
|
||||
{
|
||||
XmlNode Node;
|
||||
XmlNode xmlControls = m_Xdoc.SelectSingleNode("/ScpControl/Control");
|
||||
XmlNode xmlShiftControls = m_Xdoc.SelectSingleNode("/ScpControl/ShiftControl");
|
||||
XmlNode xmlControls = m_Xdoc.SelectSingleNode("/DS4Windows/Control");
|
||||
XmlNode xmlShiftControls = m_Xdoc.SelectSingleNode("/DS4Windows/ShiftControl");
|
||||
m_Xdoc.RemoveAll();
|
||||
|
||||
Node = m_Xdoc.CreateXmlDeclaration("1.0", "utf-8", String.Empty);
|
||||
m_Xdoc.AppendChild(Node);
|
||||
|
||||
Node = m_Xdoc.CreateComment(String.Format(" ScpControl Configuration Data. {0} ", DateTime.Now));
|
||||
Node = m_Xdoc.CreateComment(String.Format(" DS4Windows Configuration Data. {0} ", DateTime.Now));
|
||||
m_Xdoc.AppendChild(Node);
|
||||
|
||||
Node = m_Xdoc.CreateWhitespace("\r\n");
|
||||
m_Xdoc.AppendChild(Node);
|
||||
|
||||
Node = m_Xdoc.CreateNode(XmlNodeType.Element, "ScpControl", null);
|
||||
Node = m_Xdoc.CreateNode(XmlNodeType.Element, "DS4Windows", null);
|
||||
|
||||
XmlNode xmlFlushHIDQueue = m_Xdoc.CreateNode(XmlNodeType.Element, "flushHIDQueue", null); xmlFlushHIDQueue.InnerText = flushHIDQueue[device].ToString(); Node.AppendChild(xmlFlushHIDQueue);
|
||||
XmlNode xmlIdleDisconnectTimeout = m_Xdoc.CreateNode(XmlNodeType.Element, "idleDisconnectTimeout", null); xmlIdleDisconnectTimeout.InnerText = idleDisconnectTimeout[device].ToString(); Node.AppendChild(xmlIdleDisconnectTimeout);
|
||||
@ -1112,6 +1112,48 @@ namespace DS4Control
|
||||
case "bnGyroZP": return DS4Controls.GyroZPos;
|
||||
case "bnGyroZN": return DS4Controls.GyroZNeg;
|
||||
|
||||
|
||||
|
||||
#region OldShiftname
|
||||
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;
|
||||
#endregion
|
||||
|
||||
case "bnSwipeUp": return DS4Controls.SwipeUp;
|
||||
case "bnSwipeDown": return DS4Controls.SwipeDown;
|
||||
case "bnSwipeLeft": return DS4Controls.SwipeLeft;
|
||||
@ -1150,7 +1192,7 @@ namespace DS4Control
|
||||
case "bnShiftTouchMulti": return DS4Controls.TouchMulti;
|
||||
case "bnShiftTouchUpper": return DS4Controls.TouchUpper;
|
||||
case "bnShiftTouchRight": return DS4Controls.TouchRight;
|
||||
case "bnShiftGsyroXP": return DS4Controls.GyroXPos;
|
||||
case "bnShiftGyroXP": return DS4Controls.GyroXPos;
|
||||
case "bnShiftGyroXN": return DS4Controls.GyroXNeg;
|
||||
case "bnShiftGyroZP": return DS4Controls.GyroZPos;
|
||||
case "bnShiftGyroZN": return DS4Controls.GyroZNeg;
|
||||
@ -1224,6 +1266,7 @@ namespace DS4Control
|
||||
Dictionary<DS4Controls, UInt16> shiftCustomMapKeys = new Dictionary<DS4Controls, UInt16>();
|
||||
Dictionary<DS4Controls, X360Controls> shiftCustomMapButtons = new Dictionary<DS4Controls, X360Controls>();
|
||||
Dictionary<DS4Controls, String> shiftCustomMapMacros = new Dictionary<DS4Controls, String>();
|
||||
string rootname = "DS4Windows";
|
||||
Boolean missingSetting = false;
|
||||
string profilepath;
|
||||
if (propath == "")
|
||||
@ -1235,16 +1278,20 @@ namespace DS4Control
|
||||
XmlNode Item;
|
||||
|
||||
m_Xdoc.Load(profilepath);
|
||||
if (m_Xdoc.SelectSingleNode(rootname) == null)
|
||||
{
|
||||
rootname = "ScpControl";
|
||||
missingSetting = true;
|
||||
}
|
||||
try { Item = m_Xdoc.SelectSingleNode("/"+ rootname + "/flushHIDQueue"); Boolean.TryParse(Item.InnerText, out flushHIDQueue[device]); }
|
||||
catch { missingSetting = true; }//rootname = }
|
||||
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/flushHIDQueue"); Boolean.TryParse(Item.InnerText, out flushHIDQueue[device]); }
|
||||
catch { missingSetting = true; }
|
||||
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/idleDisconnectTimeout"); Int32.TryParse(Item.InnerText, out idleDisconnectTimeout[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/idleDisconnectTimeout"); Int32.TryParse(Item.InnerText, out idleDisconnectTimeout[device]); }
|
||||
catch { missingSetting = true; }
|
||||
//New method for saving color
|
||||
try
|
||||
{
|
||||
Item = m_Xdoc.SelectSingleNode("/ScpControl/Color");
|
||||
Item = m_Xdoc.SelectSingleNode("/" + rootname + "/Color");
|
||||
string[] colors;
|
||||
if (!string.IsNullOrEmpty(Item.InnerText))
|
||||
colors = Item.InnerText.Split(',');
|
||||
@ -1254,35 +1301,35 @@ namespace DS4Control
|
||||
m_Leds[device][i] = byte.Parse(colors[i]);
|
||||
}
|
||||
catch { missingSetting = true; }
|
||||
if (m_Xdoc.SelectSingleNode("/ScpControl/Color") == null)
|
||||
if (m_Xdoc.SelectSingleNode("/" + rootname + "/Color") == null)
|
||||
{
|
||||
//Old method of color saving
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/Red"); Byte.TryParse(Item.InnerText, out m_Leds[device][0]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/Red"); Byte.TryParse(Item.InnerText, out m_Leds[device][0]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/Green"); Byte.TryParse(Item.InnerText, out m_Leds[device][1]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/Green"); Byte.TryParse(Item.InnerText, out m_Leds[device][1]); }
|
||||
catch { missingSetting = true; }
|
||||
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/Blue"); Byte.TryParse(Item.InnerText, out m_Leds[device][2]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/Blue"); Byte.TryParse(Item.InnerText, out m_Leds[device][2]); }
|
||||
catch { missingSetting = true; }
|
||||
}
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/RumbleBoost"); Byte.TryParse(Item.InnerText, out m_Rumble[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/RumbleBoost"); Byte.TryParse(Item.InnerText, out m_Rumble[device]); }
|
||||
catch { missingSetting = true; }
|
||||
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/ledAsBatteryIndicator"); Boolean.TryParse(Item.InnerText, out ledAsBattery[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/ledAsBatteryIndicator"); Boolean.TryParse(Item.InnerText, out ledAsBattery[device]); }
|
||||
catch { missingSetting = true; }
|
||||
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/lowBatteryFlash"); Boolean.TryParse(Item.InnerText, out flashLedLowBattery[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/lowBatteryFlash"); Boolean.TryParse(Item.InnerText, out flashLedLowBattery[device]); }
|
||||
catch { missingSetting = true; }
|
||||
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/flashBatteryAt"); Int32.TryParse(Item.InnerText, out flashAt[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/flashBatteryAt"); Int32.TryParse(Item.InnerText, out flashAt[device]); }
|
||||
catch { missingSetting = true; }
|
||||
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/touchSensitivity"); Byte.TryParse(Item.InnerText, out touchSensitivity[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/touchSensitivity"); Byte.TryParse(Item.InnerText, out touchSensitivity[device]); }
|
||||
catch { missingSetting = true; }
|
||||
//New method for saving color
|
||||
try
|
||||
{
|
||||
Item = m_Xdoc.SelectSingleNode("/ScpControl/LowColor");
|
||||
Item = m_Xdoc.SelectSingleNode("/" + rootname + "/LowColor");
|
||||
string[] colors;
|
||||
if (!string.IsNullOrEmpty(Item.InnerText))
|
||||
colors = Item.InnerText.Split(',');
|
||||
@ -1292,20 +1339,20 @@ namespace DS4Control
|
||||
m_LowLeds[device][i] = byte.Parse(colors[i]);
|
||||
}
|
||||
catch { missingSetting = true; }
|
||||
if (m_Xdoc.SelectSingleNode("/ScpControl/LowColor") == null)
|
||||
if (m_Xdoc.SelectSingleNode("/" + rootname + "/LowColor") == null)
|
||||
{
|
||||
//Old method of color saving
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/LowRed"); Byte.TryParse(Item.InnerText, out m_LowLeds[device][0]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/LowRed"); Byte.TryParse(Item.InnerText, out m_LowLeds[device][0]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/LowGreen"); Byte.TryParse(Item.InnerText, out m_LowLeds[device][1]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/LowGreen"); Byte.TryParse(Item.InnerText, out m_LowLeds[device][1]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/LowBlue"); Byte.TryParse(Item.InnerText, out m_LowLeds[device][2]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/LowBlue"); Byte.TryParse(Item.InnerText, out m_LowLeds[device][2]); }
|
||||
catch { missingSetting = true; }
|
||||
}
|
||||
//New method for saving color
|
||||
try
|
||||
{
|
||||
Item = m_Xdoc.SelectSingleNode("/ScpControl/ChargingColor");
|
||||
Item = m_Xdoc.SelectSingleNode("/" + rootname + "/ChargingColor");
|
||||
string[] colors;
|
||||
if (!string.IsNullOrEmpty(Item.InnerText))
|
||||
colors = Item.InnerText.Split(',');
|
||||
@ -1315,18 +1362,18 @@ namespace DS4Control
|
||||
m_ChargingLeds[device][i] = byte.Parse(colors[i]);
|
||||
}
|
||||
catch { missingSetting = true; }
|
||||
if (m_Xdoc.SelectSingleNode("/ScpControl/ChargingColor") == null)
|
||||
if (m_Xdoc.SelectSingleNode("/" + rootname + "/ChargingColor") == null)
|
||||
{
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/ChargingRed"); Byte.TryParse(Item.InnerText, out m_ChargingLeds[device][0]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/ChargingRed"); Byte.TryParse(Item.InnerText, out m_ChargingLeds[device][0]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/ChargingGreen"); Byte.TryParse(Item.InnerText, out m_ChargingLeds[device][1]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/ChargingGreen"); Byte.TryParse(Item.InnerText, out m_ChargingLeds[device][1]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/ChargingBlue"); Byte.TryParse(Item.InnerText, out m_ChargingLeds[device][2]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/ChargingBlue"); Byte.TryParse(Item.InnerText, out m_ChargingLeds[device][2]); }
|
||||
catch { missingSetting = true; }
|
||||
}
|
||||
try
|
||||
{
|
||||
Item = m_Xdoc.SelectSingleNode("/ScpControl/ShiftColor");
|
||||
Item = m_Xdoc.SelectSingleNode("/" + rootname + "/ShiftColor");
|
||||
string[] colors;
|
||||
if (!string.IsNullOrEmpty(Item.InnerText))
|
||||
colors = Item.InnerText.Split(',');
|
||||
@ -1336,11 +1383,11 @@ namespace DS4Control
|
||||
m_ShiftLeds[device][i] = byte.Parse(colors[i]);
|
||||
}
|
||||
catch { m_ShiftLeds[device] = m_Leds[device]; missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/ShiftColorOn"); Boolean.TryParse(Item.InnerText, out shiftColorOn[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/ShiftColorOn"); Boolean.TryParse(Item.InnerText, out shiftColorOn[device]); }
|
||||
catch { shiftColorOn[device] = false; missingSetting = true; }
|
||||
try
|
||||
{
|
||||
Item = m_Xdoc.SelectSingleNode("/ScpControl/FlashColor");
|
||||
Item = m_Xdoc.SelectSingleNode("/" + rootname + "/FlashColor");
|
||||
string[] colors;
|
||||
if (!string.IsNullOrEmpty(Item.InnerText))
|
||||
colors = Item.InnerText.Split(',');
|
||||
@ -1350,48 +1397,48 @@ namespace DS4Control
|
||||
m_FlashLeds[device][i] = byte.Parse(colors[i]);
|
||||
}
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/touchpadJitterCompensation"); Boolean.TryParse(Item.InnerText, out touchpadJitterCompensation[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/touchpadJitterCompensation"); Boolean.TryParse(Item.InnerText, out touchpadJitterCompensation[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/lowerRCOn"); Boolean.TryParse(Item.InnerText, out lowerRCOn[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/lowerRCOn"); Boolean.TryParse(Item.InnerText, out lowerRCOn[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/tapSensitivity"); Byte.TryParse(Item.InnerText, out tapSensitivity[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/tapSensitivity"); Byte.TryParse(Item.InnerText, out tapSensitivity[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/doubleTap"); Boolean.TryParse(Item.InnerText, out doubleTap[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/doubleTap"); Boolean.TryParse(Item.InnerText, out doubleTap[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/scrollSensitivity"); Int32.TryParse(Item.InnerText, out scrollSensitivity[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/scrollSensitivity"); Int32.TryParse(Item.InnerText, out scrollSensitivity[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/LeftTriggerMiddle"); Byte.TryParse(Item.InnerText, out m_LeftTriggerMiddle[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/LeftTriggerMiddle"); Byte.TryParse(Item.InnerText, out m_LeftTriggerMiddle[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/RightTriggerMiddle"); Byte.TryParse(Item.InnerText, out m_RightTriggerMiddle[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/RightTriggerMiddle"); Byte.TryParse(Item.InnerText, out m_RightTriggerMiddle[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/ButtonMouseSensitivity"); Int32.TryParse(Item.InnerText, out buttonMouseSensitivity[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/ButtonMouseSensitivity"); Int32.TryParse(Item.InnerText, out buttonMouseSensitivity[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/Rainbow"); Double.TryParse(Item.InnerText, out rainbow[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/Rainbow"); Double.TryParse(Item.InnerText, out rainbow[device]); }
|
||||
catch { rainbow[device] = 0; missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/LSDeadZone"); Byte.TryParse(Item.InnerText, out LSDeadzone[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/LSDeadZone"); Byte.TryParse(Item.InnerText, out LSDeadzone[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/RSDeadZone"); Byte.TryParse(Item.InnerText, out RSDeadzone[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/RSDeadZone"); Byte.TryParse(Item.InnerText, out RSDeadzone[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/SXDeadZone"); Double.TryParse(Item.InnerText, out SXDeadzone[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/SXDeadZone"); Double.TryParse(Item.InnerText, out SXDeadzone[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/SZDeadZone"); Double.TryParse(Item.InnerText, out SZDeadzone[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/SZDeadZone"); Double.TryParse(Item.InnerText, out SZDeadzone[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/ChargingType"); Int32.TryParse(Item.InnerText, out chargingType[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/ChargingType"); Int32.TryParse(Item.InnerText, out chargingType[device]); }
|
||||
catch { missingSetting = true; }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/ScpControl/MouseAcceleration"); Boolean.TryParse(Item.InnerText, out mouseAccel[device]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/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]); }
|
||||
try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/ShiftModifier"); Int32.TryParse(Item.InnerText, out shiftModifier[device]); }
|
||||
catch { shiftModifier[device] = 0; missingSetting = true; }
|
||||
try
|
||||
{
|
||||
Item = m_Xdoc.SelectSingleNode("/ScpControl/LaunchProgram");
|
||||
Item = m_Xdoc.SelectSingleNode("/" + rootname + "/LaunchProgram");
|
||||
launchProgram[device] = Item.InnerText;
|
||||
if (launchprogram == true && launchProgram[device] != string.Empty) System.Diagnostics.Process.Start(launchProgram[device]);
|
||||
}
|
||||
catch { launchProgram[device] = string.Empty; missingSetting = true; }
|
||||
try
|
||||
{
|
||||
Item = m_Xdoc.SelectSingleNode("/ScpControl/DinputOnly");
|
||||
Item = m_Xdoc.SelectSingleNode("/" + rootname + "/DinputOnly");
|
||||
Boolean.TryParse(Item.InnerText, out dinputOnly[device]);
|
||||
if (device < 4)
|
||||
{
|
||||
@ -1402,32 +1449,32 @@ namespace DS4Control
|
||||
catch { missingSetting = true; }
|
||||
try
|
||||
{
|
||||
Item = m_Xdoc.SelectSingleNode("/ScpControl/StartTouchpadOff");
|
||||
Item = m_Xdoc.SelectSingleNode("/" + rootname + "/StartTouchpadOff");
|
||||
Boolean.TryParse(Item.InnerText, out startTouchpadOff[device]);
|
||||
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]); }
|
||||
{ Item = m_Xdoc.SelectSingleNode("/" + rootname + "/UseTPforControls"); Boolean.TryParse(Item.InnerText, out useTPforControls[device]); }
|
||||
catch { useTPforControls[device] = false; missingSetting = true; }
|
||||
DS4KeyType keyType;
|
||||
UInt16 wvk;
|
||||
if (buttons == null)
|
||||
{
|
||||
XmlNode ParentItem = m_Xdoc.SelectSingleNode("/ScpControl/Control/Button");
|
||||
XmlNode ParentItem = m_Xdoc.SelectSingleNode("/" + rootname + "/Control/Button");
|
||||
if (ParentItem != null)
|
||||
foreach (XmlNode item in ParentItem.ChildNodes)
|
||||
customMapButtons.Add(getDS4ControlsByName(item.Name), getX360ControlsByName(item.InnerText));
|
||||
ParentItem = m_Xdoc.SelectSingleNode("/ScpControl/Control/Macro");
|
||||
ParentItem = m_Xdoc.SelectSingleNode("/" + rootname + "/Control/Macro");
|
||||
if (ParentItem != null)
|
||||
foreach (XmlNode item in ParentItem.ChildNodes)
|
||||
customMapMacros.Add(getDS4ControlsByName(item.Name), item.InnerText);
|
||||
ParentItem = m_Xdoc.SelectSingleNode("/ScpControl/Control/Key");
|
||||
ParentItem = m_Xdoc.SelectSingleNode("/" + rootname + "/Control/Key");
|
||||
if (ParentItem != null)
|
||||
foreach (XmlNode item in ParentItem.ChildNodes)
|
||||
if (UInt16.TryParse(item.InnerText, out wvk))
|
||||
customMapKeys.Add(getDS4ControlsByName(item.Name), wvk);
|
||||
ParentItem = m_Xdoc.SelectSingleNode("/ScpControl/Control/KeyType");
|
||||
ParentItem = m_Xdoc.SelectSingleNode("/" + rootname + "/Control/KeyType");
|
||||
if (ParentItem != null)
|
||||
foreach (XmlNode item in ParentItem.ChildNodes)
|
||||
if (item != null)
|
||||
@ -1448,20 +1495,20 @@ namespace DS4Control
|
||||
}
|
||||
if (shiftModifier[device] > 0)
|
||||
{
|
||||
ParentItem = m_Xdoc.SelectSingleNode("/ScpControl/ShiftControl/Button");
|
||||
ParentItem = m_Xdoc.SelectSingleNode("/" + rootname + "/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");
|
||||
ParentItem = m_Xdoc.SelectSingleNode("/" + rootname + "/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");
|
||||
ParentItem = m_Xdoc.SelectSingleNode("/" + rootname + "/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");
|
||||
ParentItem = m_Xdoc.SelectSingleNode("/" + rootname + "/ShiftControl/KeyType");
|
||||
if (ParentItem != null)
|
||||
foreach (XmlNode item in ParentItem.ChildNodes)
|
||||
if (item != null)
|
||||
@ -1514,11 +1561,16 @@ namespace DS4Control
|
||||
XmlNode Item;
|
||||
DS4KeyType keyType;
|
||||
UInt16 wvk;
|
||||
string rootname = "DS4Windows";
|
||||
foreach (var button in buttons)
|
||||
try
|
||||
{
|
||||
if (m_Xdoc.SelectSingleNode(rootname) == null)
|
||||
{
|
||||
rootname = "ScpControl";
|
||||
}
|
||||
//bool foundBinding = false;
|
||||
Item = m_Xdoc.SelectSingleNode(String.Format("/ScpControl/" + control + "/KeyType/{0}", button.Name));
|
||||
Item = m_Xdoc.SelectSingleNode(String.Format("/" + rootname + "/" + control + "/KeyType/{0}", button.Name));
|
||||
if (Item != null)
|
||||
{
|
||||
//foundBinding = true;
|
||||
@ -1549,7 +1601,7 @@ namespace DS4Control
|
||||
customMapKeyTypes.Add(getDS4ControlsByName(Item.Name), keyType);
|
||||
}
|
||||
|
||||
Item = m_Xdoc.SelectSingleNode(String.Format("/ScpControl/" + control + "/Macro/{0}", button.Name));
|
||||
Item = m_Xdoc.SelectSingleNode(String.Format("/" + rootname + "/" + control + "/Macro/{0}", button.Name));
|
||||
if (Item != null)
|
||||
{
|
||||
string[] splitter = Item.InnerText.Split('/');
|
||||
@ -1569,9 +1621,9 @@ namespace DS4Control
|
||||
button.Tag = keys;
|
||||
customMapMacros.Add(getDS4ControlsByName(button.Name), Item.InnerText);
|
||||
}
|
||||
else if (m_Xdoc.SelectSingleNode(String.Format("/ScpControl/" + control + "/Key/{0}", button.Name)) != null)
|
||||
else if (m_Xdoc.SelectSingleNode(String.Format("/" + rootname + "/" + control + "/Key/{0}", button.Name)) != null)
|
||||
{
|
||||
Item = m_Xdoc.SelectSingleNode(String.Format("/ScpControl/" + control + "/Key/{0}", button.Name));
|
||||
Item = m_Xdoc.SelectSingleNode(String.Format("/" + rootname + "/" + control + "/Key/{0}", button.Name));
|
||||
if (UInt16.TryParse(Item.InnerText, out wvk))
|
||||
{
|
||||
//foundBinding = true;
|
||||
@ -1582,7 +1634,7 @@ namespace DS4Control
|
||||
}
|
||||
else
|
||||
{
|
||||
Item = m_Xdoc.SelectSingleNode(String.Format("/ScpControl/" + control + "/Button/{0}", button.Name));
|
||||
Item = m_Xdoc.SelectSingleNode(String.Format("/" + rootname + "/" + control + "/Button/{0}", button.Name));
|
||||
if (Item != null)
|
||||
{
|
||||
//foundBinding = true;
|
||||
|
@ -471,6 +471,10 @@ namespace DS4Library
|
||||
}
|
||||
}
|
||||
|
||||
public void FlushHID()
|
||||
{
|
||||
hDevice.flush_Queue();
|
||||
}
|
||||
private void sendOutputReport(bool synchronous)
|
||||
{
|
||||
setTestRumble();
|
||||
|
@ -1,7 +1,7 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2013
|
||||
VisualStudioVersion = 12.0.30501.0
|
||||
VisualStudioVersion = 12.0.31101.0
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DS4Library", "DS4Library\DS4Library.csproj", "{43E14DAD-E6E8-4B66-AC50-20F5CF9B9712}"
|
||||
EndProject
|
||||
@ -9,7 +9,7 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HidLibrary", "HidLibrary\Hi
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DS4Control", "DS4Control\DS4Control.csproj", "{B0AD793E-BAEB-435F-BB40-D647DE2BC2BF}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DS4Tool", "DS4Tool\DS4Tool.csproj", "{B1081607-B630-4F57-9580-8A4897145890}"
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DS4Windows", "DS4Tool\DS4Windows.csproj", "{B1081607-B630-4F57-9580-8A4897145890}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DS4Service", "DS4Service\DS4Service.csproj", "{04CCD3D1-2ABC-4B5F-90D9-641D8DEC7127}"
|
||||
EndProject
|
||||
|
@ -4,7 +4,7 @@ using System.Drawing;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
[System.ComponentModel.DesignerCategory("")]
|
||||
public class AdvancedColorDialog : ColorDialog
|
||||
|
2
DS4Tool/Alreadyrunning.Designer.cs
generated
2
DS4Tool/Alreadyrunning.Designer.cs
generated
@ -1,4 +1,4 @@
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
partial class Alreadyrunning
|
||||
{
|
||||
|
@ -9,7 +9,7 @@ using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
public partial class Alreadyrunning : Form
|
||||
{
|
||||
|
22
DS4Tool/DS4Form.Designer.cs
generated
22
DS4Tool/DS4Form.Designer.cs
generated
@ -1,4 +1,4 @@
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
partial class DS4Form
|
||||
{
|
||||
@ -352,7 +352,7 @@
|
||||
// pBStatus1
|
||||
//
|
||||
resources.ApplyResources(this.pBStatus1, "pBStatus1");
|
||||
this.pBStatus1.InitialImage = global::ScpServer.Properties.Resources.BT;
|
||||
this.pBStatus1.InitialImage = global::DS4Windows.Properties.Resources.BT;
|
||||
this.pBStatus1.Name = "pBStatus1";
|
||||
this.pBStatus1.TabStop = false;
|
||||
this.pBStatus1.Tag = "0";
|
||||
@ -489,7 +489,7 @@
|
||||
// pBStatus2
|
||||
//
|
||||
resources.ApplyResources(this.pBStatus2, "pBStatus2");
|
||||
this.pBStatus2.InitialImage = global::ScpServer.Properties.Resources.BT;
|
||||
this.pBStatus2.InitialImage = global::DS4Windows.Properties.Resources.BT;
|
||||
this.pBStatus2.Name = "pBStatus2";
|
||||
this.pBStatus2.TabStop = false;
|
||||
this.pBStatus2.Tag = "1";
|
||||
@ -498,7 +498,7 @@
|
||||
// pBStatus3
|
||||
//
|
||||
resources.ApplyResources(this.pBStatus3, "pBStatus3");
|
||||
this.pBStatus3.InitialImage = global::ScpServer.Properties.Resources.BT;
|
||||
this.pBStatus3.InitialImage = global::DS4Windows.Properties.Resources.BT;
|
||||
this.pBStatus3.Name = "pBStatus3";
|
||||
this.pBStatus3.TabStop = false;
|
||||
this.pBStatus3.Tag = "2";
|
||||
@ -507,7 +507,7 @@
|
||||
// pBStatus4
|
||||
//
|
||||
resources.ApplyResources(this.pBStatus4, "pBStatus4");
|
||||
this.pBStatus4.InitialImage = global::ScpServer.Properties.Resources.BT;
|
||||
this.pBStatus4.InitialImage = global::DS4Windows.Properties.Resources.BT;
|
||||
this.pBStatus4.Name = "pBStatus4";
|
||||
this.pBStatus4.TabStop = false;
|
||||
this.pBStatus4.Tag = "3";
|
||||
@ -642,7 +642,7 @@
|
||||
// tSBSaveProfile
|
||||
//
|
||||
this.tSBSaveProfile.AutoToolTip = false;
|
||||
this.tSBSaveProfile.Image = global::ScpServer.Properties.Resources.saveprofile;
|
||||
this.tSBSaveProfile.Image = global::DS4Windows.Properties.Resources.saveprofile;
|
||||
resources.ApplyResources(this.tSBSaveProfile, "tSBSaveProfile");
|
||||
this.tSBSaveProfile.Name = "tSBSaveProfile";
|
||||
this.tSBSaveProfile.Click += new System.EventHandler(this.tSBSaveProfile_Click);
|
||||
@ -650,7 +650,7 @@
|
||||
// tSBCancel
|
||||
//
|
||||
this.tSBCancel.AutoToolTip = false;
|
||||
this.tSBCancel.Image = global::ScpServer.Properties.Resources.delete;
|
||||
this.tSBCancel.Image = global::DS4Windows.Properties.Resources.delete;
|
||||
resources.ApplyResources(this.tSBCancel, "tSBCancel");
|
||||
this.tSBCancel.Name = "tSBCancel";
|
||||
this.tSBCancel.Click += new System.EventHandler(this.tSBCancel_Click);
|
||||
@ -662,7 +662,7 @@
|
||||
//
|
||||
// tSBKeepSize
|
||||
//
|
||||
this.tSBKeepSize.Image = global::ScpServer.Properties.Resources.size;
|
||||
this.tSBKeepSize.Image = global::DS4Windows.Properties.Resources.size;
|
||||
resources.ApplyResources(this.tSBKeepSize, "tSBKeepSize");
|
||||
this.tSBKeepSize.Name = "tSBKeepSize";
|
||||
this.tSBKeepSize.Click += new System.EventHandler(this.tSBKeepSize_Click);
|
||||
@ -682,14 +682,14 @@
|
||||
//
|
||||
// tsBNewProfle
|
||||
//
|
||||
this.tsBNewProfle.Image = global::ScpServer.Properties.Resources.newprofile;
|
||||
this.tsBNewProfle.Image = global::DS4Windows.Properties.Resources.newprofile;
|
||||
resources.ApplyResources(this.tsBNewProfle, "tsBNewProfle");
|
||||
this.tsBNewProfle.Name = "tsBNewProfle";
|
||||
this.tsBNewProfle.Click += new System.EventHandler(this.tsBNewProfile_Click);
|
||||
//
|
||||
// tsBEditProfile
|
||||
//
|
||||
this.tsBEditProfile.Image = global::ScpServer.Properties.Resources.edit;
|
||||
this.tsBEditProfile.Image = global::DS4Windows.Properties.Resources.edit;
|
||||
resources.ApplyResources(this.tsBEditProfile, "tsBEditProfile");
|
||||
this.tsBEditProfile.Name = "tsBEditProfile";
|
||||
this.tsBEditProfile.Click += new System.EventHandler(this.tsBNEditProfile_Click);
|
||||
@ -708,7 +708,7 @@
|
||||
//
|
||||
// tSBImportProfile
|
||||
//
|
||||
this.tSBImportProfile.Image = global::ScpServer.Properties.Resources.import;
|
||||
this.tSBImportProfile.Image = global::DS4Windows.Properties.Resources.import;
|
||||
resources.ApplyResources(this.tSBImportProfile, "tSBImportProfile");
|
||||
this.tSBImportProfile.Name = "tSBImportProfile";
|
||||
this.tSBImportProfile.Click += new System.EventHandler(this.tSBImportProfile_Click);
|
||||
|
@ -14,7 +14,7 @@ using System.Diagnostics;
|
||||
using System.Xml;
|
||||
using System.Text;
|
||||
using System.Globalization;
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
public partial class DS4Form : Form
|
||||
{
|
||||
@ -28,7 +28,7 @@ namespace ScpServer
|
||||
protected PictureBox[] statPB;
|
||||
protected ToolStripMenuItem[] shortcuts;
|
||||
WebClient wc = new WebClient();
|
||||
Timer test = new Timer(), hotkeystimer = new Timer();
|
||||
Timer test = new Timer(), hotkeysTimer = new Timer();
|
||||
string exepath = Directory.GetParent(Assembly.GetExecutingAssembly().Location).FullName;
|
||||
string appdatapath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\DS4Tool";
|
||||
float dpix, dpiy;
|
||||
@ -233,8 +233,8 @@ namespace ScpServer
|
||||
File.Delete(exepath + "\\Updater.exe");
|
||||
}
|
||||
//test.Start();
|
||||
hotkeystimer.Start();
|
||||
hotkeystimer.Tick += Hotkeys;
|
||||
hotkeysTimer.Start();
|
||||
hotkeysTimer.Tick += Hotkeys;
|
||||
test.Tick += test_Tick;
|
||||
if (!System.IO.Directory.Exists(Global.appdatapath + "\\Virtual Bus Driver"))
|
||||
linkUninstall.Visible = false;
|
||||
@ -330,13 +330,6 @@ namespace ScpServer
|
||||
Global.LoadProfile(j, false, rootHub);
|
||||
}
|
||||
}
|
||||
if (Process.GetProcessesByName("DS4Tool").Length + Process.GetProcessesByName("DS4Windows").Length > 1)
|
||||
{//The second process closes and this one comes in focus
|
||||
Show();
|
||||
WindowState = FormWindowState.Normal;
|
||||
ShowInTaskbar = true;
|
||||
Focus();
|
||||
}
|
||||
GC.Collect();
|
||||
}
|
||||
|
||||
@ -582,14 +575,14 @@ namespace ScpServer
|
||||
if (btnStartStop.Text == Properties.Resources.StartText)
|
||||
{
|
||||
rootHub.Start(log);
|
||||
hotkeystimer.Start();
|
||||
hotkeysTimer.Start();
|
||||
btnStartStop.Text = Properties.Resources.StopText;
|
||||
}
|
||||
|
||||
else if (btnStartStop.Text == Properties.Resources.StopText)
|
||||
{
|
||||
rootHub.Stop(log);
|
||||
hotkeystimer.Stop();
|
||||
hotkeysTimer.Stop();
|
||||
btnStartStop.Text = Properties.Resources.StartText;
|
||||
}
|
||||
startToolStripMenuItem.Text = btnStartStop.Text;
|
||||
|
@ -7,7 +7,7 @@
|
||||
<ProjectGuid>{B1081607-B630-4F57-9580-8A4897145890}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>ScpServer</RootNamespace>
|
||||
<RootNamespace>DS4Windows</RootNamespace>
|
||||
<AssemblyName>DS4Windows</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
@ -59,7 +59,7 @@
|
||||
</PropertyGroup>
|
||||
<PropertyGroup />
|
||||
<PropertyGroup>
|
||||
<StartupObject>ScpServer.Program</StartupObject>
|
||||
<StartupObject>DS4Windows.Program</StartupObject>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ManifestCertificateThumbprint>5F2A5A97E42A73158D79996F7F3BE738271F5047</ManifestCertificateThumbprint>
|
||||
@ -81,6 +81,9 @@
|
||||
<PropertyGroup />
|
||||
<PropertyGroup />
|
||||
<PropertyGroup />
|
||||
<PropertyGroup>
|
||||
<NoWin32Manifest>true</NoWin32Manifest>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
2
DS4Tool/Hotkeys.Designer.cs
generated
2
DS4Tool/Hotkeys.Designer.cs
generated
@ -1,4 +1,4 @@
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
partial class Hotkeys
|
||||
{
|
||||
|
@ -12,7 +12,7 @@ using System.IO;
|
||||
using System.Reflection;
|
||||
using System.Diagnostics;
|
||||
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
public partial class Hotkeys : Form
|
||||
{
|
||||
|
52
DS4Tool/KBM360.Designer.cs
generated
52
DS4Tool/KBM360.Designer.cs
generated
@ -1,4 +1,4 @@
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
partial class KBM360
|
||||
{
|
||||
@ -1173,7 +1173,7 @@
|
||||
// pictureBox2
|
||||
//
|
||||
resources.ApplyResources(this.pictureBox2, "pictureBox2");
|
||||
this.pictureBox2.Image = global::ScpServer.Properties.Resources.mouse;
|
||||
this.pictureBox2.Image = global::DS4Windows.Properties.Resources.mouse;
|
||||
this.pictureBox2.Name = "pictureBox2";
|
||||
this.pictureBox2.TabStop = false;
|
||||
//
|
||||
@ -1196,7 +1196,7 @@
|
||||
// button13
|
||||
//
|
||||
resources.ApplyResources(this.button13, "button13");
|
||||
this.button13.Image = global::ScpServer.Properties.Resources.LT;
|
||||
this.button13.Image = global::DS4Windows.Properties.Resources.LT;
|
||||
this.button13.Name = "button13";
|
||||
this.button13.TabStop = false;
|
||||
this.button13.Tag = "X360Left Trigger";
|
||||
@ -1205,7 +1205,7 @@
|
||||
// button2
|
||||
//
|
||||
resources.ApplyResources(this.button2, "button2");
|
||||
this.button2.Image = global::ScpServer.Properties.Resources.RT;
|
||||
this.button2.Image = global::DS4Windows.Properties.Resources.RT;
|
||||
this.button2.Name = "button2";
|
||||
this.button2.TabStop = false;
|
||||
this.button2.Tag = "X360Right Trigger";
|
||||
@ -1214,7 +1214,7 @@
|
||||
// btnRSL
|
||||
//
|
||||
resources.ApplyResources(this.btnRSL, "btnRSL");
|
||||
this.btnRSL.Image = global::ScpServer.Properties.Resources.RSL;
|
||||
this.btnRSL.Image = global::DS4Windows.Properties.Resources.RSL;
|
||||
this.btnRSL.Name = "btnRSL";
|
||||
this.btnRSL.TabStop = false;
|
||||
this.btnRSL.Tag = "X360Right X-Axis-";
|
||||
@ -1223,7 +1223,7 @@
|
||||
// btnLSL
|
||||
//
|
||||
resources.ApplyResources(this.btnLSL, "btnLSL");
|
||||
this.btnLSL.Image = global::ScpServer.Properties.Resources.LSL;
|
||||
this.btnLSL.Image = global::DS4Windows.Properties.Resources.LSL;
|
||||
this.btnLSL.Name = "btnLSL";
|
||||
this.btnLSL.TabStop = false;
|
||||
this.btnLSL.Tag = "X360Left X-Axis-";
|
||||
@ -1232,7 +1232,7 @@
|
||||
// btnRSD
|
||||
//
|
||||
resources.ApplyResources(this.btnRSD, "btnRSD");
|
||||
this.btnRSD.Image = global::ScpServer.Properties.Resources.RSD;
|
||||
this.btnRSD.Image = global::DS4Windows.Properties.Resources.RSD;
|
||||
this.btnRSD.Name = "btnRSD";
|
||||
this.btnRSD.TabStop = false;
|
||||
this.btnRSD.Tag = "X360Right Y-Axis+";
|
||||
@ -1241,7 +1241,7 @@
|
||||
// btnLSD
|
||||
//
|
||||
resources.ApplyResources(this.btnLSD, "btnLSD");
|
||||
this.btnLSD.Image = global::ScpServer.Properties.Resources.LSD;
|
||||
this.btnLSD.Image = global::DS4Windows.Properties.Resources.LSD;
|
||||
this.btnLSD.Name = "btnLSD";
|
||||
this.btnLSD.TabStop = false;
|
||||
this.btnLSD.Tag = "X360Left Y-Axis+";
|
||||
@ -1250,7 +1250,7 @@
|
||||
// button19
|
||||
//
|
||||
resources.ApplyResources(this.button19, "button19");
|
||||
this.button19.Image = global::ScpServer.Properties.Resources.LEFT;
|
||||
this.button19.Image = global::DS4Windows.Properties.Resources.LEFT;
|
||||
this.button19.Name = "button19";
|
||||
this.button19.TabStop = false;
|
||||
this.button19.Tag = "X360Left Button";
|
||||
@ -1259,7 +1259,7 @@
|
||||
// button20
|
||||
//
|
||||
resources.ApplyResources(this.button20, "button20");
|
||||
this.button20.Image = global::ScpServer.Properties.Resources.DOWN;
|
||||
this.button20.Image = global::DS4Windows.Properties.Resources.DOWN;
|
||||
this.button20.Name = "button20";
|
||||
this.button20.TabStop = false;
|
||||
this.button20.Tag = "X360Down Button";
|
||||
@ -1268,7 +1268,7 @@
|
||||
// button18
|
||||
//
|
||||
resources.ApplyResources(this.button18, "button18");
|
||||
this.button18.Image = global::ScpServer.Properties.Resources.UP;
|
||||
this.button18.Image = global::DS4Windows.Properties.Resources.UP;
|
||||
this.button18.Name = "button18";
|
||||
this.button18.TabStop = false;
|
||||
this.button18.Tag = "X360Up Button";
|
||||
@ -1277,7 +1277,7 @@
|
||||
// button17
|
||||
//
|
||||
resources.ApplyResources(this.button17, "button17");
|
||||
this.button17.Image = global::ScpServer.Properties.Resources.RIGHT;
|
||||
this.button17.Image = global::DS4Windows.Properties.Resources.RIGHT;
|
||||
this.button17.Name = "button17";
|
||||
this.button17.TabStop = false;
|
||||
this.button17.Tag = "X360Right Button";
|
||||
@ -1286,7 +1286,7 @@
|
||||
// btnRSR
|
||||
//
|
||||
resources.ApplyResources(this.btnRSR, "btnRSR");
|
||||
this.btnRSR.Image = global::ScpServer.Properties.Resources.RSR;
|
||||
this.btnRSR.Image = global::DS4Windows.Properties.Resources.RSR;
|
||||
this.btnRSR.Name = "btnRSR";
|
||||
this.btnRSR.TabStop = false;
|
||||
this.btnRSR.Tag = "X360Right X-Axis+";
|
||||
@ -1295,7 +1295,7 @@
|
||||
// btnRS
|
||||
//
|
||||
resources.ApplyResources(this.btnRS, "btnRS");
|
||||
this.btnRS.Image = global::ScpServer.Properties.Resources.RS;
|
||||
this.btnRS.Image = global::DS4Windows.Properties.Resources.RS;
|
||||
this.btnRS.Name = "btnRS";
|
||||
this.btnRS.TabStop = false;
|
||||
this.btnRS.Tag = "X360Right Stick";
|
||||
@ -1304,7 +1304,7 @@
|
||||
// btnLSR
|
||||
//
|
||||
resources.ApplyResources(this.btnLSR, "btnLSR");
|
||||
this.btnLSR.Image = global::ScpServer.Properties.Resources.LSR;
|
||||
this.btnLSR.Image = global::DS4Windows.Properties.Resources.LSR;
|
||||
this.btnLSR.Name = "btnLSR";
|
||||
this.btnLSR.TabStop = false;
|
||||
this.btnLSR.Tag = "X360Left X-Axis+";
|
||||
@ -1313,7 +1313,7 @@
|
||||
// btnRSU
|
||||
//
|
||||
resources.ApplyResources(this.btnRSU, "btnRSU");
|
||||
this.btnRSU.Image = global::ScpServer.Properties.Resources.RSU;
|
||||
this.btnRSU.Image = global::DS4Windows.Properties.Resources.RSU;
|
||||
this.btnRSU.Name = "btnRSU";
|
||||
this.btnRSU.TabStop = false;
|
||||
this.btnRSU.Tag = "X360Right Y-Axis-";
|
||||
@ -1322,7 +1322,7 @@
|
||||
// btnLS
|
||||
//
|
||||
resources.ApplyResources(this.btnLS, "btnLS");
|
||||
this.btnLS.Image = global::ScpServer.Properties.Resources.LS;
|
||||
this.btnLS.Image = global::DS4Windows.Properties.Resources.LS;
|
||||
this.btnLS.Name = "btnLS";
|
||||
this.btnLS.TabStop = false;
|
||||
this.btnLS.Tag = "X360Left Stick";
|
||||
@ -1331,7 +1331,7 @@
|
||||
// btnLSU
|
||||
//
|
||||
resources.ApplyResources(this.btnLSU, "btnLSU");
|
||||
this.btnLSU.Image = global::ScpServer.Properties.Resources.LSU;
|
||||
this.btnLSU.Image = global::DS4Windows.Properties.Resources.LSU;
|
||||
this.btnLSU.Name = "btnLSU";
|
||||
this.btnLSU.TabStop = false;
|
||||
this.btnLSU.Tag = "X360Left Y-Axis-";
|
||||
@ -1340,7 +1340,7 @@
|
||||
// button11
|
||||
//
|
||||
resources.ApplyResources(this.button11, "button11");
|
||||
this.button11.Image = global::ScpServer.Properties.Resources.LB;
|
||||
this.button11.Image = global::DS4Windows.Properties.Resources.LB;
|
||||
this.button11.Name = "button11";
|
||||
this.button11.TabStop = false;
|
||||
this.button11.Tag = "X360Left Bumper";
|
||||
@ -1349,7 +1349,7 @@
|
||||
// btnRB
|
||||
//
|
||||
resources.ApplyResources(this.btnRB, "btnRB");
|
||||
this.btnRB.Image = global::ScpServer.Properties.Resources.RB;
|
||||
this.btnRB.Image = global::DS4Windows.Properties.Resources.RB;
|
||||
this.btnRB.Name = "btnRB";
|
||||
this.btnRB.TabStop = false;
|
||||
this.btnRB.Tag = "X360Right Bumper";
|
||||
@ -1358,7 +1358,7 @@
|
||||
// button10
|
||||
//
|
||||
resources.ApplyResources(this.button10, "button10");
|
||||
this.button10.Image = global::ScpServer.Properties.Resources.Y;
|
||||
this.button10.Image = global::DS4Windows.Properties.Resources.Y;
|
||||
this.button10.Name = "button10";
|
||||
this.button10.TabStop = false;
|
||||
this.button10.Tag = "X360Y Button";
|
||||
@ -1367,7 +1367,7 @@
|
||||
// button9
|
||||
//
|
||||
resources.ApplyResources(this.button9, "button9");
|
||||
this.button9.Image = global::ScpServer.Properties.Resources.X;
|
||||
this.button9.Image = global::DS4Windows.Properties.Resources.X;
|
||||
this.button9.Name = "button9";
|
||||
this.button9.TabStop = false;
|
||||
this.button9.Tag = "X360X Button";
|
||||
@ -1376,7 +1376,7 @@
|
||||
// button8
|
||||
//
|
||||
resources.ApplyResources(this.button8, "button8");
|
||||
this.button8.Image = global::ScpServer.Properties.Resources.B;
|
||||
this.button8.Image = global::DS4Windows.Properties.Resources.B;
|
||||
this.button8.Name = "button8";
|
||||
this.button8.TabStop = false;
|
||||
this.button8.Tag = "X360B Button";
|
||||
@ -1385,7 +1385,7 @@
|
||||
// button23
|
||||
//
|
||||
resources.ApplyResources(this.button23, "button23");
|
||||
this.button23.Image = global::ScpServer.Properties.Resources.BACK;
|
||||
this.button23.Image = global::DS4Windows.Properties.Resources.BACK;
|
||||
this.button23.Name = "button23";
|
||||
this.button23.TabStop = false;
|
||||
this.button23.Tag = "X360Back";
|
||||
@ -1394,7 +1394,7 @@
|
||||
// button22
|
||||
//
|
||||
resources.ApplyResources(this.button22, "button22");
|
||||
this.button22.Image = global::ScpServer.Properties.Resources.START;
|
||||
this.button22.Image = global::DS4Windows.Properties.Resources.START;
|
||||
this.button22.Name = "button22";
|
||||
this.button22.TabStop = false;
|
||||
this.button22.Tag = "X360Start";
|
||||
@ -1411,7 +1411,7 @@
|
||||
// button3
|
||||
//
|
||||
resources.ApplyResources(this.button3, "button3");
|
||||
this.button3.Image = global::ScpServer.Properties.Resources.A;
|
||||
this.button3.Image = global::DS4Windows.Properties.Resources.A;
|
||||
this.button3.Name = "button3";
|
||||
this.button3.TabStop = false;
|
||||
this.button3.Tag = "X360A Button";
|
||||
|
@ -7,7 +7,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using DS4Control;
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
public partial class KBM360 : Form
|
||||
{
|
||||
@ -49,7 +49,7 @@ namespace ScpServer
|
||||
foreach (System.Windows.Forms.Control control in this.Controls)
|
||||
if (control is Button)
|
||||
((Button)control).Click += anybtn_Click;
|
||||
if (button.Name.Contains("Touch"))
|
||||
if (button.Name.Contains("Touch") || button.Name.Contains("Swipe"))
|
||||
{
|
||||
btnMOUSEDOWN.Visible = false;
|
||||
btnMOUSELEFT.Visible = false;
|
||||
|
2
DS4Tool/MessageTextBox.Designer.cs
generated
2
DS4Tool/MessageTextBox.Designer.cs
generated
@ -1,4 +1,4 @@
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
partial class MessageTextBox
|
||||
{
|
||||
|
@ -9,7 +9,7 @@ using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using DS4Control;
|
||||
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
public partial class MessageTextBox : Form
|
||||
{
|
||||
|
46
DS4Tool/NativeMethods.cs
Normal file
46
DS4Tool/NativeMethods.cs
Normal file
@ -0,0 +1,46 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace DS4Windows
|
||||
{
|
||||
class NativeMethods
|
||||
{
|
||||
[DllImport("msi.dll", CharSet = CharSet.Auto)]
|
||||
public static extern uint MsiGetShortcutTarget(string targetFile, StringBuilder productCode, StringBuilder featureID, StringBuilder componentCode);
|
||||
|
||||
[DllImport("msi.dll", CharSet = CharSet.Auto)]
|
||||
public static extern InstallState MsiGetComponentPath(string productCode, string componentCode, StringBuilder componentPath, ref int componentPathBufferSize);
|
||||
|
||||
public const int MaxFeatureLength = 38;
|
||||
public const int MaxGuidLength = 38;
|
||||
public const int MaxPathLength = 1024;
|
||||
|
||||
public enum InstallState
|
||||
{
|
||||
NotUsed = -7,
|
||||
BadConfig = -6,
|
||||
Incomplete = -5,
|
||||
SourceAbsent = -4,
|
||||
MoreData = -3,
|
||||
InvalidArg = -2,
|
||||
Unknown = -1,
|
||||
Broken = 0,
|
||||
Advertised = 1,
|
||||
Removed = 1,
|
||||
Absent = 2,
|
||||
Local = 3,
|
||||
Source = 4,
|
||||
Default = 5
|
||||
}
|
||||
public const int HWND_BROADCAST = 0xffff;
|
||||
public static readonly int WM_SHOWME = RegisterWindowMessage("WM_SHOWME");
|
||||
[DllImport("user32")]
|
||||
public static extern bool PostMessage(IntPtr hwnd, int msg, IntPtr wparam, IntPtr lparam);
|
||||
[DllImport("user32")]
|
||||
public static extern int RegisterWindowMessage(string message);
|
||||
}
|
||||
}
|
261
DS4Tool/Options.Designer.cs
generated
261
DS4Tool/Options.Designer.cs
generated
File diff suppressed because it is too large
Load Diff
@ -6,7 +6,7 @@ using DS4Control;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Reflection;
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
public partial class Options : Form
|
||||
{
|
||||
@ -743,24 +743,43 @@ namespace ScpServer
|
||||
private void rumbleBoostBar_ValueChanged(object sender, EventArgs e)
|
||||
{
|
||||
Global.saveRumbleBoost(device, (byte)nUDRumbleBoost.Value);
|
||||
if (btnRumbleTest.Text == Properties.Resources.StopText)
|
||||
scpDevice.setRumble(255, 255, device);
|
||||
byte h = (byte)Math.Min(255, (255 * nUDRumbleBoost.Value / 100));
|
||||
byte l = (byte)Math.Min(255, (255 * nUDRumbleBoost.Value / 100));
|
||||
bool hB = btnRumbleHeavyTest.Text == Properties.Resources.TestLText;
|
||||
bool lB = btnRumbleLightTest.Text == Properties.Resources.TestLText;
|
||||
scpDevice.setRumble((byte)(hB ? h : 0), (byte)(lB ? l : 0), device);
|
||||
}
|
||||
|
||||
private void btnRumbleTest_Click(object sender, EventArgs e)
|
||||
private void btnRumbleHeavyTest_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (((Button)sender).Text == Properties.Resources.TestText)
|
||||
DS4Device d = scpDevice.DS4Controllers[(int)nUDSixaxis.Value - 1];
|
||||
if (((Button)sender).Text == Properties.Resources.TestHText)
|
||||
{
|
||||
scpDevice.setRumble((byte)Math.Min(255, (255 * nUDRumbleBoost.Value / 100)), (byte)Math.Min(255, (255 * nUDRumbleBoost.Value / 100)), (int)nUDSixaxis.Value - 1);
|
||||
((Button)sender).Text = Properties.Resources.StopText;
|
||||
scpDevice.setRumble((byte)Math.Min(255, (255 * nUDRumbleBoost.Value / 100)), d.RightLightFastRumble, (int)nUDSixaxis.Value - 1);
|
||||
((Button)sender).Text = Properties.Resources.StopHText;
|
||||
}
|
||||
else
|
||||
{
|
||||
scpDevice.setRumble(0, 0, (int)nUDSixaxis.Value - 1);
|
||||
((Button)sender).Text = Properties.Resources.TestText;
|
||||
scpDevice.setRumble(0, d.RightLightFastRumble, (int)nUDSixaxis.Value - 1);
|
||||
((Button)sender).Text = Properties.Resources.TestHText;
|
||||
}
|
||||
}
|
||||
|
||||
private void btnRumbleLightTest_Click(object sender, EventArgs e)
|
||||
{
|
||||
DS4Device d = scpDevice.DS4Controllers[(int)nUDSixaxis.Value - 1];
|
||||
if (((Button)sender).Text == Properties.Resources.TestLText)
|
||||
{
|
||||
scpDevice.setRumble(d.LeftHeavySlowRumble, (byte)Math.Min(255, (255 * nUDRumbleBoost.Value / 100)), (int)nUDSixaxis.Value - 1);
|
||||
((Button)sender).Text = Properties.Resources.StopLText;
|
||||
}
|
||||
else
|
||||
{
|
||||
scpDevice.setRumble(d.LeftHeavySlowRumble, 0, (int)nUDSixaxis.Value - 1);
|
||||
((Button)sender).Text = Properties.Resources.TestLText;
|
||||
}
|
||||
}
|
||||
|
||||
private void numUDTouch_ValueChanged(object sender, EventArgs e)
|
||||
{
|
||||
Global.setTouchSensitivity(device, (byte)nUDTouch.Value);
|
||||
@ -780,7 +799,7 @@ namespace ScpServer
|
||||
Global.setLedAsBatteryIndicator(device, cBLightbyBattery.Checked);
|
||||
pnlLowBattery.Visible = cBLightbyBattery.Checked;
|
||||
pnlFull.Location = (cBLightbyBattery.Checked ? new Point(pnlFull.Location.X, (int)(dpix * 42)) : new Point(pnlFull.Location.X, (int)(dpiy * 48)));
|
||||
lbFull.Text = (cBLightbyBattery.Checked ? Properties.Resources.Full + ":" : Properties.Resources.Color + ":");
|
||||
lbFull.Text = (cBLightbyBattery.Checked ? Properties.Resources.FullLightText + ":" : Properties.Resources.Color + ":");
|
||||
}
|
||||
|
||||
private void lowerRCOffCheckBox_CheckedChanged(object sender, EventArgs e)
|
||||
@ -823,7 +842,7 @@ namespace ScpServer
|
||||
root.btnStartStop_Clicked(false);
|
||||
root.btnStartStop_Clicked(false);
|
||||
}
|
||||
if (btnRumbleTest.Text == Properties.Resources.StopText)
|
||||
if (btnRumbleHeavyTest.Text == Properties.Resources.StopText)
|
||||
scpDevice.setRumble(0, 0, (int)nUDSixaxis.Value - 1);
|
||||
inputtimer.Stop();
|
||||
sixaxisTimer.Stop();
|
||||
@ -915,7 +934,7 @@ namespace ScpServer
|
||||
|
||||
foreach (Button b in subbuttons)
|
||||
if (b.Tag == null)
|
||||
b.Text = "Fall Back to " + buttons[subbuttons.IndexOf(b)].Text;
|
||||
b.Text = "Fall Back to " + ((Button)Controls.Find(b.Name.Remove(2,5), true)[0]).Text;
|
||||
lBShiftControls.Items[0] = "Cross : " + bnShiftCross.Text;
|
||||
lBShiftControls.Items[1] = "Circle : " + bnShiftCircle.Text;
|
||||
lBShiftControls.Items[2] = "Square : " + bnShiftSquare.Text;
|
||||
@ -978,8 +997,8 @@ namespace ScpServer
|
||||
return ((Keys)(UInt16)button.Tag).ToString();
|
||||
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 " + UpdateRegButtonList(buttons[subbuttons.IndexOf(button)]);
|
||||
else if (button.Name.StartsWith("s") && ((Button)Controls.Find(button.Name.Remove(2, 5), true)[0]).Tag != null && button.Tag == null)
|
||||
return "Fall Back to " + UpdateRegButtonList(((Button)Controls.Find(button.Name.Remove(2, 5), true)[0]));
|
||||
else
|
||||
return string.Empty;
|
||||
}
|
||||
|
@ -117,20 +117,7 @@
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="lbControlTip.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="lbControlTip.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>8, 2</value>
|
||||
</data>
|
||||
<data name="lbControlTip.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>247, 41</value>
|
||||
</data>
|
||||
<data name="lbControlTip.Text" xml:space="preserve">
|
||||
<value>Cliquer sur une touche de la manette pour changer l'action. Utiliser une DS4 pour paramétrer les touches</value>
|
||||
</data>
|
||||
<data name="cBLightbyBattery.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>319, 11</value>
|
||||
</data>
|
||||
@ -142,7 +129,7 @@
|
||||
de batterie</value>
|
||||
</data>
|
||||
<data name="cBDoubleTap.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>363, 11</value>
|
||||
<value>119, 41</value>
|
||||
</data>
|
||||
<data name="cBDoubleTap.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>68, 30</value>
|
||||
@ -152,7 +139,7 @@ de batterie</value>
|
||||
deux fois</value>
|
||||
</data>
|
||||
<data name="cBTap.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>252, 18</value>
|
||||
<value>8, 48</value>
|
||||
</data>
|
||||
<data name="cBTap.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>63, 17</value>
|
||||
@ -161,10 +148,10 @@ deux fois</value>
|
||||
<value>Tapoter</value>
|
||||
</data>
|
||||
<data name="nUDTap.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>319, 17</value>
|
||||
<value>75, 47</value>
|
||||
</data>
|
||||
<data name="cBScroll.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>112, 47</value>
|
||||
<value>121, 22</value>
|
||||
</data>
|
||||
<data name="cBScroll.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>80, 17</value>
|
||||
@ -172,6 +159,9 @@ deux fois</value>
|
||||
<data name="cBScroll.Text" xml:space="preserve">
|
||||
<value>Faire défiler</value>
|
||||
</data>
|
||||
<data name="cBSlide.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>13, 22</value>
|
||||
</data>
|
||||
<data name="cBSlide.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>57, 17</value>
|
||||
</data>
|
||||
@ -179,10 +169,10 @@ deux fois</value>
|
||||
<value>Glisser</value>
|
||||
</data>
|
||||
<data name="nUDScroll.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>198, 44</value>
|
||||
<value>207, 19</value>
|
||||
</data>
|
||||
<data name="nUDTouch.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>66, 46</value>
|
||||
<value>75, 21</value>
|
||||
</data>
|
||||
<data name="lbButtonMouseSens.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>113, 13</value>
|
||||
@ -190,6 +180,18 @@ deux fois</value>
|
||||
<data name="lbButtonMouseSens.Text" xml:space="preserve">
|
||||
<value>Sensibilité de la souris:</value>
|
||||
</data>
|
||||
<data name="lbFull.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>33, 13</value>
|
||||
</data>
|
||||
<data name="lbFull.Text" xml:space="preserve">
|
||||
<value>Plein:</value>
|
||||
</data>
|
||||
<data name="lbEmpty.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>31, 13</value>
|
||||
</data>
|
||||
<data name="lbEmpty.Text" xml:space="preserve">
|
||||
<value>Vide:</value>
|
||||
</data>
|
||||
<data name="numUDMouseSens.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>117, 16</value>
|
||||
</data>
|
||||
@ -197,28 +199,35 @@ deux fois</value>
|
||||
<value>Pavé tactile</value>
|
||||
</data>
|
||||
<data name="cbStartTouchpadOff.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>244, 45</value>
|
||||
<value>253, 20</value>
|
||||
</data>
|
||||
<data name="gBOther.Text" xml:space="preserve">
|
||||
<value>Autre</value>
|
||||
</data>
|
||||
<data name="pBProgram.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>209, 96</value>
|
||||
</data>
|
||||
<data name="cBLaunchProgram.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>128, 30</value>
|
||||
</data>
|
||||
<data name="cBLaunchProgram.Text" xml:space="preserve">
|
||||
<value>Lancer le programme
|
||||
avec le profil</value>
|
||||
</data>
|
||||
<data name="btnBrowse.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>137, 98</value>
|
||||
</data>
|
||||
<data name="cBMouseAccel.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>178, 17</value>
|
||||
</data>
|
||||
<data name="gBLightbar.Text" xml:space="preserve">
|
||||
<value>Barre lumineuse</value>
|
||||
</data>
|
||||
<data name="lbShiftGreen.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>14, 13</value>
|
||||
</data>
|
||||
<data name="lbShiftGreen.Text" xml:space="preserve">
|
||||
<value>V</value>
|
||||
</data>
|
||||
<data name="btnChargingColor.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>408, 108</value>
|
||||
<value>359, 107</value>
|
||||
</data>
|
||||
<data name="rBColor.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>341, 106</value>
|
||||
<value>293, 105</value>
|
||||
</data>
|
||||
<data name="rBColor.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>61, 17</value>
|
||||
@ -226,12 +235,33 @@ deux fois</value>
|
||||
<data name="rBColor.Text" xml:space="preserve">
|
||||
<value>Couleur</value>
|
||||
</data>
|
||||
<data name="rBFade.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>138, 105</value>
|
||||
</data>
|
||||
<data name="rBFade.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>68, 17</value>
|
||||
</data>
|
||||
<data name="rBFade.Text" xml:space="preserve">
|
||||
<value>Pulsation</value>
|
||||
</data>
|
||||
<data name="rBNormal.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>74, 105</value>
|
||||
</data>
|
||||
<data name="rBRainbow.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>212, 105</value>
|
||||
</data>
|
||||
<data name="rBRainbow.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>75, 17</value>
|
||||
</data>
|
||||
<data name="rBRainbow.Text" xml:space="preserve">
|
||||
<value>Arc-en-ciel</value>
|
||||
</data>
|
||||
<data name="lbWhileCharging.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>59, 13</value>
|
||||
</data>
|
||||
<data name="lbWhileCharging.Text" xml:space="preserve">
|
||||
<value>En charge:</value>
|
||||
</data>
|
||||
<data name="lbPercentFlashBar.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>109, 18</value>
|
||||
</data>
|
||||
@ -244,33 +274,18 @@ deux fois</value>
|
||||
<data name="lbFlashAt.Text" xml:space="preserve">
|
||||
<value>Clignoter à</value>
|
||||
</data>
|
||||
<data name="lbShiftGreen.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>14, 13</value>
|
||||
</data>
|
||||
<data name="lbShiftGreen.Text" xml:space="preserve">
|
||||
<value>V</value>
|
||||
</data>
|
||||
<data name="gBRumble.Text" xml:space="preserve">
|
||||
<value>Vibrer</value>
|
||||
</data>
|
||||
<data name="gBDeadzone.Text" xml:space="preserve">
|
||||
<value>Zone morte</value>
|
||||
</data>
|
||||
<data name="cBShiftControl.Items" xml:space="preserve">
|
||||
<value>(rien)/shift off</value>
|
||||
</data>
|
||||
<data name="lbHold.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>25, 6</value>
|
||||
</data>
|
||||
<data name="lbHold.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>50, 13</value>
|
||||
</data>
|
||||
<data name="lbHold.Text" xml:space="preserve">
|
||||
<value>Maintenir</value>
|
||||
</data>
|
||||
<data name="lbtoUse.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>58, 26</value>
|
||||
</data>
|
||||
<data name="lbtoUse.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>140, 13</value>
|
||||
</data>
|
||||
<data name="lbtoUse.Text" xml:space="preserve">
|
||||
<value>pour utiliser ces commandes</value>
|
||||
</data>
|
||||
<data name="pBSADeadzone.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAAJYAAACWCAYAAAA8AXHiAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
|
||||
@ -535,4 +550,34 @@ deux fois</value>
|
||||
AElFTkSuQmCC
|
||||
</value>
|
||||
</data>
|
||||
<data name="cBShiftControl.Items" xml:space="preserve">
|
||||
<value>(rien)/shift off</value>
|
||||
</data>
|
||||
<data name="lbHold.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>25, 6</value>
|
||||
</data>
|
||||
<data name="lbHold.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>50, 13</value>
|
||||
</data>
|
||||
<data name="lbHold.Text" xml:space="preserve">
|
||||
<value>Maintenir</value>
|
||||
</data>
|
||||
<data name="lbtoUse.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>58, 26</value>
|
||||
</data>
|
||||
<data name="lbtoUse.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>140, 13</value>
|
||||
</data>
|
||||
<data name="lbtoUse.Text" xml:space="preserve">
|
||||
<value>pour utiliser ces commandes</value>
|
||||
</data>
|
||||
<data name="lbControlTip.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>8, 2</value>
|
||||
</data>
|
||||
<data name="lbControlTip.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>247, 41</value>
|
||||
</data>
|
||||
<data name="lbControlTip.Text" xml:space="preserve">
|
||||
<value>Cliquer sur une touche de la manette pour changer l'action. Utiliser une DS4 pour paramétrer les touches</value>
|
||||
</data>
|
||||
</root>
|
13320
DS4Tool/Options.resx
13320
DS4Tool/Options.resx
File diff suppressed because it is too large
Load Diff
@ -3,9 +3,10 @@ using System.Windows.Forms;
|
||||
using System.Threading;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Diagnostics;
|
||||
using System.ComponentModel;
|
||||
|
||||
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
static class Program
|
||||
{
|
||||
@ -15,12 +16,19 @@ namespace ScpServer
|
||||
|
||||
[DllImport("user32.dll")]
|
||||
private static extern IntPtr GetForegroundWindow();
|
||||
// Add "global\" in front of the EventName, then only one instance is allowed on the
|
||||
// whole system, including other users. But the application can not be brought
|
||||
// into view, of course.
|
||||
private static String SingleAppComEventName = "{a52b5b20-d9ee-4f32-8518-307fa14aa0c6}";
|
||||
static Mutex mutex = new Mutex(true, "{FI329DM2-DS4W-J2K2-HYES-92H21B3WJARG}");
|
||||
private static BackgroundWorker singleAppComThread = null;
|
||||
private static EventWaitHandle threadComEvent = null;
|
||||
|
||||
/// <summary>
|
||||
/// The main entry point for the application.
|
||||
/// </summary>
|
||||
[STAThread]
|
||||
static void Main(string [] args)
|
||||
static void Main(string[] args)
|
||||
{
|
||||
System.Runtime.GCSettings.LatencyMode = System.Runtime.GCLatencyMode.LowLatency;
|
||||
try
|
||||
@ -31,34 +39,90 @@ namespace ScpServer
|
||||
{
|
||||
// Ignore problems raising the priority.
|
||||
}
|
||||
bool createdNew = true;
|
||||
using (Mutex mutex = new Mutex(true, "MyApplicationName", out createdNew))
|
||||
try
|
||||
{
|
||||
if (createdNew)
|
||||
// another instance is already running if OpenExsting succeeds.
|
||||
threadComEvent = EventWaitHandle.OpenExisting(SingleAppComEventName);
|
||||
threadComEvent.Set(); // signal the other instance.
|
||||
threadComEvent.Close();
|
||||
return; // return immediatly.
|
||||
}
|
||||
catch { /* don't care about errors */ }
|
||||
// Create the Event handle
|
||||
threadComEvent = new EventWaitHandle(false, EventResetMode.AutoReset, SingleAppComEventName);
|
||||
CreateInterAppComThread();
|
||||
if (mutex.WaitOne(TimeSpan.Zero, true))
|
||||
{
|
||||
Application.EnableVisualStyles();
|
||||
Application.SetCompatibleTextRenderingDefault(false);
|
||||
Application.Run(new DS4Form(args));
|
||||
mutex.ReleaseMutex();
|
||||
}
|
||||
|
||||
// End the communication thread.
|
||||
singleAppComThread.CancelAsync();
|
||||
while (singleAppComThread.IsBusy)
|
||||
Thread.Sleep(50);
|
||||
threadComEvent.Close();
|
||||
}
|
||||
|
||||
static private void CreateInterAppComThread()
|
||||
{
|
||||
singleAppComThread = new BackgroundWorker();
|
||||
singleAppComThread.WorkerReportsProgress = false;
|
||||
singleAppComThread.WorkerSupportsCancellation = true;
|
||||
singleAppComThread.DoWork += new DoWorkEventHandler(singleAppComThread_DoWork);
|
||||
singleAppComThread.RunWorkerAsync();
|
||||
}
|
||||
|
||||
static private void singleAppComThread_DoWork(object sender, DoWorkEventArgs e)
|
||||
{
|
||||
BackgroundWorker worker = sender as BackgroundWorker;
|
||||
WaitHandle[] waitHandles = new WaitHandle[] { threadComEvent };
|
||||
|
||||
while (!worker.CancellationPending)
|
||||
{
|
||||
// check every second for a signal.
|
||||
if (WaitHandle.WaitAny(waitHandles, 1000) == 0)
|
||||
{
|
||||
Application.EnableVisualStyles();
|
||||
Application.SetCompatibleTextRenderingDefault(false);
|
||||
Application.Run(new DS4Form(args));
|
||||
}
|
||||
else
|
||||
{
|
||||
Process current = Process.GetCurrentProcess();
|
||||
foreach (Process process in Process.GetProcessesByName("DS4Windows"))
|
||||
// The user tried to start another instance. We can't allow that,
|
||||
// so bring the other instance back into view and enable that one.
|
||||
// That form is created in another thread, so we need some thread sync magic.
|
||||
if (Application.OpenForms.Count > 0)
|
||||
{
|
||||
if (process.Id != current.Id)
|
||||
{
|
||||
SetForegroundWindow(process.MainWindowHandle);
|
||||
if (GetForegroundWindow() != process.MainWindowHandle) //if tool is minimized to tray
|
||||
{
|
||||
Application.EnableVisualStyles();
|
||||
Application.SetCompatibleTextRenderingDefault(false);
|
||||
Application.Run(new Alreadyrunning());
|
||||
}
|
||||
break;
|
||||
}
|
||||
Form mainForm = Application.OpenForms[0];
|
||||
mainForm.Invoke(new SetFormVisableDelegate(ThreadFormVisable), mainForm);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// When this method is called using a Invoke then this runs in the thread
|
||||
/// that created the form, which is nice.
|
||||
/// </summary>
|
||||
/// <param name="frm"></param>
|
||||
private delegate void SetFormVisableDelegate(Form frm);
|
||||
static private void ThreadFormVisable(Form frm)
|
||||
{
|
||||
if (frm != null && frm is DS4Form)
|
||||
{
|
||||
if (frm is DS4Form)
|
||||
{
|
||||
// display the form and bring to foreground.
|
||||
frm.Visible = true;
|
||||
frm.WindowState = FormWindowState.Normal;
|
||||
frm.Show();
|
||||
}
|
||||
else
|
||||
{
|
||||
WinProgs wp = (WinProgs)frm;
|
||||
wp.ShowMainWindow();
|
||||
SetForegroundWindow(wp.form.Handle);
|
||||
}
|
||||
}
|
||||
SetForegroundWindow(frm.Handle);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.4.1")]
|
||||
[assembly: AssemblyFileVersion("1.4.1")]
|
||||
[assembly: AssemblyVersion("1.4.156")]
|
||||
[assembly: AssemblyFileVersion("1.4.156")]
|
||||
|
@ -399,4 +399,7 @@
|
||||
<data name="Installing" xml:space="preserve">
|
||||
<value>l'installation de ...</value>
|
||||
</data>
|
||||
<data name="FullLightText" xml:space="preserve">
|
||||
<value>Plein:</value>
|
||||
</data>
|
||||
</root>
|
@ -517,9 +517,6 @@
|
||||
<data name="Step1" xml:space="preserve">
|
||||
<value>Step 1: Install the DS4 Driver</value>
|
||||
</data>
|
||||
<data name="TestText" xml:space="preserve">
|
||||
<value>Test</value>
|
||||
</data>
|
||||
<data name="UpText" xml:space="preserve">
|
||||
<value>Up</value>
|
||||
</data>
|
||||
@ -565,4 +562,19 @@
|
||||
<data name="SwipeUp" xml:space="preserve">
|
||||
<value>Swipe Up</value>
|
||||
</data>
|
||||
<data name="StopHText" xml:space="preserve">
|
||||
<value>Stop Heavy</value>
|
||||
</data>
|
||||
<data name="StopLText" xml:space="preserve">
|
||||
<value>Stop Light</value>
|
||||
</data>
|
||||
<data name="TestHText" xml:space="preserve">
|
||||
<value>Test Heavy</value>
|
||||
</data>
|
||||
<data name="TestLText" xml:space="preserve">
|
||||
<value>Test Light</value>
|
||||
</data>
|
||||
<data name="FullLightText" xml:space="preserve">
|
||||
<value>Plein:</value>
|
||||
</data>
|
||||
</root>
|
46
DS4Tool/Properties/Resources1.Designer.cs
generated
46
DS4Tool/Properties/Resources1.Designer.cs
generated
@ -8,7 +8,7 @@
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace ScpServer.Properties {
|
||||
namespace DS4Windows.Properties {
|
||||
using System;
|
||||
|
||||
|
||||
@ -39,7 +39,7 @@ namespace ScpServer.Properties {
|
||||
internal static global::System.Resources.ResourceManager ResourceManager {
|
||||
get {
|
||||
if (object.ReferenceEquals(resourceMan, null)) {
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ScpServer.Properties.Resources", typeof(Resources).Assembly);
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("DS4Windows.Properties.Resources", typeof(Resources).Assembly);
|
||||
resourceMan = temp;
|
||||
}
|
||||
return resourceMan;
|
||||
@ -542,6 +542,15 @@ namespace ScpServer.Properties {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Plein:.
|
||||
/// </summary>
|
||||
internal static string FullLightText {
|
||||
get {
|
||||
return ResourceManager.GetString("FullLightText", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to hour.
|
||||
/// </summary>
|
||||
@ -1140,6 +1149,24 @@ namespace ScpServer.Properties {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Stop Heavy.
|
||||
/// </summary>
|
||||
internal static string StopHText {
|
||||
get {
|
||||
return ResourceManager.GetString("StopHText", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Stop Light.
|
||||
/// </summary>
|
||||
internal static string StopLText {
|
||||
get {
|
||||
return ResourceManager.GetString("StopLText", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Stopped DS4 Tool.
|
||||
/// </summary>
|
||||
@ -1231,11 +1258,20 @@ namespace ScpServer.Properties {
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Test.
|
||||
/// Looks up a localized string similar to Test Heavy.
|
||||
/// </summary>
|
||||
internal static string TestText {
|
||||
internal static string TestHText {
|
||||
get {
|
||||
return ResourceManager.GetString("TestText", resourceCulture);
|
||||
return ResourceManager.GetString("TestHText", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Test Light.
|
||||
/// </summary>
|
||||
internal static string TestLText {
|
||||
get {
|
||||
return ResourceManager.GetString("TestLText", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
|
2
DS4Tool/Properties/Settings.Designer.cs
generated
2
DS4Tool/Properties/Settings.Designer.cs
generated
@ -8,7 +8,7 @@
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace ScpServer.Properties {
|
||||
namespace DS4Windows.Properties {
|
||||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
|
2
DS4Tool/RecordBox.Designer.cs
generated
2
DS4Tool/RecordBox.Designer.cs
generated
@ -1,4 +1,4 @@
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
partial class RecordBox
|
||||
{
|
||||
|
@ -14,7 +14,7 @@ using DS4Library;
|
||||
using System.IO;
|
||||
using System.Reflection;
|
||||
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
public partial class RecordBox : Form
|
||||
{
|
||||
|
2
DS4Tool/SaveWhere.Designer.cs
generated
2
DS4Tool/SaveWhere.Designer.cs
generated
@ -1,4 +1,4 @@
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
partial class SaveWhere
|
||||
{
|
||||
|
@ -12,7 +12,7 @@ using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using System.Xml;
|
||||
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
public partial class SaveWhere : Form
|
||||
{
|
||||
|
@ -1,4 +1,4 @@
|
||||
namespace ScpServer.Properties {
|
||||
namespace DS4Windows.Properties {
|
||||
|
||||
|
||||
// This class allows you to handle specific events on the settings class:
|
||||
|
4
DS4Tool/WelcomeDialog.Designer.cs
generated
4
DS4Tool/WelcomeDialog.Designer.cs
generated
@ -1,4 +1,4 @@
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
partial class WelcomeDialog
|
||||
{
|
||||
@ -58,7 +58,7 @@
|
||||
//
|
||||
// pictureBox1
|
||||
//
|
||||
this.pictureBox1.Image = global::ScpServer.Properties.Resources.Pairmode;
|
||||
this.pictureBox1.Image = global::DS4Windows.Properties.Resources.Pairmode;
|
||||
resources.ApplyResources(this.pictureBox1, "pictureBox1");
|
||||
this.pictureBox1.Name = "pictureBox1";
|
||||
this.pictureBox1.TabStop = false;
|
||||
|
@ -16,7 +16,7 @@ using System.Security.Principal;
|
||||
using System.Security.Permissions;
|
||||
using System.Reflection;
|
||||
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
public partial class WelcomeDialog : Form
|
||||
{
|
||||
|
2
DS4Tool/WinProgs.Designer.cs
generated
2
DS4Tool/WinProgs.Designer.cs
generated
@ -1,4 +1,4 @@
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
partial class WinProgs
|
||||
{
|
||||
|
@ -15,13 +15,13 @@ using DS4Control;
|
||||
using System.Xml;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace ScpServer
|
||||
namespace DS4Windows
|
||||
{
|
||||
public partial class WinProgs : Form
|
||||
{
|
||||
ToolTip tp = new ToolTip();
|
||||
ComboBox[] cbs;
|
||||
DS4Form form;
|
||||
public DS4Form form;
|
||||
//C:\ProgramData\Microsoft\Windows\Start Menu\Programs
|
||||
string steamgamesdir, origingamesdir;
|
||||
protected String m_Profile = Global.appdatapath + "\\Auto Profiles.xml";
|
||||
@ -87,6 +87,13 @@ namespace ScpServer
|
||||
return Saved;
|
||||
}
|
||||
|
||||
public void ShowMainWindow()
|
||||
{
|
||||
form.Visible = true;
|
||||
form.WindowState = FormWindowState.Normal;
|
||||
form.Show();
|
||||
}
|
||||
|
||||
public void LoadP()
|
||||
{
|
||||
XmlDocument doc = new XmlDocument();
|
||||
|
Loading…
Reference in New Issue
Block a user