diff --git a/DS4Windows/DS4Control/Mouse.cs b/DS4Windows/DS4Control/Mouse.cs
index 15f72a5..d21c15d 100644
--- a/DS4Windows/DS4Control/Mouse.cs
+++ b/DS4Windows/DS4Control/Mouse.cs
@@ -174,14 +174,11 @@ namespace DS4Windows
SixMouseStick(arg);
else if (!useReverseRatchet && !triggeractivated)
SixMouseStick(arg);
- //else
- // SixMouseReset(arg);
+ else
+ SixMouseReset(arg);
}
}
- /*private const int GyroMouseStickDeadZone = 50;
- private const int GyroMouseStickMaxZone = 880;
- private const int GyroMouseStickFuzz = 20;
private const int SMOOTH_BUFFER_LEN = 3;
private int[] xSmoothBuffer = new int[SMOOTH_BUFFER_LEN];
private int[] ySmoothBuffer = new int[SMOOTH_BUFFER_LEN];
@@ -194,7 +191,6 @@ namespace DS4Windows
ySmoothBuffer[iIndex] = 0;
smoothBufferTail = iIndex + 1;
}
- */
private void SixMouseStick(SixAxisEventArgs arg)
{
@@ -248,34 +244,42 @@ namespace DS4Windows
deltaY = 0;
}
- /*int iIndex = smoothBufferTail % SMOOTH_BUFFER_LEN;
- xSmoothBuffer[iIndex] = deltaX;
- ySmoothBuffer[iIndex] = deltaY;
- smoothBufferTail = iIndex + 1;
-
- double currentWeight = 1.0;
- double finalWeight = 0.0;
- double x_out = 0.0, y_out = 0.0;
- int idx = 0;
- for (int i = 0; i < SMOOTH_BUFFER_LEN; i++)
+ if (msinfo.useSmoothing)
{
- idx = (smoothBufferTail - i - 1 + SMOOTH_BUFFER_LEN) % SMOOTH_BUFFER_LEN;
- x_out += xSmoothBuffer[idx] * currentWeight;
- y_out += ySmoothBuffer[idx] * currentWeight;
- finalWeight += currentWeight;
- currentWeight *= 0.5;
+ int iIndex = smoothBufferTail % SMOOTH_BUFFER_LEN;
+ xSmoothBuffer[iIndex] = deltaX;
+ ySmoothBuffer[iIndex] = deltaY;
+ smoothBufferTail = iIndex + 1;
+
+ double currentWeight = 1.0;
+ double finalWeight = 0.0;
+ double x_out = 0.0, y_out = 0.0;
+ int idx = 0;
+ for (int i = 0; i < SMOOTH_BUFFER_LEN; i++)
+ {
+ idx = (smoothBufferTail - i - 1 + SMOOTH_BUFFER_LEN) % SMOOTH_BUFFER_LEN;
+ x_out += xSmoothBuffer[idx] * currentWeight;
+ y_out += ySmoothBuffer[idx] * currentWeight;
+ finalWeight += currentWeight;
+ currentWeight *= msinfo.smoothWeight;
+ }
+
+ x_out /= finalWeight;
+ deltaX = (int)x_out;
+ y_out /= finalWeight;
+ deltaY = (int)y_out;
+
+ maxValX = deltaX < 0 ? -msinfo.maxZone : msinfo.maxZone;
+ maxValY = deltaY < 0 ? -msinfo.maxZone : msinfo.maxZone;
+ maxDirX = deltaX >= 0 ? 127 : -128;
+ maxDirY = deltaY >= 0 ? 127 : -128;
}
- x_out /= finalWeight;
- deltaX = (int)x_out;
- y_out /= finalWeight;
- deltaY = (int)y_out;
-
- maxValX = deltaX < 0 ? -msinfo.maxZone : msinfo.maxZone;
- maxValY = deltaY < 0 ? -msinfo.maxZone : msinfo.maxZone;
- maxDirX = deltaX >= 0 ? 127 : -128;
- maxDirY = deltaY >= 0 ? 127 : -128;
- */
+ if (msinfo.vertScale != 100)
+ {
+ double verticalScale = msinfo.vertScale * 0.01;
+ deltaY = (int)(deltaY * verticalScale);
+ }
if (deltaX != 0) xratio = deltaX / (double)maxValX;
if (deltaY != 0) yratio = deltaY / (double)maxValY;
diff --git a/DS4Windows/DS4Control/ProfilePropGroups.cs b/DS4Windows/DS4Control/ProfilePropGroups.cs
index eb3dad3..ed53966 100644
--- a/DS4Windows/DS4Control/ProfilePropGroups.cs
+++ b/DS4Windows/DS4Control/ProfilePropGroups.cs
@@ -34,7 +34,10 @@ namespace DS4Windows
public int maxZone;
public double antiDeadX;
public double antiDeadY;
+ public int vertScale;
// Flags representing invert axis choices
public uint inverted;
+ public bool useSmoothing;
+ public double smoothWeight;
}
}
\ No newline at end of file
diff --git a/DS4Windows/DS4Control/ScpUtil.cs b/DS4Windows/DS4Control/ScpUtil.cs
index 0f912db..d270594 100644
--- a/DS4Windows/DS4Control/ScpUtil.cs
+++ b/DS4Windows/DS4Control/ScpUtil.cs
@@ -2280,6 +2280,9 @@ namespace DS4Windows
XmlNode xmlGyroMStickAntiDY = m_Xdoc.CreateNode(XmlNodeType.Element, "GyroMouseStickAntiDeadY", null); xmlGyroMStickAntiDY.InnerText = gyroMStickInfo[device].antiDeadY.ToString(); Node.AppendChild(xmlGyroMStickAntiDY);
XmlNode xmlGyroMStickInvert = m_Xdoc.CreateNode(XmlNodeType.Element, "GyroMouseStickInvert", null); xmlGyroMStickInvert.InnerText = gyroMStickInfo[device].inverted.ToString(); Node.AppendChild(xmlGyroMStickInvert);
XmlNode xmlGyroMStickToggle = m_Xdoc.CreateNode(XmlNodeType.Element, "GyroMouseStickToggle", null); xmlGyroMStickToggle.InnerText = gyroMouseStickToggle[device].ToString(); Node.AppendChild(xmlGyroMStickToggle);
+ XmlNode xmlGyroMStickVerticalScale = m_Xdoc.CreateNode(XmlNodeType.Element, "GyroMouseStickVerticalScale", null); xmlGyroMStickVerticalScale.InnerText = gyroMStickInfo[device].vertScale.ToString(); Node.AppendChild(xmlGyroMStickVerticalScale);
+ XmlNode xmlGyroMStickSmoothing = m_Xdoc.CreateNode(XmlNodeType.Element, "GyroMouseStickSmoothing", null); xmlGyroMStickSmoothing.InnerText = gyroMStickInfo[device].useSmoothing.ToString(); Node.AppendChild(xmlGyroMStickSmoothing);
+ XmlNode xmlGyroMStickSmoothWeight = m_Xdoc.CreateNode(XmlNodeType.Element, "GyroMouseStickSmoothingWeight", null); xmlGyroMStickSmoothWeight.InnerText = Convert.ToInt32(gyroMStickInfo[device].smoothWeight * 100).ToString(); Node.AppendChild(xmlGyroMStickSmoothWeight);
XmlNode xmlLSC = m_Xdoc.CreateNode(XmlNodeType.Element, "LSCurve", null); xmlLSC.InnerText = lsCurve[device].ToString(); Node.AppendChild(xmlLSC);
XmlNode xmlRSC = m_Xdoc.CreateNode(XmlNodeType.Element, "RSCurve", null); xmlRSC.InnerText = rsCurve[device].ToString(); Node.AppendChild(xmlRSC);
@@ -3192,6 +3195,18 @@ namespace DS4Windows
}
catch { gyroMouseStickToggle[device] = false; missingSetting = true; }
+ try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/GyroMouseStickVerticalScale"); int.TryParse(Item.InnerText, out gyroMStickInfo[device].vertScale); }
+ catch { gyroMStickInfo[device].vertScale = 100; missingSetting = true; }
+
+ try { Item = m_Xdoc.SelectSingleNode("/" + rootname + "/GyroMouseStickSmoothing"); bool.TryParse(Item.InnerText, out gyroMStickInfo[device].useSmoothing); }
+ catch { gyroMStickInfo[device].useSmoothing = false; missingSetting = true; }
+
+ try {
+ Item = m_Xdoc.SelectSingleNode("/" + rootname + "/GyroMouseStickSmoothingWeight");
+ int temp = 0; int.TryParse(Item.InnerText, out temp);
+ gyroMStickInfo[device].smoothWeight = Math.Min(Math.Max(0.0, Convert.ToDouble(temp * 0.01)), 1.0);
+ }
+ catch { gyroMStickInfo[device].smoothWeight = 0.5; missingSetting = true; }
try
{
@@ -4587,8 +4602,9 @@ namespace DS4Windows
sAMouseStickTriggerCond[device] = true;
gyroMStickInfo[device].deadZone = 30; gyroMStickInfo[device].maxZone = 830;
gyroMStickInfo[device].antiDeadX = 0.4; gyroMStickInfo[device].antiDeadY = 0.4;
- gyroMStickInfo[device].inverted = 0;
+ gyroMStickInfo[device].inverted = 0; gyroMStickInfo[device].vertScale = 100;
gyroMouseStickToggle[device] = false;
+ gyroMStickInfo[device].useSmoothing = false; gyroMStickInfo[device].smoothWeight = 0.5;
sASteeringWheelEmulationAxis[device] = SASteeringWheelEmulationAxisType.None;
sASteeringWheelEmulationRange[device] = 360;
touchDisInvertTriggers[device] = new int[1] { -1 };
diff --git a/DS4Windows/DS4Forms/Options.Designer.cs b/DS4Windows/DS4Forms/Options.Designer.cs
index 0466b6f..9dd8da6 100644
--- a/DS4Windows/DS4Forms/Options.Designer.cs
+++ b/DS4Windows/DS4Forms/Options.Designer.cs
@@ -208,6 +208,9 @@
this.gyroMouseStickAntiDeadX = new System.Windows.Forms.NumericUpDown();
this.label32 = new System.Windows.Forms.Label();
this.gyroMouseStickAntiDeadY = new System.Windows.Forms.NumericUpDown();
+ this.label37 = new System.Windows.Forms.Label();
+ this.gyroMStickVertScaleNUD = new System.Windows.Forms.NumericUpDown();
+ this.label38 = new System.Windows.Forms.Label();
this.label35 = new System.Windows.Forms.Label();
this.gyroMouseStickEvalCombo = new System.Windows.Forms.ComboBox();
this.label33 = new System.Windows.Forms.Label();
@@ -424,6 +427,9 @@
this.optionsTouchInvStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.shareTouchInvStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.psTouchInvStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+ this.gyroMStickUseSmoothCk = new System.Windows.Forms.CheckBox();
+ this.gyroMStickSmoothWeightNUD = new System.Windows.Forms.NumericUpDown();
+ this.label39 = new System.Windows.Forms.Label();
((System.ComponentModel.ISupportInitialize)(this.nUDRainbow)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.tBBlueBar)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.tBGreenBar)).BeginInit();
@@ -476,6 +482,7 @@
((System.ComponentModel.ISupportInitialize)(this.gyroMouseStickMaxZ)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.gyroMouseStickAntiDeadX)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.gyroMouseStickAntiDeadY)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.gyroMStickVertScaleNUD)).BeginInit();
this.tCControls.SuspendLayout();
this.tPControls.SuspendLayout();
this.pnlController.SuspendLayout();
@@ -525,6 +532,7 @@
((System.ComponentModel.ISupportInitialize)(this.nUDSZS)).BeginInit();
this.cMGyroTriggers.SuspendLayout();
this.cMTouchDisableInvert.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.gyroMStickSmoothWeightNUD)).BeginInit();
this.SuspendLayout();
//
// lowColorChooserButton
@@ -2046,12 +2054,18 @@
this.gyroMouseJoyFLP.Controls.Add(this.gyroMouseStickAntiDeadX);
this.gyroMouseJoyFLP.Controls.Add(this.label32);
this.gyroMouseJoyFLP.Controls.Add(this.gyroMouseStickAntiDeadY);
+ this.gyroMouseJoyFLP.Controls.Add(this.label37);
+ this.gyroMouseJoyFLP.Controls.Add(this.gyroMStickVertScaleNUD);
+ this.gyroMouseJoyFLP.Controls.Add(this.label38);
this.gyroMouseJoyFLP.Controls.Add(this.label35);
this.gyroMouseJoyFLP.Controls.Add(this.gyroMouseStickEvalCombo);
this.gyroMouseJoyFLP.Controls.Add(this.label33);
this.gyroMouseJoyFLP.Controls.Add(this.gyroMousestickXAxisCom);
this.gyroMouseJoyFLP.Controls.Add(this.gyroMouseStickInvertXCk);
this.gyroMouseJoyFLP.Controls.Add(this.gyroMouseStickInvertYCk);
+ this.gyroMouseJoyFLP.Controls.Add(this.gyroMStickUseSmoothCk);
+ this.gyroMouseJoyFLP.Controls.Add(this.label39);
+ this.gyroMouseJoyFLP.Controls.Add(this.gyroMStickSmoothWeightNUD);
resources.ApplyResources(this.gyroMouseJoyFLP, "gyroMouseJoyFLP");
this.gyroMouseJoyFLP.Name = "gyroMouseJoyFLP";
//
@@ -2169,6 +2183,32 @@
131072});
this.gyroMouseStickAntiDeadY.ValueChanged += new System.EventHandler(this.GyroMouseSStickAntiDeadY_ValueChanged);
//
+ // label37
+ //
+ resources.ApplyResources(this.label37, "label37");
+ this.label37.Name = "label37";
+ //
+ // gyroMStickVertScaleNUD
+ //
+ resources.ApplyResources(this.gyroMStickVertScaleNUD, "gyroMStickVertScaleNUD");
+ this.gyroMStickVertScaleNUD.Maximum = new decimal(new int[] {
+ 400,
+ 0,
+ 0,
+ 0});
+ this.gyroMStickVertScaleNUD.Name = "gyroMStickVertScaleNUD";
+ this.gyroMStickVertScaleNUD.Value = new decimal(new int[] {
+ 100,
+ 0,
+ 0,
+ 0});
+ this.gyroMStickVertScaleNUD.ValueChanged += new System.EventHandler(this.GyroMStickVertScaleNUD_ValueChanged);
+ //
+ // label38
+ //
+ resources.ApplyResources(this.label38, "label38");
+ this.label38.Name = "label38";
+ //
// label35
//
resources.ApplyResources(this.label35, "label35");
@@ -4557,6 +4597,35 @@
resources.ApplyResources(this.psTouchInvStripMenuItem, "psTouchInvStripMenuItem");
this.psTouchInvStripMenuItem.CheckedChanged += new System.EventHandler(this.TouchDisableInvert_CheckedChanged);
//
+ // gyroMStickUseSmoothCk
+ //
+ resources.ApplyResources(this.gyroMStickUseSmoothCk, "gyroMStickUseSmoothCk");
+ this.gyroMStickUseSmoothCk.Name = "gyroMStickUseSmoothCk";
+ this.gyroMStickUseSmoothCk.UseVisualStyleBackColor = true;
+ this.gyroMStickUseSmoothCk.CheckedChanged += new System.EventHandler(this.GyroMStickUseSmoothCk_CheckedChanged);
+ //
+ // gyroMStickSmoothWeightNUD
+ //
+ this.gyroMStickSmoothWeightNUD.DecimalPlaces = 3;
+ resources.ApplyResources(this.gyroMStickSmoothWeightNUD, "gyroMStickSmoothWeightNUD");
+ this.gyroMStickSmoothWeightNUD.Maximum = new decimal(new int[] {
+ 1,
+ 0,
+ 0,
+ 0});
+ this.gyroMStickSmoothWeightNUD.Name = "gyroMStickSmoothWeightNUD";
+ this.gyroMStickSmoothWeightNUD.Value = new decimal(new int[] {
+ 5,
+ 0,
+ 0,
+ 65536});
+ this.gyroMStickSmoothWeightNUD.ValueChanged += new System.EventHandler(this.GyroMStickSmoothWeightNUD_ValueChanged);
+ //
+ // label39
+ //
+ resources.ApplyResources(this.label39, "label39");
+ this.label39.Name = "label39";
+ //
// Options
//
resources.ApplyResources(this, "$this");
@@ -4631,6 +4700,7 @@
((System.ComponentModel.ISupportInitialize)(this.gyroMouseStickMaxZ)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.gyroMouseStickAntiDeadX)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.gyroMouseStickAntiDeadY)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.gyroMStickVertScaleNUD)).EndInit();
this.tCControls.ResumeLayout(false);
this.tPControls.ResumeLayout(false);
this.pnlController.ResumeLayout(false);
@@ -4690,6 +4760,7 @@
((System.ComponentModel.ISupportInitialize)(this.nUDSZS)).EndInit();
this.cMGyroTriggers.ResumeLayout(false);
this.cMTouchDisableInvert.ResumeLayout(false);
+ ((System.ComponentModel.ISupportInitialize)(this.gyroMStickSmoothWeightNUD)).EndInit();
this.ResumeLayout(false);
}
@@ -5092,5 +5163,11 @@
private System.Windows.Forms.Label label35;
private System.Windows.Forms.ComboBox gyroMouseStickEvalCombo;
private System.Windows.Forms.CheckBox gyroMStickToggleCk;
+ private System.Windows.Forms.Label label37;
+ private System.Windows.Forms.NumericUpDown gyroMStickVertScaleNUD;
+ private System.Windows.Forms.Label label38;
+ private System.Windows.Forms.CheckBox gyroMStickUseSmoothCk;
+ private System.Windows.Forms.Label label39;
+ private System.Windows.Forms.NumericUpDown gyroMStickSmoothWeightNUD;
}
}
\ No newline at end of file
diff --git a/DS4Windows/DS4Forms/Options.cs b/DS4Windows/DS4Forms/Options.cs
index 1992c20..55a7579 100644
--- a/DS4Windows/DS4Forms/Options.cs
+++ b/DS4Windows/DS4Forms/Options.cs
@@ -815,6 +815,10 @@ namespace DS4Windows.Forms
gyroMouseStickInvertXCk.Checked = (gyroMouseStickInfo.inverted & 1) == 1;
gyroMouseStickInvertYCk.Checked = (gyroMouseStickInfo.inverted & 2) == 2;
gyroMStickToggleCk.Checked = GyroMouseStickToggle[device];
+ gyroMStickVertScaleNUD.Value = gyroMouseStickInfo.vertScale;
+ gyroMStickUseSmoothCk.Checked = gyroMouseStickInfo.useSmoothing;
+ gyroMStickSmoothWeightNUD.Enabled = gyroMouseStickInfo.useSmoothing;
+ gyroMStickSmoothWeightNUD.Value = (decimal)gyroMouseStickInfo.smoothWeight;
}
else
{
@@ -960,6 +964,10 @@ namespace DS4Windows.Forms
gyroMouseStickInvertYCk.Checked = false;
gyroMStickTrigBehaveCk.Checked = false;
gyroMStickToggleCk.Checked = false;
+ gyroMStickVertScaleNUD.Value = 100;
+ gyroMStickUseSmoothCk.Checked = false;
+ gyroMStickSmoothWeightNUD.Enabled = false;
+ gyroMStickSmoothWeightNUD.Value = 0.5m;
Set();
}
@@ -1553,24 +1561,29 @@ namespace DS4Windows.Forms
SetSaMouseStickTriggerCond(device,
gyroMouseStickEvalCombo.SelectedItem.ToString().ToLower());
+
+ GyroMouseStickInfo gyroMouseStickInfo = GyroMouseStickInf[device];
if (GyroMouseStickDead())
{
- GyroMouseStickInf[device].deadZone = (int)gyroMouseStickDZ.Value;
- GyroMouseStickInf[device].maxZone = (int)gyroMouseStickMaxZ.Value;
+ gyroMouseStickInfo.deadZone = (int)gyroMouseStickDZ.Value;
+ gyroMouseStickInfo.maxZone = (int)gyroMouseStickMaxZ.Value;
}
else
{
- GyroMouseStickInf[device].deadZone = (int)gyroMouseStickMaxZ.Value;
- GyroMouseStickInf[device].maxZone = (int)gyroMouseStickMaxZ.Value;
+ gyroMouseStickInfo.deadZone = (int)gyroMouseStickMaxZ.Value;
+ gyroMouseStickInfo.maxZone = (int)gyroMouseStickMaxZ.Value;
}
-
- GyroMouseStickInf[device].antiDeadX = (double)gyroMouseStickAntiDeadX.Value;
- GyroMouseStickInf[device].antiDeadY = (double)gyroMouseStickAntiDeadY.Value;
+
+ gyroMouseStickInfo.antiDeadX = (double)gyroMouseStickAntiDeadX.Value;
+ gyroMouseStickInfo.antiDeadY = (double)gyroMouseStickAntiDeadY.Value;
GyroMouseStickHorizontalAxis[device] = gyroMousestickXAxisCom.SelectedIndex;
uint tempInvert = 0;
if (gyroMouseStickInvertXCk.Checked) tempInvert |= 1 << 0;
if (gyroMouseStickInvertYCk.Checked) tempInvert |= 1 << 1;
- GyroMouseStickInf[device].inverted = tempInvert;
+ gyroMouseStickInfo.inverted = tempInvert;
+ gyroMouseStickInfo.vertScale = (int)gyroMStickVertScaleNUD.Value;
+ gyroMouseStickInfo.useSmoothing = gyroMStickUseSmoothCk.Checked;
+ gyroMouseStickInfo.smoothWeight = (double)gyroMStickSmoothWeightNUD.Value;
}
private void Show_ControlsBtn(object sender, EventArgs e)
@@ -3586,9 +3599,13 @@ namespace DS4Windows.Forms
break;
case 1:
GyroOutputMode[device] = GyroOutMode.Mouse;
+ SetGyroMouseToggle(device, toggleGyroMCb.Checked,
+ Program.rootHub);
break;
case 2:
GyroOutputMode[device] = GyroOutMode.MouseJoystick;
+ SetGyroMouseStickToggle(device,
+ gyroMStickToggleCk.Checked, Program.rootHub);
break;
default:
break;
@@ -3681,6 +3698,34 @@ namespace DS4Windows.Forms
}
}
+ private void GyroMStickVertScaleNUD_ValueChanged(object sender, EventArgs e)
+ {
+ if (loading == false)
+ {
+ GyroMouseStickInf[device].vertScale = (int)gyroMStickVertScaleNUD.Value;
+ }
+ }
+
+ private void GyroMStickSmoothWeightNUD_ValueChanged(object sender, EventArgs e)
+ {
+ if (loading == false)
+ {
+ GyroMouseStickInf[device].smoothWeight =
+ (double)gyroMStickSmoothWeightNUD.Value;
+ }
+ }
+
+ private void GyroMStickUseSmoothCk_CheckedChanged(object sender, EventArgs e)
+ {
+ if (loading == false)
+ {
+ GyroMouseStickInf[device].useSmoothing =
+ gyroMStickUseSmoothCk.Checked;
+ gyroMStickSmoothWeightNUD.Enabled =
+ GyroMouseStickInf[device].useSmoothing;
+ }
+ }
+
private void trackFrictionNUD_ValueChanged(object sender, EventArgs e)
{
if (loading == false)
diff --git a/DS4Windows/DS4Forms/Options.resx b/DS4Windows/DS4Forms/Options.resx
index 4fc0984..3cc9b88 100644
--- a/DS4Windows/DS4Forms/Options.resx
+++ b/DS4Windows/DS4Forms/Options.resx
@@ -4936,7 +4936,7 @@
6, 47
- 271, 195
+ 271, 199
254
@@ -5679,6 +5679,81 @@
11
+
+ True
+
+
+ 3, 104
+
+
+ 75, 13
+
+
+ 280
+
+
+ Vertical Scale:
+
+
+ label37
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ gyroMouseJoyFLP
+
+
+ 12
+
+
+ 84, 107
+
+
+ 75, 20
+
+
+ 281
+
+
+ gyroMStickVertScaleNUD
+
+
+ System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ gyroMouseJoyFLP
+
+
+ 13
+
+
+ 165, 104
+
+
+ 20, 23
+
+
+ 282
+
+
+ %
+
+
+ MiddleCenter
+
+
+ label38
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ gyroMouseJoyFLP
+
+
+ 14
+
True
@@ -5686,7 +5761,7 @@
NoControl
- 3, 104
+ 3, 130
59, 13
@@ -5707,7 +5782,7 @@
gyroMouseJoyFLP
- 12
+ 15
And
@@ -5716,7 +5791,7 @@
Or
- 68, 107
+ 68, 133
72, 21
@@ -5734,13 +5809,13 @@
gyroMouseJoyFLP
- 13
+ 16
True
- 146, 104
+ 146, 130
39, 13
@@ -5761,7 +5836,7 @@
gyroMouseJoyFLP
- 14
+ 17
Yaw
@@ -5770,7 +5845,7 @@
Roll
- 191, 107
+ 191, 133
56, 21
@@ -5788,19 +5863,16 @@
gyroMouseJoyFLP
- 15
-
-
- True
+ 18
- 3, 134
+ 3, 160
- Yes
+ No
- 63, 17
+ 96, 17
11
@@ -5818,19 +5890,16 @@
gyroMouseJoyFLP
- 16
-
-
- True
+ 19
- 72, 134
+ 105, 160
- Yes
+ No
- 63, 17
+ 127, 17
12
@@ -5848,13 +5917,91 @@
gyroMouseJoyFLP
- 17
+ 20
+
+
+ True
+
+
+ 3, 183
+
+
+ Yes
+
+
+ 76, 17
+
+
+ 283
+
+
+ Smoothing
+
+
+ gyroMStickUseSmoothCk
+
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ gyroMouseJoyFLP
+
+
+ 21
+
+
+ 85, 180
+
+
+ 60, 23
+
+
+ 285
+
+
+ Weight:
+
+
+ MiddleCenter
+
+
+ label39
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ gyroMouseJoyFLP
+
+
+ 22
+
+
+ 151, 183
+
+
+ 72, 20
+
+
+ 284
+
+
+ gyroMStickSmoothWeightNUD
+
+
+ System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ gyroMouseJoyFLP
+
+
+ 23
8, 47
- 252, 181
+ 252, 210
260