diff options
| author | Jacob Palecki <[email protected]> | 2021-09-15 23:16:43 -0700 |
|---|---|---|
| committer | a1xd <[email protected]> | 2021-09-23 22:34:51 -0400 |
| commit | 8878091a2cab77b0433daea7a47033e1c35e42c1 (patch) | |
| tree | 58dd2c7ee901acd809230a1bc86d6fd5b569593a | |
| parent | Mostly working cap type in GUI (diff) | |
| download | rawaccel-8878091a2cab77b0433daea7a47033e1c35e42c1.tar.xz rawaccel-8878091a2cab77b0433daea7a47033e1c35e42c1.zip | |
Cap type options now fully working
| -rw-r--r-- | grapher/Form1.Designer.cs | 576 | ||||
| -rw-r--r-- | grapher/Form1.cs | 54 | ||||
| -rw-r--r-- | grapher/Layouts/LayoutBase.cs | 2 | ||||
| -rw-r--r-- | grapher/Layouts/LinearLayout.cs | 1 | ||||
| -rw-r--r-- | grapher/Models/AccelGUIFactory.cs | 188 | ||||
| -rw-r--r-- | grapher/Models/Options/AccelTypeOptions.cs | 3 | ||||
| -rw-r--r-- | grapher/Models/Options/Cap/CapOptions.cs | 62 | ||||
| -rw-r--r-- | grapher/Models/Options/Cap/CapTypeOptions.cs | 27 | ||||
| -rw-r--r-- | grapher/Models/Options/ComboBoxOptionsBase.cs | 11 |
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 { |