summaryrefslogtreecommitdiff
path: root/grapher
diff options
context:
space:
mode:
authorJacob Palecki <[email protected]>2021-09-15 23:16:43 -0700
committera1xd <[email protected]>2021-09-23 22:34:51 -0400
commit8878091a2cab77b0433daea7a47033e1c35e42c1 (patch)
tree58dd2c7ee901acd809230a1bc86d6fd5b569593a /grapher
parentMostly working cap type in GUI (diff)
downloadrawaccel-8878091a2cab77b0433daea7a47033e1c35e42c1.tar.xz
rawaccel-8878091a2cab77b0433daea7a47033e1c35e42c1.zip
Cap type options now fully working
Diffstat (limited to 'grapher')
-rw-r--r--grapher/Form1.Designer.cs576
-rw-r--r--grapher/Form1.cs54
-rw-r--r--grapher/Layouts/LayoutBase.cs2
-rw-r--r--grapher/Layouts/LinearLayout.cs1
-rw-r--r--grapher/Models/AccelGUIFactory.cs188
-rw-r--r--grapher/Models/Options/AccelTypeOptions.cs3
-rw-r--r--grapher/Models/Options/Cap/CapOptions.cs62
-rw-r--r--grapher/Models/Options/Cap/CapTypeOptions.cs27
-rw-r--r--grapher/Models/Options/ComboBoxOptionsBase.cs11
9 files changed, 625 insertions, 299 deletions
diff --git a/grapher/Form1.Designer.cs b/grapher/Form1.Designer.cs
index 532eab4..f162801 100644
--- a/grapher/Form1.Designer.cs
+++ b/grapher/Form1.Designer.cs
@@ -71,6 +71,18 @@ namespace grapher
System.Windows.Forms.DataVisualization.Charting.Title title6 = new System.Windows.Forms.DataVisualization.Charting.Title();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(RawAcceleration));
this.optionsPanel = new System.Windows.Forms.Panel();
+ this.CapTypeActiveYLabelClassic = new System.Windows.Forms.Label();
+ this.CapTypeActiveXLabelClassic = new System.Windows.Forms.Label();
+ this.OutCapActiveYLabelClassic = new System.Windows.Forms.Label();
+ this.OutCapActiveXLabelClassic = new System.Windows.Forms.Label();
+ this.outCapLabelYClassic = new System.Windows.Forms.Label();
+ this.outCapLabelXClassic = new System.Windows.Forms.Label();
+ this.outCapBoxYClassic = new System.Windows.Forms.TextBox();
+ this.outCapBoxXClassic = new System.Windows.Forms.TextBox();
+ this.CapTypeLabelYClassic = new System.Windows.Forms.Label();
+ this.CapTypeLabelXClassic = new System.Windows.Forms.Label();
+ this.CapTypeDropdownYClassic = new System.Windows.Forms.ComboBox();
+ this.CapTypeDropdownXClassic = new System.Windows.Forms.ComboBox();
this.VertHorzRatioLabel = new System.Windows.Forms.Label();
this.SmoothActiveYLabel = new System.Windows.Forms.Label();
this.smoothLabelY = new System.Windows.Forms.Label();
@@ -154,7 +166,7 @@ namespace grapher
this.limitLabelY = new System.Windows.Forms.Label();
this.offsetLabelY = new System.Windows.Forms.Label();
this.weightLabelY = new System.Windows.Forms.Label();
- this.inCapLabelY = new System.Windows.Forms.Label();
+ this.inCapLabelYClassic = new System.Windows.Forms.Label();
this.constantOneLabelY = new System.Windows.Forms.Label();
this.ByComponentXYLock = new System.Windows.Forms.CheckBox();
this.MidpointActiveYLabel = new System.Windows.Forms.Label();
@@ -169,10 +181,10 @@ namespace grapher
this.MidpointActiveXLabel = new System.Windows.Forms.Label();
this.LimitActiveXLabel = new System.Windows.Forms.Label();
this.OffsetActiveXLabel = new System.Windows.Forms.Label();
- this.InCapActiveYLabel = new System.Windows.Forms.Label();
+ this.InCapActiveYLabelClassic = new System.Windows.Forms.Label();
this.WeightActiveYLabel = new System.Windows.Forms.Label();
this.WeightActiveXLabel = new System.Windows.Forms.Label();
- this.InCapActiveXLabel = new System.Windows.Forms.Label();
+ this.InCapActiveXLabelClassic = new System.Windows.Forms.Label();
this.AccelerationActiveLabelX = new System.Windows.Forms.Label();
this.AccelTypeActiveLabelX = new System.Windows.Forms.Label();
this.RotationActiveLabel = new System.Windows.Forms.Label();
@@ -182,7 +194,7 @@ namespace grapher
this.MouseLabel = new System.Windows.Forms.Label();
this.LockXYLabel = new System.Windows.Forms.Label();
this.sensXYLock = new System.Windows.Forms.CheckBox();
- this.inCapBoxY = new System.Windows.Forms.TextBox();
+ this.inCapBoxYClassic = new System.Windows.Forms.TextBox();
this.VertHorzRatioBox = new System.Windows.Forms.TextBox();
this.writeButton = new System.Windows.Forms.Button();
this.offsetLabelX = new System.Windows.Forms.Label();
@@ -194,8 +206,8 @@ namespace grapher
this.weightBoxY = new System.Windows.Forms.TextBox();
this.weightLabelX = new System.Windows.Forms.Label();
this.weightBoxX = new System.Windows.Forms.TextBox();
- this.inCapLabelX = new System.Windows.Forms.Label();
- this.inCapBoxX = new System.Windows.Forms.TextBox();
+ this.inCapLabelXClassic = new System.Windows.Forms.Label();
+ this.inCapBoxXClassic = new System.Windows.Forms.TextBox();
this.constantOneLabelX = new System.Windows.Forms.Label();
this.accelerationBoxX = new System.Windows.Forms.TextBox();
this.rotationLabel = new System.Windows.Forms.Label();
@@ -224,18 +236,24 @@ namespace grapher
this.GainChart = new System.Windows.Forms.DataVisualization.Charting.Chart();
this.VelocityChart = new System.Windows.Forms.DataVisualization.Charting.Chart();
this.AccelerationChart = new System.Windows.Forms.DataVisualization.Charting.Chart();
- this.CapTypeDropdownX = new System.Windows.Forms.ComboBox();
- this.CapTypeDropdownY = new System.Windows.Forms.ComboBox();
- this.CapTypeLabelX = new System.Windows.Forms.Label();
- this.CapTypeLabelY = new System.Windows.Forms.Label();
- this.outCapBoxX = new System.Windows.Forms.TextBox();
- this.outCapBoxY = new System.Windows.Forms.TextBox();
- this.outCapLabelX = new System.Windows.Forms.Label();
- this.outCapLabelY = new System.Windows.Forms.Label();
- this.OutCapActiveXLabel = new System.Windows.Forms.Label();
- this.OutCapActiveYLabel = new System.Windows.Forms.Label();
- this.CapTypeActiveXLabel = new System.Windows.Forms.Label();
- this.CapTypeActiveYLabel = new System.Windows.Forms.Label();
+ this.CapTypeDropdownXPower = new System.Windows.Forms.ComboBox();
+ this.CapTypeDropdownYPower = new System.Windows.Forms.ComboBox();
+ this.inCapBoxXPower = new System.Windows.Forms.TextBox();
+ this.inCapBoxYPower = new System.Windows.Forms.TextBox();
+ this.outCapBoxXPower = new System.Windows.Forms.TextBox();
+ this.outCapBoxYPower = new System.Windows.Forms.TextBox();
+ this.CapTypeLabelXPower = new System.Windows.Forms.Label();
+ this.inCapLabelXPower = new System.Windows.Forms.Label();
+ this.outCapLabelXPower = new System.Windows.Forms.Label();
+ this.CapTypeLabelYPower = new System.Windows.Forms.Label();
+ this.inCapLabelYPower = new System.Windows.Forms.Label();
+ this.outCapLabelYPower = new System.Windows.Forms.Label();
+ this.CapTypeActiveXLabelPower = new System.Windows.Forms.Label();
+ this.CapTypeActiveYLabelPower = new System.Windows.Forms.Label();
+ this.InCapActiveXLabelPower = new System.Windows.Forms.Label();
+ this.OutCapActiveXLabelPower = new System.Windows.Forms.Label();
+ this.InCapActiveYLabelPower = new System.Windows.Forms.Label();
+ this.OutCapActiveYLabelPower = new System.Windows.Forms.Label();
this.optionsPanel.SuspendLayout();
this.DirectionalityPanel.SuspendLayout();
this.menuStrip1.SuspendLayout();
@@ -251,18 +269,36 @@ namespace grapher
// optionsPanel
//
this.optionsPanel.AutoSize = true;
- this.optionsPanel.Controls.Add(this.CapTypeActiveYLabel);
- this.optionsPanel.Controls.Add(this.CapTypeActiveXLabel);
- this.optionsPanel.Controls.Add(this.OutCapActiveYLabel);
- this.optionsPanel.Controls.Add(this.OutCapActiveXLabel);
- this.optionsPanel.Controls.Add(this.outCapLabelY);
- this.optionsPanel.Controls.Add(this.outCapLabelX);
- this.optionsPanel.Controls.Add(this.outCapBoxY);
- this.optionsPanel.Controls.Add(this.outCapBoxX);
- this.optionsPanel.Controls.Add(this.CapTypeLabelY);
- this.optionsPanel.Controls.Add(this.CapTypeLabelX);
- this.optionsPanel.Controls.Add(this.CapTypeDropdownY);
- this.optionsPanel.Controls.Add(this.CapTypeDropdownX);
+ this.optionsPanel.Controls.Add(this.OutCapActiveYLabelPower);
+ this.optionsPanel.Controls.Add(this.InCapActiveYLabelPower);
+ this.optionsPanel.Controls.Add(this.OutCapActiveXLabelPower);
+ this.optionsPanel.Controls.Add(this.InCapActiveXLabelPower);
+ this.optionsPanel.Controls.Add(this.CapTypeActiveYLabelPower);
+ this.optionsPanel.Controls.Add(this.CapTypeActiveXLabelPower);
+ this.optionsPanel.Controls.Add(this.outCapLabelYPower);
+ this.optionsPanel.Controls.Add(this.inCapLabelYPower);
+ this.optionsPanel.Controls.Add(this.CapTypeLabelYPower);
+ this.optionsPanel.Controls.Add(this.outCapLabelXPower);
+ this.optionsPanel.Controls.Add(this.inCapLabelXPower);
+ this.optionsPanel.Controls.Add(this.CapTypeLabelXPower);
+ this.optionsPanel.Controls.Add(this.outCapBoxYPower);
+ this.optionsPanel.Controls.Add(this.outCapBoxXPower);
+ this.optionsPanel.Controls.Add(this.inCapBoxYPower);
+ this.optionsPanel.Controls.Add(this.inCapBoxXPower);
+ this.optionsPanel.Controls.Add(this.CapTypeDropdownYPower);
+ this.optionsPanel.Controls.Add(this.CapTypeDropdownXPower);
+ this.optionsPanel.Controls.Add(this.CapTypeActiveYLabelClassic);
+ this.optionsPanel.Controls.Add(this.CapTypeActiveXLabelClassic);
+ this.optionsPanel.Controls.Add(this.OutCapActiveYLabelClassic);
+ this.optionsPanel.Controls.Add(this.OutCapActiveXLabelClassic);
+ this.optionsPanel.Controls.Add(this.outCapLabelYClassic);
+ this.optionsPanel.Controls.Add(this.outCapLabelXClassic);
+ this.optionsPanel.Controls.Add(this.outCapBoxYClassic);
+ this.optionsPanel.Controls.Add(this.outCapBoxXClassic);
+ this.optionsPanel.Controls.Add(this.CapTypeLabelYClassic);
+ this.optionsPanel.Controls.Add(this.CapTypeLabelXClassic);
+ this.optionsPanel.Controls.Add(this.CapTypeDropdownYClassic);
+ this.optionsPanel.Controls.Add(this.CapTypeDropdownXClassic);
this.optionsPanel.Controls.Add(this.VertHorzRatioLabel);
this.optionsPanel.Controls.Add(this.SmoothActiveYLabel);
this.optionsPanel.Controls.Add(this.smoothLabelY);
@@ -327,7 +363,7 @@ namespace grapher
this.optionsPanel.Controls.Add(this.limitLabelY);
this.optionsPanel.Controls.Add(this.offsetLabelY);
this.optionsPanel.Controls.Add(this.weightLabelY);
- this.optionsPanel.Controls.Add(this.inCapLabelY);
+ this.optionsPanel.Controls.Add(this.inCapLabelYClassic);
this.optionsPanel.Controls.Add(this.constantOneLabelY);
this.optionsPanel.Controls.Add(this.ByComponentXYLock);
this.optionsPanel.Controls.Add(this.MidpointActiveYLabel);
@@ -342,10 +378,10 @@ namespace grapher
this.optionsPanel.Controls.Add(this.MidpointActiveXLabel);
this.optionsPanel.Controls.Add(this.LimitActiveXLabel);
this.optionsPanel.Controls.Add(this.OffsetActiveXLabel);
- this.optionsPanel.Controls.Add(this.InCapActiveYLabel);
+ this.optionsPanel.Controls.Add(this.InCapActiveYLabelClassic);
this.optionsPanel.Controls.Add(this.WeightActiveYLabel);
this.optionsPanel.Controls.Add(this.WeightActiveXLabel);
- this.optionsPanel.Controls.Add(this.InCapActiveXLabel);
+ this.optionsPanel.Controls.Add(this.InCapActiveXLabelClassic);
this.optionsPanel.Controls.Add(this.AccelerationActiveLabelX);
this.optionsPanel.Controls.Add(this.AccelTypeActiveLabelX);
this.optionsPanel.Controls.Add(this.RotationActiveLabel);
@@ -355,7 +391,7 @@ namespace grapher
this.optionsPanel.Controls.Add(this.MouseLabel);
this.optionsPanel.Controls.Add(this.LockXYLabel);
this.optionsPanel.Controls.Add(this.sensXYLock);
- this.optionsPanel.Controls.Add(this.inCapBoxY);
+ this.optionsPanel.Controls.Add(this.inCapBoxYClassic);
this.optionsPanel.Controls.Add(this.VertHorzRatioBox);
this.optionsPanel.Controls.Add(this.writeButton);
this.optionsPanel.Controls.Add(this.offsetLabelX);
@@ -367,8 +403,8 @@ namespace grapher
this.optionsPanel.Controls.Add(this.weightBoxY);
this.optionsPanel.Controls.Add(this.weightLabelX);
this.optionsPanel.Controls.Add(this.weightBoxX);
- this.optionsPanel.Controls.Add(this.inCapLabelX);
- this.optionsPanel.Controls.Add(this.inCapBoxX);
+ this.optionsPanel.Controls.Add(this.inCapLabelXClassic);
+ this.optionsPanel.Controls.Add(this.inCapBoxXClassic);
this.optionsPanel.Controls.Add(this.constantOneLabelX);
this.optionsPanel.Controls.Add(this.accelerationBoxX);
this.optionsPanel.Controls.Add(this.rotationLabel);
@@ -384,6 +420,108 @@ namespace grapher
this.optionsPanel.Size = new System.Drawing.Size(483, 956);
this.optionsPanel.TabIndex = 34;
//
+ // CapTypeActiveYLabelClassic
+ //
+ this.CapTypeActiveYLabelClassic.AutoSize = true;
+ this.CapTypeActiveYLabelClassic.Location = new System.Drawing.Point(415, 732);
+ this.CapTypeActiveYLabelClassic.Name = "CapTypeActiveYLabelClassic";
+ this.CapTypeActiveYLabelClassic.Size = new System.Drawing.Size(16, 13);
+ this.CapTypeActiveYLabelClassic.TabIndex = 206;
+ this.CapTypeActiveYLabelClassic.Text = "In";
+ //
+ // CapTypeActiveXLabelClassic
+ //
+ this.CapTypeActiveXLabelClassic.AutoSize = true;
+ this.CapTypeActiveXLabelClassic.Location = new System.Drawing.Point(200, 728);
+ this.CapTypeActiveXLabelClassic.Name = "CapTypeActiveXLabelClassic";
+ this.CapTypeActiveXLabelClassic.Size = new System.Drawing.Size(16, 13);
+ this.CapTypeActiveXLabelClassic.TabIndex = 205;
+ this.CapTypeActiveXLabelClassic.Text = "In";
+ //
+ // OutCapActiveYLabelClassic
+ //
+ this.OutCapActiveYLabelClassic.AutoSize = true;
+ this.OutCapActiveYLabelClassic.Location = new System.Drawing.Point(414, 757);
+ this.OutCapActiveYLabelClassic.Name = "OutCapActiveYLabelClassic";
+ this.OutCapActiveYLabelClassic.Size = new System.Drawing.Size(13, 13);
+ this.OutCapActiveYLabelClassic.TabIndex = 204;
+ this.OutCapActiveYLabelClassic.Text = "0";
+ //
+ // OutCapActiveXLabelClassic
+ //
+ this.OutCapActiveXLabelClassic.AutoSize = true;
+ this.OutCapActiveXLabelClassic.Location = new System.Drawing.Point(200, 757);
+ this.OutCapActiveXLabelClassic.Name = "OutCapActiveXLabelClassic";
+ this.OutCapActiveXLabelClassic.Size = new System.Drawing.Size(13, 13);
+ this.OutCapActiveXLabelClassic.TabIndex = 203;
+ this.OutCapActiveXLabelClassic.Text = "0";
+ //
+ // outCapLabelYClassic
+ //
+ this.outCapLabelYClassic.AutoSize = true;
+ this.outCapLabelYClassic.Location = new System.Drawing.Point(262, 757);
+ this.outCapLabelYClassic.Name = "outCapLabelYClassic";
+ this.outCapLabelYClassic.Size = new System.Drawing.Size(64, 13);
+ this.outCapLabelYClassic.TabIndex = 202;
+ this.outCapLabelYClassic.Text = "Cap: Output";
+ //
+ // outCapLabelXClassic
+ //
+ this.outCapLabelXClassic.AutoSize = true;
+ this.outCapLabelXClassic.Location = new System.Drawing.Point(35, 757);
+ this.outCapLabelXClassic.Name = "outCapLabelXClassic";
+ this.outCapLabelXClassic.Size = new System.Drawing.Size(64, 13);
+ this.outCapLabelXClassic.TabIndex = 201;
+ this.outCapLabelXClassic.Text = "Cap: Output";
+ //
+ // outCapBoxYClassic
+ //
+ this.outCapBoxYClassic.Location = new System.Drawing.Point(332, 754);
+ this.outCapBoxYClassic.Name = "outCapBoxYClassic";
+ this.outCapBoxYClassic.Size = new System.Drawing.Size(76, 20);
+ this.outCapBoxYClassic.TabIndex = 200;
+ //
+ // outCapBoxXClassic
+ //
+ this.outCapBoxXClassic.Location = new System.Drawing.Point(106, 754);
+ this.outCapBoxXClassic.Name = "outCapBoxXClassic";
+ this.outCapBoxXClassic.Size = new System.Drawing.Size(76, 20);
+ this.outCapBoxXClassic.TabIndex = 199;
+ //
+ // CapTypeLabelYClassic
+ //
+ this.CapTypeLabelYClassic.AutoSize = true;
+ this.CapTypeLabelYClassic.Location = new System.Drawing.Point(263, 729);
+ this.CapTypeLabelYClassic.Name = "CapTypeLabelYClassic";
+ this.CapTypeLabelYClassic.Size = new System.Drawing.Size(53, 13);
+ this.CapTypeLabelYClassic.TabIndex = 198;
+ this.CapTypeLabelYClassic.Text = "Cap Type";
+ //
+ // CapTypeLabelXClassic
+ //
+ this.CapTypeLabelXClassic.AutoSize = true;
+ this.CapTypeLabelXClassic.Location = new System.Drawing.Point(38, 728);
+ this.CapTypeLabelXClassic.Name = "CapTypeLabelXClassic";
+ this.CapTypeLabelXClassic.Size = new System.Drawing.Size(53, 13);
+ this.CapTypeLabelXClassic.TabIndex = 197;
+ this.CapTypeLabelXClassic.Text = "Cap Type";
+ //
+ // CapTypeDropdownYClassic
+ //
+ this.CapTypeDropdownYClassic.FormattingEnabled = true;
+ this.CapTypeDropdownYClassic.Location = new System.Drawing.Point(332, 725);
+ this.CapTypeDropdownYClassic.Name = "CapTypeDropdownYClassic";
+ this.CapTypeDropdownYClassic.Size = new System.Drawing.Size(76, 21);
+ this.CapTypeDropdownYClassic.TabIndex = 196;
+ //
+ // CapTypeDropdownXClassic
+ //
+ this.CapTypeDropdownXClassic.FormattingEnabled = true;
+ this.CapTypeDropdownXClassic.Location = new System.Drawing.Point(106, 726);
+ this.CapTypeDropdownXClassic.Name = "CapTypeDropdownXClassic";
+ this.CapTypeDropdownXClassic.Size = new System.Drawing.Size(76, 21);
+ this.CapTypeDropdownXClassic.TabIndex = 195;
+ //
// VertHorzRatioLabel
//
this.VertHorzRatioLabel.AutoSize = true;
@@ -1122,14 +1260,14 @@ namespace grapher
this.weightLabelY.TabIndex = 134;
this.weightLabelY.Text = "Weight";
//
- // inCapLabelY
+ // inCapLabelYClassic
//
- this.inCapLabelY.AutoSize = true;
- this.inCapLabelY.Location = new System.Drawing.Point(263, 196);
- this.inCapLabelY.Name = "inCapLabelY";
- this.inCapLabelY.Size = new System.Drawing.Size(56, 13);
- this.inCapLabelY.TabIndex = 133;
- this.inCapLabelY.Text = "Cap: Input";
+ this.inCapLabelYClassic.AutoSize = true;
+ this.inCapLabelYClassic.Location = new System.Drawing.Point(263, 196);
+ this.inCapLabelYClassic.Name = "inCapLabelYClassic";
+ this.inCapLabelYClassic.Size = new System.Drawing.Size(56, 13);
+ this.inCapLabelYClassic.TabIndex = 133;
+ this.inCapLabelYClassic.Text = "Cap: Input";
//
// constantOneLabelY
//
@@ -1251,14 +1389,14 @@ namespace grapher
this.OffsetActiveXLabel.TabIndex = 125;
this.OffsetActiveXLabel.Text = "0";
//
- // InCapActiveYLabel
+ // InCapActiveYLabelClassic
//
- this.InCapActiveYLabel.AutoSize = true;
- this.InCapActiveYLabel.Location = new System.Drawing.Point(414, 196);
- this.InCapActiveYLabel.Name = "InCapActiveYLabel";
- this.InCapActiveYLabel.Size = new System.Drawing.Size(13, 13);
- this.InCapActiveYLabel.TabIndex = 124;
- this.InCapActiveYLabel.Text = "0";
+ this.InCapActiveYLabelClassic.AutoSize = true;
+ this.InCapActiveYLabelClassic.Location = new System.Drawing.Point(414, 196);
+ this.InCapActiveYLabelClassic.Name = "InCapActiveYLabelClassic";
+ this.InCapActiveYLabelClassic.Size = new System.Drawing.Size(13, 13);
+ this.InCapActiveYLabelClassic.TabIndex = 124;
+ this.InCapActiveYLabelClassic.Text = "0";
//
// WeightActiveYLabel
//
@@ -1278,14 +1416,14 @@ namespace grapher
this.WeightActiveXLabel.TabIndex = 122;
this.WeightActiveXLabel.Text = "0";
//
- // InCapActiveXLabel
+ // InCapActiveXLabelClassic
//
- this.InCapActiveXLabel.AutoSize = true;
- this.InCapActiveXLabel.Location = new System.Drawing.Point(197, 196);
- this.InCapActiveXLabel.Name = "InCapActiveXLabel";
- this.InCapActiveXLabel.Size = new System.Drawing.Size(13, 13);
- this.InCapActiveXLabel.TabIndex = 121;
- this.InCapActiveXLabel.Text = "0";
+ this.InCapActiveXLabelClassic.AutoSize = true;
+ this.InCapActiveXLabelClassic.Location = new System.Drawing.Point(197, 196);
+ this.InCapActiveXLabelClassic.Name = "InCapActiveXLabelClassic";
+ this.InCapActiveXLabelClassic.Size = new System.Drawing.Size(13, 13);
+ this.InCapActiveXLabelClassic.TabIndex = 121;
+ this.InCapActiveXLabelClassic.Text = "0";
//
// AccelerationActiveLabelX
//
@@ -1370,12 +1508,12 @@ namespace grapher
this.sensXYLock.TabIndex = 82;
this.sensXYLock.UseVisualStyleBackColor = true;
//
- // inCapBoxY
+ // inCapBoxYClassic
//
- this.inCapBoxY.Location = new System.Drawing.Point(332, 193);
- this.inCapBoxY.Name = "inCapBoxY";
- this.inCapBoxY.Size = new System.Drawing.Size(76, 20);
- this.inCapBoxY.TabIndex = 103;
+ this.inCapBoxYClassic.Location = new System.Drawing.Point(332, 193);
+ this.inCapBoxYClassic.Name = "inCapBoxYClassic";
+ this.inCapBoxYClassic.Size = new System.Drawing.Size(76, 20);
+ this.inCapBoxYClassic.TabIndex = 103;
//
// VertHorzRatioBox
//
@@ -1469,22 +1607,22 @@ namespace grapher
this.weightBoxX.Size = new System.Drawing.Size(76, 20);
this.weightBoxX.TabIndex = 90;
//
- // inCapLabelX
+ // inCapLabelXClassic
//
- this.inCapLabelX.AutoSize = true;
- this.inCapLabelX.Location = new System.Drawing.Point(37, 196);
- this.inCapLabelX.Name = "inCapLabelX";
- this.inCapLabelX.Size = new System.Drawing.Size(56, 13);
- this.inCapLabelX.TabIndex = 94;
- this.inCapLabelX.Text = "Cap: Input";
- this.inCapLabelX.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ this.inCapLabelXClassic.AutoSize = true;
+ this.inCapLabelXClassic.Location = new System.Drawing.Point(37, 196);
+ this.inCapLabelXClassic.Name = "inCapLabelXClassic";
+ this.inCapLabelXClassic.Size = new System.Drawing.Size(56, 13);
+ this.inCapLabelXClassic.TabIndex = 94;
+ this.inCapLabelXClassic.Text = "Cap: Input";
+ this.inCapLabelXClassic.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
//
- // inCapBoxX
+ // inCapBoxXClassic
//
- this.inCapBoxX.Location = new System.Drawing.Point(106, 193);
- this.inCapBoxX.Name = "inCapBoxX";
- this.inCapBoxX.Size = new System.Drawing.Size(76, 20);
- this.inCapBoxX.TabIndex = 89;
+ this.inCapBoxXClassic.Location = new System.Drawing.Point(106, 193);
+ this.inCapBoxXClassic.Name = "inCapBoxXClassic";
+ this.inCapBoxXClassic.Size = new System.Drawing.Size(76, 20);
+ this.inCapBoxXClassic.TabIndex = 89;
//
// constantOneLabelX
//
@@ -1911,107 +2049,157 @@ namespace grapher
title6.Text = "Sensitivity";
this.AccelerationChart.Titles.Add(title6);
//
- // CapTypeDropdownX
- //
- this.CapTypeDropdownX.FormattingEnabled = true;
- this.CapTypeDropdownX.Location = new System.Drawing.Point(106, 726);
- this.CapTypeDropdownX.Name = "CapTypeDropdownX";
- this.CapTypeDropdownX.Size = new System.Drawing.Size(76, 21);
- this.CapTypeDropdownX.TabIndex = 195;
- //
- // CapTypeDropdownY
- //
- this.CapTypeDropdownY.FormattingEnabled = true;
- this.CapTypeDropdownY.Location = new System.Drawing.Point(332, 725);
- this.CapTypeDropdownY.Name = "CapTypeDropdownY";
- this.CapTypeDropdownY.Size = new System.Drawing.Size(76, 21);
- this.CapTypeDropdownY.TabIndex = 196;
- //
- // CapTypeLabelX
- //
- this.CapTypeLabelX.AutoSize = true;
- this.CapTypeLabelX.Location = new System.Drawing.Point(38, 728);
- this.CapTypeLabelX.Name = "CapTypeLabelX";
- this.CapTypeLabelX.Size = new System.Drawing.Size(53, 13);
- this.CapTypeLabelX.TabIndex = 197;
- this.CapTypeLabelX.Text = "Cap Type";
- //
- // CapTypeLabelY
- //
- this.CapTypeLabelY.AutoSize = true;
- this.CapTypeLabelY.Location = new System.Drawing.Point(263, 729);
- this.CapTypeLabelY.Name = "CapTypeLabelY";
- this.CapTypeLabelY.Size = new System.Drawing.Size(53, 13);
- this.CapTypeLabelY.TabIndex = 198;
- this.CapTypeLabelY.Text = "Cap Type";
- //
- // outCapBoxX
- //
- this.outCapBoxX.Location = new System.Drawing.Point(106, 754);
- this.outCapBoxX.Name = "outCapBoxX";
- this.outCapBoxX.Size = new System.Drawing.Size(76, 20);
- this.outCapBoxX.TabIndex = 199;
- //
- // outCapBoxY
- //
- this.outCapBoxY.Location = new System.Drawing.Point(332, 754);
- this.outCapBoxY.Name = "outCapBoxY";
- this.outCapBoxY.Size = new System.Drawing.Size(76, 20);
- this.outCapBoxY.TabIndex = 200;
- //
- // outCapLabelX
- //
- this.outCapLabelX.AutoSize = true;
- this.outCapLabelX.Location = new System.Drawing.Point(35, 757);
- this.outCapLabelX.Name = "outCapLabelX";
- this.outCapLabelX.Size = new System.Drawing.Size(64, 13);
- this.outCapLabelX.TabIndex = 201;
- this.outCapLabelX.Text = "Cap: Output";
- //
- // outCapLabelY
+ // CapTypeDropdownXPower
//
- this.outCapLabelY.AutoSize = true;
- this.outCapLabelY.Location = new System.Drawing.Point(262, 757);
- this.outCapLabelY.Name = "outCapLabelY";
- this.outCapLabelY.Size = new System.Drawing.Size(64, 13);
- this.outCapLabelY.TabIndex = 202;
- this.outCapLabelY.Text = "Cap: Output";
+ this.CapTypeDropdownXPower.FormattingEnabled = true;
+ this.CapTypeDropdownXPower.Location = new System.Drawing.Point(106, 780);
+ this.CapTypeDropdownXPower.Name = "CapTypeDropdownXPower";
+ this.CapTypeDropdownXPower.Size = new System.Drawing.Size(76, 21);
+ this.CapTypeDropdownXPower.TabIndex = 207;
//
- // OutCapActiveXLabel
+ // CapTypeDropdownYPower
//
- this.OutCapActiveXLabel.AutoSize = true;
- this.OutCapActiveXLabel.Location = new System.Drawing.Point(200, 757);
- this.OutCapActiveXLabel.Name = "OutCapActiveXLabel";
- this.OutCapActiveXLabel.Size = new System.Drawing.Size(13, 13);
- this.OutCapActiveXLabel.TabIndex = 203;
- this.OutCapActiveXLabel.Text = "0";
+ this.CapTypeDropdownYPower.FormattingEnabled = true;
+ this.CapTypeDropdownYPower.Location = new System.Drawing.Point(332, 780);
+ this.CapTypeDropdownYPower.Name = "CapTypeDropdownYPower";
+ this.CapTypeDropdownYPower.Size = new System.Drawing.Size(76, 21);
+ this.CapTypeDropdownYPower.TabIndex = 208;
//
- // OutCapActiveYLabel
+ // inCapBoxXPower
//
- this.OutCapActiveYLabel.AutoSize = true;
- this.OutCapActiveYLabel.Location = new System.Drawing.Point(414, 757);
- this.OutCapActiveYLabel.Name = "OutCapActiveYLabel";
- this.OutCapActiveYLabel.Size = new System.Drawing.Size(13, 13);
- this.OutCapActiveYLabel.TabIndex = 204;
- this.OutCapActiveYLabel.Text = "0";
+ this.inCapBoxXPower.Location = new System.Drawing.Point(106, 807);
+ this.inCapBoxXPower.Name = "inCapBoxXPower";
+ this.inCapBoxXPower.Size = new System.Drawing.Size(76, 20);
+ this.inCapBoxXPower.TabIndex = 209;
+ //
+ // inCapBoxYPower
//
- // CapTypeActiveXLabel
+ this.inCapBoxYPower.Location = new System.Drawing.Point(332, 807);
+ this.inCapBoxYPower.Name = "inCapBoxYPower";
+ this.inCapBoxYPower.Size = new System.Drawing.Size(76, 20);
+ this.inCapBoxYPower.TabIndex = 210;
//
- this.CapTypeActiveXLabel.AutoSize = true;
- this.CapTypeActiveXLabel.Location = new System.Drawing.Point(200, 728);
- this.CapTypeActiveXLabel.Name = "CapTypeActiveXLabel";
- this.CapTypeActiveXLabel.Size = new System.Drawing.Size(16, 13);
- this.CapTypeActiveXLabel.TabIndex = 205;
- this.CapTypeActiveXLabel.Text = "In";
+ // outCapBoxXPower
+ //
+ this.outCapBoxXPower.Location = new System.Drawing.Point(106, 833);
+ this.outCapBoxXPower.Name = "outCapBoxXPower";
+ this.outCapBoxXPower.Size = new System.Drawing.Size(76, 20);
+ this.outCapBoxXPower.TabIndex = 211;
//
- // CapTypeActiveYLabel
+ // outCapBoxYPower
+ //
+ this.outCapBoxYPower.Location = new System.Drawing.Point(332, 834);
+ this.outCapBoxYPower.Name = "outCapBoxYPower";
+ this.outCapBoxYPower.Size = new System.Drawing.Size(76, 20);
+ this.outCapBoxYPower.TabIndex = 212;
+ //
+ // CapTypeLabelXPower
//
- this.CapTypeActiveYLabel.AutoSize = true;
- this.CapTypeActiveYLabel.Location = new System.Drawing.Point(415, 732);
- this.CapTypeActiveYLabel.Name = "CapTypeActiveYLabel";
- this.CapTypeActiveYLabel.Size = new System.Drawing.Size(16, 13);
- this.CapTypeActiveYLabel.TabIndex = 206;
- this.CapTypeActiveYLabel.Text = "In";
+ this.CapTypeLabelXPower.AutoSize = true;
+ this.CapTypeLabelXPower.Location = new System.Drawing.Point(40, 783);
+ this.CapTypeLabelXPower.Name = "CapTypeLabelXPower";
+ this.CapTypeLabelXPower.Size = new System.Drawing.Size(53, 13);
+ this.CapTypeLabelXPower.TabIndex = 213;
+ this.CapTypeLabelXPower.Text = "Cap Type";
+ //
+ // inCapLabelXPower
+ //
+ this.inCapLabelXPower.AutoSize = true;
+ this.inCapLabelXPower.Location = new System.Drawing.Point(38, 810);
+ this.inCapLabelXPower.Name = "inCapLabelXPower";
+ this.inCapLabelXPower.Size = new System.Drawing.Size(56, 13);
+ this.inCapLabelXPower.TabIndex = 214;
+ this.inCapLabelXPower.Text = "Cap: Input";
+ //
+ // outCapLabelXPower
+ //
+ this.outCapLabelXPower.AutoSize = true;
+ this.outCapLabelXPower.Location = new System.Drawing.Point(35, 836);
+ this.outCapLabelXPower.Name = "outCapLabelXPower";
+ this.outCapLabelXPower.Size = new System.Drawing.Size(64, 13);
+ this.outCapLabelXPower.TabIndex = 215;
+ this.outCapLabelXPower.Text = "Cap: Output";
+ //
+ // CapTypeLabelYPower
+ //
+ this.CapTypeLabelYPower.AutoSize = true;
+ this.CapTypeLabelYPower.Location = new System.Drawing.Point(262, 783);
+ this.CapTypeLabelYPower.Name = "CapTypeLabelYPower";
+ this.CapTypeLabelYPower.Size = new System.Drawing.Size(53, 13);
+ this.CapTypeLabelYPower.TabIndex = 216;
+ this.CapTypeLabelYPower.Text = "Cap Type";
+ //
+ // inCapLabelYPower
+ //
+ this.inCapLabelYPower.AutoSize = true;
+ this.inCapLabelYPower.Location = new System.Drawing.Point(262, 810);
+ this.inCapLabelYPower.Name = "inCapLabelYPower";
+ this.inCapLabelYPower.Size = new System.Drawing.Size(56, 13);
+ this.inCapLabelYPower.TabIndex = 217;
+ this.inCapLabelYPower.Text = "Cap: Input";
+ //
+ // outCapLabelYPower
+ //
+ this.outCapLabelYPower.AutoSize = true;
+ this.outCapLabelYPower.Location = new System.Drawing.Point(262, 837);
+ this.outCapLabelYPower.Name = "outCapLabelYPower";
+ this.outCapLabelYPower.Size = new System.Drawing.Size(64, 13);
+ this.outCapLabelYPower.TabIndex = 218;
+ this.outCapLabelYPower.Text = "Cap: Output";
+ //
+ // CapTypeActiveXLabelPower
+ //
+ this.CapTypeActiveXLabelPower.AutoSize = true;
+ this.CapTypeActiveXLabelPower.Location = new System.Drawing.Point(200, 788);
+ this.CapTypeActiveXLabelPower.Name = "CapTypeActiveXLabelPower";
+ this.CapTypeActiveXLabelPower.Size = new System.Drawing.Size(16, 13);
+ this.CapTypeActiveXLabelPower.TabIndex = 219;
+ this.CapTypeActiveXLabelPower.Text = "In";
+ //
+ // CapTypeActiveYLabelPower
+ //
+ this.CapTypeActiveYLabelPower.AutoSize = true;
+ this.CapTypeActiveYLabelPower.Location = new System.Drawing.Point(414, 783);
+ this.CapTypeActiveYLabelPower.Name = "CapTypeActiveYLabelPower";
+ this.CapTypeActiveYLabelPower.Size = new System.Drawing.Size(16, 13);
+ this.CapTypeActiveYLabelPower.TabIndex = 220;
+ this.CapTypeActiveYLabelPower.Text = "In";
+ //
+ // InCapActiveXLabelPower
+ //
+ this.InCapActiveXLabelPower.AutoSize = true;
+ this.InCapActiveXLabelPower.Location = new System.Drawing.Point(200, 810);
+ this.InCapActiveXLabelPower.Name = "InCapActiveXLabelPower";
+ this.InCapActiveXLabelPower.Size = new System.Drawing.Size(13, 13);
+ this.InCapActiveXLabelPower.TabIndex = 221;
+ this.InCapActiveXLabelPower.Text = "0";
+ //
+ // OutCapActiveXLabelPower
+ //
+ this.OutCapActiveXLabelPower.AutoSize = true;
+ this.OutCapActiveXLabelPower.Location = new System.Drawing.Point(200, 837);
+ this.OutCapActiveXLabelPower.Name = "OutCapActiveXLabelPower";
+ this.OutCapActiveXLabelPower.Size = new System.Drawing.Size(13, 13);
+ this.OutCapActiveXLabelPower.TabIndex = 222;
+ this.OutCapActiveXLabelPower.Text = "0";
+ //
+ // InCapActiveYLabelPower
+ //
+ this.InCapActiveYLabelPower.AutoSize = true;
+ this.InCapActiveYLabelPower.Location = new System.Drawing.Point(417, 810);
+ this.InCapActiveYLabelPower.Name = "InCapActiveYLabelPower";
+ this.InCapActiveYLabelPower.Size = new System.Drawing.Size(13, 13);
+ this.InCapActiveYLabelPower.TabIndex = 223;
+ this.InCapActiveYLabelPower.Text = "0";
+ //
+ // OutCapActiveYLabelPower
+ //
+ this.OutCapActiveYLabelPower.AutoSize = true;
+ this.OutCapActiveYLabelPower.Location = new System.Drawing.Point(414, 836);
+ this.OutCapActiveYLabelPower.Name = "OutCapActiveYLabelPower";
+ this.OutCapActiveYLabelPower.Size = new System.Drawing.Size(13, 13);
+ this.OutCapActiveYLabelPower.TabIndex = 224;
+ this.OutCapActiveYLabelPower.Text = "0";
//
// RawAcceleration
//
@@ -2064,7 +2252,7 @@ namespace grapher
private System.Windows.Forms.Label limitLabelY;
private System.Windows.Forms.Label offsetLabelY;
private System.Windows.Forms.Label weightLabelY;
- private System.Windows.Forms.Label inCapLabelY;
+ private System.Windows.Forms.Label inCapLabelYClassic;
private System.Windows.Forms.Label constantOneLabelY;
private System.Windows.Forms.CheckBox ByComponentXYLock;
private System.Windows.Forms.Label MidpointActiveYLabel;
@@ -2079,10 +2267,10 @@ namespace grapher
private System.Windows.Forms.Label MidpointActiveXLabel;
private System.Windows.Forms.Label LimitActiveXLabel;
private System.Windows.Forms.Label OffsetActiveXLabel;
- private System.Windows.Forms.Label InCapActiveYLabel;
+ private System.Windows.Forms.Label InCapActiveYLabelClassic;
private System.Windows.Forms.Label WeightActiveYLabel;
private System.Windows.Forms.Label WeightActiveXLabel;
- private System.Windows.Forms.Label InCapActiveXLabel;
+ private System.Windows.Forms.Label InCapActiveXLabelClassic;
private System.Windows.Forms.Label AccelerationActiveLabelX;
private System.Windows.Forms.Label AccelTypeActiveLabelX;
private System.Windows.Forms.Label RotationActiveLabel;
@@ -2092,7 +2280,7 @@ namespace grapher
private System.Windows.Forms.Label MouseLabel;
private System.Windows.Forms.Label LockXYLabel;
private System.Windows.Forms.CheckBox sensXYLock;
- private System.Windows.Forms.TextBox inCapBoxY;
+ private System.Windows.Forms.TextBox inCapBoxYClassic;
private System.Windows.Forms.TextBox VertHorzRatioBox;
private System.Windows.Forms.Button writeButton;
private System.Windows.Forms.Label offsetLabelX;
@@ -2104,8 +2292,8 @@ namespace grapher
private System.Windows.Forms.TextBox weightBoxY;
private System.Windows.Forms.Label weightLabelX;
private System.Windows.Forms.TextBox weightBoxX;
- private System.Windows.Forms.Label inCapLabelX;
- private System.Windows.Forms.TextBox inCapBoxX;
+ private System.Windows.Forms.Label inCapLabelXClassic;
+ private System.Windows.Forms.TextBox inCapBoxXClassic;
private System.Windows.Forms.Label constantOneLabelX;
private System.Windows.Forms.TextBox accelerationBoxX;
private System.Windows.Forms.Label rotationLabel;
@@ -2196,18 +2384,36 @@ namespace grapher
private System.Windows.Forms.TextBox smoothBoxY;
private System.Windows.Forms.TextBox smoothBoxX;
private System.Windows.Forms.Label VertHorzRatioLabel;
- private System.Windows.Forms.ComboBox CapTypeDropdownY;
- private System.Windows.Forms.ComboBox CapTypeDropdownX;
- private System.Windows.Forms.Label CapTypeLabelY;
- private System.Windows.Forms.Label CapTypeLabelX;
- private System.Windows.Forms.Label outCapLabelY;
- private System.Windows.Forms.Label outCapLabelX;
- private System.Windows.Forms.TextBox outCapBoxY;
- private System.Windows.Forms.TextBox outCapBoxX;
- private System.Windows.Forms.Label OutCapActiveXLabel;
- private System.Windows.Forms.Label OutCapActiveYLabel;
- private System.Windows.Forms.Label CapTypeActiveYLabel;
- private System.Windows.Forms.Label CapTypeActiveXLabel;
+ private System.Windows.Forms.ComboBox CapTypeDropdownYClassic;
+ private System.Windows.Forms.ComboBox CapTypeDropdownXClassic;
+ private System.Windows.Forms.Label CapTypeLabelYClassic;
+ private System.Windows.Forms.Label CapTypeLabelXClassic;
+ private System.Windows.Forms.Label outCapLabelYClassic;
+ private System.Windows.Forms.Label outCapLabelXClassic;
+ private System.Windows.Forms.TextBox outCapBoxYClassic;
+ private System.Windows.Forms.TextBox outCapBoxXClassic;
+ private System.Windows.Forms.Label OutCapActiveXLabelClassic;
+ private System.Windows.Forms.Label OutCapActiveYLabelClassic;
+ private System.Windows.Forms.Label CapTypeActiveYLabelClassic;
+ private System.Windows.Forms.Label CapTypeActiveXLabelClassic;
+ private System.Windows.Forms.ComboBox CapTypeDropdownYPower;
+ private System.Windows.Forms.ComboBox CapTypeDropdownXPower;
+ private System.Windows.Forms.Label OutCapActiveYLabelPower;
+ private System.Windows.Forms.Label InCapActiveYLabelPower;
+ private System.Windows.Forms.Label OutCapActiveXLabelPower;
+ private System.Windows.Forms.Label InCapActiveXLabelPower;
+ private System.Windows.Forms.Label CapTypeActiveYLabelPower;
+ private System.Windows.Forms.Label CapTypeActiveXLabelPower;
+ private System.Windows.Forms.Label outCapLabelYPower;
+ private System.Windows.Forms.Label inCapLabelYPower;
+ private System.Windows.Forms.Label CapTypeLabelYPower;
+ private System.Windows.Forms.Label outCapLabelXPower;
+ private System.Windows.Forms.Label inCapLabelXPower;
+ private System.Windows.Forms.Label CapTypeLabelXPower;
+ private System.Windows.Forms.TextBox outCapBoxYPower;
+ private System.Windows.Forms.TextBox outCapBoxXPower;
+ private System.Windows.Forms.TextBox inCapBoxYPower;
+ private System.Windows.Forms.TextBox inCapBoxXPower;
}
}
diff --git a/grapher/Form1.cs b/grapher/Form1.cs
index 9eb50cc..b41afc2 100644
--- a/grapher/Form1.cs
+++ b/grapher/Form1.cs
@@ -50,8 +50,10 @@ namespace grapher
accelTypeDropY,
XLutApplyDropdown,
YLutApplyDropdown,
- CapTypeDropdownX,
- CapTypeDropdownY,
+ CapTypeDropdownXClassic,
+ CapTypeDropdownYClassic,
+ CapTypeDropdownXPower,
+ CapTypeDropdownYPower,
writeButton,
toggleButton,
showVelocityGainToolStripMenuItem,
@@ -68,10 +70,14 @@ namespace grapher
rotationBox,
weightBoxX,
weightBoxY,
- inCapBoxX,
- inCapBoxY,
- outCapBoxX,
- outCapBoxY,
+ inCapBoxXClassic,
+ inCapBoxYClassic,
+ outCapBoxXClassic,
+ outCapBoxYClassic,
+ inCapBoxXPower,
+ inCapBoxYPower,
+ outCapBoxXPower,
+ outCapBoxYPower,
offsetBoxX,
offsetBoxY,
accelerationBoxX,
@@ -114,12 +120,18 @@ namespace grapher
rotationLabel,
weightLabelX,
weightLabelY,
- inCapLabelX,
- inCapLabelY,
- outCapLabelX,
- outCapLabelY,
- CapTypeLabelX,
- CapTypeLabelY,
+ inCapLabelXClassic,
+ inCapLabelYClassic,
+ outCapLabelXClassic,
+ outCapLabelYClassic,
+ CapTypeLabelXClassic,
+ CapTypeLabelYClassic,
+ inCapLabelXPower,
+ inCapLabelYPower,
+ outCapLabelXPower,
+ outCapLabelYPower,
+ CapTypeLabelXPower,
+ CapTypeLabelYPower,
offsetLabelX,
offsetLabelY,
constantOneLabelX,
@@ -149,12 +161,18 @@ namespace grapher
RotationActiveLabel,
WeightActiveXLabel,
WeightActiveYLabel,
- InCapActiveXLabel,
- InCapActiveYLabel,
- OutCapActiveXLabel,
- OutCapActiveYLabel,
- CapTypeActiveXLabel,
- CapTypeActiveYLabel,
+ InCapActiveXLabelClassic,
+ InCapActiveYLabelClassic,
+ OutCapActiveXLabelClassic,
+ OutCapActiveYLabelClassic,
+ CapTypeActiveXLabelClassic,
+ CapTypeActiveYLabelClassic,
+ InCapActiveXLabelPower,
+ InCapActiveYLabelPower,
+ OutCapActiveXLabelPower,
+ OutCapActiveYLabelPower,
+ CapTypeActiveXLabelPower,
+ CapTypeActiveYLabelPower,
OffsetActiveXLabel,
OffsetActiveYLabel,
AccelerationActiveLabelX,
diff --git a/grapher/Layouts/LayoutBase.cs b/grapher/Layouts/LayoutBase.cs
index f16be64..4a87504 100644
--- a/grapher/Layouts/LayoutBase.cs
+++ b/grapher/Layouts/LayoutBase.cs
@@ -14,7 +14,6 @@ namespace grapher.Layouts
public const string Midpoint = "Midpoint";
public const string Motivity = "Motivity";
public const string Offset = "Offset";
- public const string Cap = "Cap";
public const string CapType = "Cap Type";
public const string Weight = "Weight";
public const string Smooth = "Smooth";
@@ -109,7 +108,6 @@ namespace grapher.Layouts
(GainSwitchOptionLayout, gainSwitchOption),
(ClassicCapLayout, classicCapOption),
(PowerCapLayout, powerCapOption),
- (GainSwitchOptionLayout, gainSwitchOption),
(DecayRateLayout, decayRateOption),
(GrowthRateLayout, growthRateOption),
(SmoothLayout, smoothOption),
diff --git a/grapher/Layouts/LinearLayout.cs b/grapher/Layouts/LinearLayout.cs
index 36b0f74..63c5ff6 100644
--- a/grapher/Layouts/LinearLayout.cs
+++ b/grapher/Layouts/LinearLayout.cs
@@ -11,7 +11,6 @@ namespace grapher.Layouts
{
Name = LinearName;
Mode = AccelMode.classic;
- LogarithmicCharts = false;
GainSwitchOptionLayout = new OptionLayout(true, Gain);
ClassicCapLayout = new OptionLayout(true, CapType);
diff --git a/grapher/Models/AccelGUIFactory.cs b/grapher/Models/AccelGUIFactory.cs
index 156606e..4d0a483 100644
--- a/grapher/Models/AccelGUIFactory.cs
+++ b/grapher/Models/AccelGUIFactory.cs
@@ -28,8 +28,10 @@ namespace grapher.Models
ComboBox accelTypeDropY,
ComboBox lutApplyDropdownX,
ComboBox lutApplyDropdownY,
- ComboBox capTypeDropdownX,
- ComboBox capTypeDropdownY,
+ ComboBox capTypeDropdownXClassic,
+ ComboBox capTypeDropdownYClassic,
+ ComboBox capTypeDropdownXPower,
+ ComboBox capTypeDropdownYPower,
Button writeButton,
ButtonBase toggleButton,
ToolStripMenuItem showVelocityGainToolStripMenuItem,
@@ -46,10 +48,14 @@ namespace grapher.Models
TextBox rotationBox,
TextBox weightBoxX,
TextBox weightBoxY,
- TextBox inCapBoxX,
- TextBox inCapBoxY,
- TextBox outCapBoxX,
- TextBox outCapBoxY,
+ TextBox inCapBoxXClassic,
+ TextBox inCapBoxYClassic,
+ TextBox outCapBoxXClassic,
+ TextBox outCapBoxYClassic,
+ TextBox inCapBoxXPower,
+ TextBox inCapBoxYPower,
+ TextBox outCapBoxXPower,
+ TextBox outCapBoxYPower,
TextBox offsetBoxX,
TextBox offsetBoxY,
TextBox accelerationBoxX,
@@ -92,12 +98,18 @@ namespace grapher.Models
Label rotationLabel,
Label weightLabelX,
Label weightLabelY,
- Label inCapLabelX,
- Label inCapLabelY,
- Label outCapLabelX,
- Label outCapLabelY,
- Label capTypeLabelX,
- Label capTypeLabelY,
+ Label inCapLabelXClassic,
+ Label inCapLabelYClassic,
+ Label outCapLabelXClassic,
+ Label outCapLabelYClassic,
+ Label capTypeLabelXClassic,
+ Label capTypeLabelYClassic,
+ Label inCapLabelXPower,
+ Label inCapLabelYPower,
+ Label outCapLabelXPower,
+ Label outCapLabelYPower,
+ Label capTypeLabelXPower,
+ Label capTypeLabelYPower,
Label offsetLabelX,
Label offsetLabelY,
Label constantOneLabelX,
@@ -127,12 +139,18 @@ namespace grapher.Models
Label rotationActiveLabel,
Label weightActiveXLabel,
Label weightActiveYLabel,
- Label inCapActiveXLabel,
- Label inCapActiveYLabel,
- Label outCapActiveXLabel,
- Label outCapActiveYLabel,
- Label capTypeActiveXLabel,
- Label capTypeActiveYLabel,
+ Label inCapActiveXLabelClassic,
+ Label inCapActiveYLabelClassic,
+ Label outCapActiveXLabelClassic,
+ Label outCapActiveYLabelClassic,
+ Label capTypeActiveXLabelClassic,
+ Label capTypeActiveYLabelClassic,
+ Label inCapActiveXLabelPower,
+ Label inCapActiveYLabelPower,
+ Label outCapActiveXLabelPower,
+ Label outCapActiveYLabelPower,
+ Label capTypeActiveXLabelPower,
+ Label capTypeActiveYLabelPower,
Label offsetActiveLabelX,
Label offsetActiveLabelY,
Label accelerationActiveLabelX,
@@ -373,75 +391,125 @@ namespace grapher.Models
new ActiveValueLabel(midpointActiveLabelY, activeValueTitleY),
optionSetYLeft);
- var inCapX = new Option(
- inCapBoxX,
+ var inCapXClassic = new Option(
+ inCapBoxXClassic,
form,
0,
- inCapLabelX,
+ inCapLabelXClassic,
0,
- new ActiveValueLabel(inCapActiveXLabel, activeValueTitleX),
+ new ActiveValueLabel(inCapActiveXLabelClassic, activeValueTitleX),
"Cap: Input");
- var inCapY = new Option(
- inCapBoxY,
+ var inCapYClassic = new Option(
+ inCapBoxYClassic,
form,
0,
- inCapLabelY,
+ inCapLabelYClassic,
optionSetYLeft,
- new ActiveValueLabel(inCapActiveYLabel, activeValueTitleY),
+ new ActiveValueLabel(inCapActiveYLabelClassic, activeValueTitleY),
"Cap");
- var outCapX = new Option(
- outCapBoxX,
+ var outCapXClassic = new Option(
+ outCapBoxXClassic,
form,
0,
- outCapLabelX,
+ outCapLabelXClassic,
0,
- new ActiveValueLabel(outCapActiveXLabel, activeValueTitleX),
+ new ActiveValueLabel(outCapActiveXLabelClassic, activeValueTitleX),
"Cap: Input");
- var outCapY = new Option(
- outCapBoxY,
+ var outCapYClassic = new Option(
+ outCapBoxYClassic,
form,
0,
- outCapLabelY,
+ outCapLabelYClassic,
optionSetYLeft,
- new ActiveValueLabel(outCapActiveYLabel, activeValueTitleY),
+ new ActiveValueLabel(outCapActiveYLabelClassic, activeValueTitleY),
"Cap");
- var capTypeX = new CapTypeOptions(
- capTypeLabelX,
- capTypeDropdownX,
- new ActiveValueLabel(capTypeActiveXLabel, activeValueTitleX));
+ var capTypeXClassic = new CapTypeOptions(
+ capTypeLabelXClassic,
+ capTypeDropdownXClassic,
+ new ActiveValueLabel(capTypeActiveXLabelClassic, activeValueTitleX),
+ 0);
- var capTypeY = new CapTypeOptions(
- capTypeLabelY,
- capTypeDropdownY,
- new ActiveValueLabel(capTypeActiveYLabel, activeValueTitleY));
+ var capTypeYClassic = new CapTypeOptions(
+ capTypeLabelYClassic,
+ capTypeDropdownYClassic,
+ new ActiveValueLabel(capTypeActiveYLabelClassic, activeValueTitleY),
+ optionSetYLeft);
- var accelCapOptionsX = new CapOptions(
- capTypeX,
- inCapX,
- outCapX,
+ var classicCapOptionsX = new CapOptions(
+ capTypeXClassic,
+ inCapXClassic,
+ outCapXClassic,
accelerationX);
- var accelCapOptionsY = new CapOptions(
- capTypeY,
- inCapY,
- outCapY,
+ var classicCapOptionsY = new CapOptions(
+ capTypeYClassic,
+ inCapYClassic,
+ outCapYClassic,
accelerationY);
+ var inCapXPower = new Option(
+ inCapBoxXPower,
+ form,
+ 0,
+ inCapLabelXPower,
+ 0,
+ new ActiveValueLabel(inCapActiveXLabelPower, activeValueTitleX),
+ "Cap: Input");
+
+ var inCapYPower = new Option(
+ inCapBoxYPower,
+ form,
+ 0,
+ inCapLabelYPower,
+ optionSetYLeft,
+ new ActiveValueLabel(inCapActiveYLabelPower, activeValueTitleY),
+ "Cap");
+
+ var outCapXPower = new Option(
+ outCapBoxXPower,
+ form,
+ 0,
+ outCapLabelXPower,
+ 0,
+ new ActiveValueLabel(outCapActiveXLabelPower, activeValueTitleX),
+ "Cap: Input");
+
+ var outCapYPower = new Option(
+ outCapBoxYPower,
+ form,
+ 0,
+ outCapLabelYPower,
+ optionSetYLeft,
+ new ActiveValueLabel(outCapActiveYLabelPower, activeValueTitleY),
+ "Cap");
+
+ var capTypeXPower = new CapTypeOptions(
+ capTypeLabelXPower,
+ capTypeDropdownXPower,
+ new ActiveValueLabel(capTypeActiveXLabelPower, activeValueTitleX),
+ 0);
+
+ var capTypeYPower = new CapTypeOptions(
+ capTypeLabelYPower,
+ capTypeDropdownYPower,
+ new ActiveValueLabel(capTypeActiveYLabelPower, activeValueTitleY),
+ optionSetYLeft);
+
var powerCapOptionsX = new CapOptions(
- capTypeX,
- inCapX,
- outCapX,
- accelerationX);
+ capTypeXPower,
+ inCapXPower,
+ outCapXPower,
+ scaleX);
var powerCapOptionsY = new CapOptions(
- capTypeY,
- inCapY,
- outCapY,
- accelerationY);
+ capTypeYPower,
+ inCapYPower,
+ outCapYPower,
+ scaleY);
var lpNorm = new Option(
new Field(lpNormBox, form, 2),
@@ -486,7 +554,7 @@ namespace grapher.Models
var accelerationOptionsX = new AccelTypeOptions(
accelTypeDropX,
gainSwitchOptionX,
- accelCapOptionsX,
+ classicCapOptionsX,
powerCapOptionsX,
decayRateX,
growthRateX,
@@ -509,7 +577,7 @@ namespace grapher.Models
var accelerationOptionsY = new AccelTypeOptions(
accelTypeDropY,
gainSwitchOptionY,
- accelCapOptionsY,
+ classicCapOptionsY,
powerCapOptionsY,
decayRateY,
growthRateY,
diff --git a/grapher/Models/Options/AccelTypeOptions.cs b/grapher/Models/Options/AccelTypeOptions.cs
index 9086b41..3d2f840 100644
--- a/grapher/Models/Options/AccelTypeOptions.cs
+++ b/grapher/Models/Options/AccelTypeOptions.cs
@@ -2,10 +2,7 @@
using grapher.Models.Options;
using grapher.Models.Options.Cap;
using grapher.Models.Options.LUT;
-using grapher.Models.Serialized;
using System;
-using System.Collections.Generic;
-using System.Linq;
using System.Windows.Forms;
namespace grapher
diff --git a/grapher/Models/Options/Cap/CapOptions.cs b/grapher/Models/Options/Cap/CapOptions.cs
index e959dee..ac34abf 100644
--- a/grapher/Models/Options/Cap/CapOptions.cs
+++ b/grapher/Models/Options/Cap/CapOptions.cs
@@ -1,8 +1,4 @@
using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using System.Windows.Forms;
using static grapher.Models.Options.Cap.CapTypeOptions;
@@ -10,6 +6,20 @@ namespace grapher.Models.Options.Cap
{
public class CapOptions : OptionBase
{
+ #region Constants
+
+ public const string InCapLabel = "Cap: Input";
+ public const string OutCapLabel = "Cap: Output";
+
+ #endregion Constants
+
+ #region Fields
+
+ private int _top;
+
+ #endregion Fields
+
+ #region Constructors
public CapOptions(
CapTypeOptions capTypeOptions,
@@ -23,11 +33,16 @@ namespace grapher.Models.Options.Cap
Slope = slope;
ShouldShow = true;
- TopElement = Slope;
+ _top = Slope.Top;
BottomElement = In;
CapTypeOptions.OptionsDropdown.SelectedIndexChanged += OnCapTypeDropdownSelectedItemChanged;
+ CapTypeOptions.SelectedCapOption = InCap;
}
+ #endregion Constructors
+
+ #region Properties
+
public CapTypeOptions CapTypeOptions { get; }
public Option In { get; }
@@ -50,16 +65,17 @@ namespace grapher.Models.Options.Cap
public override int Top
{
- get => TopElement.Top;
+ get => _top;
set
{
+ _top = value;
Layout(value);
}
}
public override int Height
{
- get => BottomElement.Top + BottomElement.Height - TopElement.Top;
+ get => BottomElement.Top + BottomElement.Height - Top;
}
public override int Width
@@ -84,7 +100,9 @@ namespace grapher.Models.Options.Cap
private IOption BottomElement { get; set; }
- private IOption TopElement { get; set; }
+ #endregion Properties
+
+ #region Methods
public override void AlignActiveValues()
{
@@ -130,7 +148,7 @@ namespace grapher.Models.Options.Cap
{
Slope.Show();
CapTypeOptions.Show(name);
- In.Show();
+ ShowInCap();
Out.Hide();
}
@@ -138,7 +156,6 @@ namespace grapher.Models.Options.Cap
CapTypeOptions.SnapTo(Slope);
In.SnapTo(CapTypeOptions);
- TopElement = CapTypeOptions;
BottomElement = In;
break;
case CapType.Output:
@@ -147,14 +164,13 @@ namespace grapher.Models.Options.Cap
Slope.Show();
CapTypeOptions.Show(name);
In.Hide();
- Out.Show();
+ ShowOutCap();
}
Slope.Top = top;
CapTypeOptions.SnapTo(Slope);
Out.SnapTo(CapTypeOptions);
- TopElement = CapTypeOptions;
BottomElement = Out;
break;
case CapType.Both:
@@ -162,29 +178,35 @@ namespace grapher.Models.Options.Cap
{
CapTypeOptions.Show(name);
Slope.Hide();
- In.Show();
- Out.Show();
+ ShowInCap();
+ ShowOutCap();
}
CapTypeOptions.Top = top;
In.SnapTo(CapTypeOptions);
Out.SnapTo(In);
- TopElement = In;
BottomElement = Out;
break;
}
}
- private void OnCapTypeDropdownSelectedItemChanged(object sender, EventArgs e)
+ private void ShowInCap()
{
- Layout(Top);
+ In.Show(InCapLabel);
+ }
+
+ private void ShowOutCap()
+ {
+ Out.Show(OutCapLabel);
}
- private void SetupCapTypeDropdown(ComboBox capTypeDropDown)
+ private void OnCapTypeDropdownSelectedItemChanged(object sender, EventArgs e)
{
- capTypeDropDown.Items.Clear();
- capTypeDropDown.DataSource = Enum.GetValues(typeof(CapType));
+ Layout(Top);
+ CapTypeOptions.CheckIfDefault();
}
+
+ #endregion Methods
}
}
diff --git a/grapher/Models/Options/Cap/CapTypeOptions.cs b/grapher/Models/Options/Cap/CapTypeOptions.cs
index f0c5617..1e7bd58 100644
--- a/grapher/Models/Options/Cap/CapTypeOptions.cs
+++ b/grapher/Models/Options/Cap/CapTypeOptions.cs
@@ -64,7 +64,8 @@ namespace grapher.Models.Options.Cap
public CapTypeOptions(
Label label,
ComboBox dropdown,
- ActiveValueLabel activeValueLabel)
+ ActiveValueLabel activeValueLabel,
+ int left)
: base(
label,
dropdown,
@@ -77,6 +78,13 @@ namespace grapher.Models.Options.Cap
OutCap,
BothCap
});
+
+ Default = OutCap;
+
+ label.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
+ label.Left = left;
+ label.Width = OptionsDropdown.Left - left - Constants.OptionLabelBoxSeperation;
+ label.Height = OptionsDropdown.Height;
}
#endregion Constructors
@@ -97,6 +105,8 @@ namespace grapher.Models.Options.Cap
}
}
+ private CapTypeOption Default { get; set; }
+
public ClassicCapMode GetSelectedCapMode()
{
switch(SelectedCapType)
@@ -128,10 +138,23 @@ namespace grapher.Models.Options.Cap
public void SetActiveValue(ClassicCapMode capMode)
{
- SelectedCapOption = CapTypeOptionFromSettings(capMode);
+ Default = CapTypeOptionFromSettings(capMode);
+ SelectedCapOption = Default;
ActiveValueLabel.SetValue(SelectedCapOption.Name);
}
+ public void CheckIfDefault()
+ {
+ if (SelectedCapOption.Equals(Default))
+ {
+ OptionsDropdown.ForeColor = System.Drawing.Color.Gray;
+ }
+ else
+ {
+ OptionsDropdown.ForeColor = System.Drawing.Color.Black;
+ }
+ }
+
#endregion Methods
}
}
diff --git a/grapher/Models/Options/ComboBoxOptionsBase.cs b/grapher/Models/Options/ComboBoxOptionsBase.cs
index 64e0092..6999e99 100644
--- a/grapher/Models/Options/ComboBoxOptionsBase.cs
+++ b/grapher/Models/Options/ComboBoxOptionsBase.cs
@@ -1,9 +1,4 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Windows.Forms;
+using System.Windows.Forms;
namespace grapher.Models.Options
{
@@ -61,7 +56,7 @@ namespace grapher.Models.Options
{
get
{
- return Label.Height;
+ return OptionsDropdown.Height;
}
}
@@ -69,7 +64,7 @@ namespace grapher.Models.Options
{
get
{
- return Label.Top;
+ return OptionsDropdown.Top;
}
set
{