summaryrefslogtreecommitdiff
path: root/grapher/Models
diff options
context:
space:
mode:
authorJacob Palecki <[email protected]>2021-04-07 01:05:59 -0700
committerJacob Palecki <[email protected]>2021-04-07 01:05:59 -0700
commit5e858b059436375ed1c17f7dc1b3e47a7e8e1d5d (patch)
treeea56892ee71c0d245d99c348676e84b10928013c /grapher/Models
parentnatural legacy algorithm was correct, leave as it was (diff)
downloadrawaccel-5e858b059436375ed1c17f7dc1b3e47a7e8e1d5d.tar.xz
rawaccel-5e858b059436375ed1c17f7dc1b3e47a7e8e1d5d.zip
Add active value labels for gain switch
Diffstat (limited to 'grapher/Models')
-rw-r--r--grapher/Models/AccelGUI.cs1
-rw-r--r--grapher/Models/AccelGUIFactory.cs10
-rw-r--r--grapher/Models/Options/AccelTypeOptions.cs5
-rw-r--r--grapher/Models/Options/CheckBoxOption.cs18
4 files changed, 30 insertions, 4 deletions
diff --git a/grapher/Models/AccelGUI.cs b/grapher/Models/AccelGUI.cs
index 9ed2cb9..ec570d3 100644
--- a/grapher/Models/AccelGUI.cs
+++ b/grapher/Models/AccelGUI.cs
@@ -154,6 +154,7 @@ namespace grapher
{
UpdateGraph();
UpdateInputManagers();
+ UpdateShownActiveValues(Settings.UserSettings);
}
public void RefreshUser()
diff --git a/grapher/Models/AccelGUIFactory.cs b/grapher/Models/AccelGUIFactory.cs
index 6bfc510..73be939 100644
--- a/grapher/Models/AccelGUIFactory.cs
+++ b/grapher/Models/AccelGUIFactory.cs
@@ -110,6 +110,8 @@ namespace grapher.Models
Label midpointActiveLabelY,
Label accelTypeActiveLabelX,
Label accelTypeActiveLabelY,
+ Label gainSwitchActiveLabelX,
+ Label gainSwitchActiveLabelY,
Label optionSetXTitle,
Label optionSetYTitle,
Label mouseLabel,
@@ -315,8 +317,12 @@ namespace grapher.Models
var lutTextX = new TextOption(lutTextLabelX);
var lutTextY = new TextOption(lutTextLabelY);
- var gainSwitchOptionX = new CheckBoxOption(gainSwitchX);
- var gainSwitchOptionY = new CheckBoxOption(gainSwitchY);
+ var gainSwitchOptionX = new CheckBoxOption(
+ gainSwitchX,
+ new ActiveValueLabel(gainSwitchActiveLabelX, activeValueTitleX));
+ var gainSwitchOptionY = new CheckBoxOption(
+ gainSwitchY,
+ new ActiveValueLabel(gainSwitchActiveLabelY, activeValueTitleY));
var accelerationOptionsX = new AccelTypeOptions(
accelTypeDropX,
diff --git a/grapher/Models/Options/AccelTypeOptions.cs b/grapher/Models/Options/AccelTypeOptions.cs
index a271ea4..b12ad8a 100644
--- a/grapher/Models/Options/AccelTypeOptions.cs
+++ b/grapher/Models/Options/AccelTypeOptions.cs
@@ -205,8 +205,10 @@ namespace grapher
{
AccelerationType = AccelTypeFromSettings(args);
AccelTypeActiveValue.SetValue(AccelerationType.Name);
- AccelDropdown.SelectedIndex = AccelerationType.Index;
+ // Add one to include linear, which is not represented separately in the config
+ AccelDropdown.SelectedIndex = AccelerationType.Index + 1;
+ GainSwitch.SetActiveValue(args.legacy);
Weight.SetActiveValue(args.weight);
Cap.SetActiveValue(args.cap);
Offset.SetActiveValue(args.offset);
@@ -281,6 +283,7 @@ namespace grapher
public override void AlignActiveValues()
{
AccelTypeActiveValue.Align();
+ GainSwitch.AlignActiveValues();
Acceleration.AlignActiveValues();
Scale.AlignActiveValues();
Cap.AlignActiveValues();
diff --git a/grapher/Models/Options/CheckBoxOption.cs b/grapher/Models/Options/CheckBoxOption.cs
index 83b2d7a..abf96d3 100644
--- a/grapher/Models/Options/CheckBoxOption.cs
+++ b/grapher/Models/Options/CheckBoxOption.cs
@@ -4,14 +4,19 @@ namespace grapher.Models.Options
{
public class CheckBoxOption : OptionBase
{
- public CheckBoxOption(CheckBox checkBox)
+ public CheckBoxOption(
+ CheckBox checkBox,
+ ActiveValueLabel activeValueLabel)
{
CheckBox = checkBox;
+ ActiveValueLabel = activeValueLabel;
Show(string.Empty);
}
public CheckBox CheckBox { get; }
+ public ActiveValueLabel ActiveValueLabel { get; }
+
public override bool Visible
{
get
@@ -49,6 +54,7 @@ namespace grapher.Models.Options
set
{
CheckBox.Top = value;
+ ActiveValueLabel.Top = value;
}
}
@@ -73,6 +79,7 @@ namespace grapher.Models.Options
public override void AlignActiveValues()
{
+ ActiveValueLabel.Align();
}
public override void Hide()
@@ -80,6 +87,7 @@ namespace grapher.Models.Options
CheckBox.Hide();
ShouldShow = false;
CheckBox.Enabled = false;
+ ActiveValueLabel.Hide();
}
public override void Show(string Name)
@@ -88,6 +96,14 @@ namespace grapher.Models.Options
ShouldShow = true;
CheckBox.Enabled = true;
CheckBox.Name = Name;
+ ActiveValueLabel.Show();
+ }
+
+ public void SetActiveValue(bool legacy)
+ {
+ CheckBox.Checked = !legacy;
+ var activeValueString = legacy ? "Legacy" : "Gain";
+ ActiveValueLabel.SetValue(activeValueString);
}
}
}