From 3cbec32cfa91bad661bc126b517faf78458a27a6 Mon Sep 17 00:00:00 2001 From: Jacob Palecki Date: Thu, 30 Jul 2020 01:13:24 -0700 Subject: Fully use acceloptions --- grapher/AccelOptions.cs | 101 ++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 98 insertions(+), 3 deletions(-) (limited to 'grapher/AccelOptions.cs') diff --git a/grapher/AccelOptions.cs b/grapher/AccelOptions.cs index 3aa6ef6..093ebe7 100644 --- a/grapher/AccelOptions.cs +++ b/grapher/AccelOptions.cs @@ -32,37 +32,132 @@ namespace grapher { Power, 6 }, }; - public AccelOptions(ComboBox accelDropdown) + public AccelOptions( + ComboBox accelDropdown, + Option constOptionOne, + Option constOptionTwo, + Option constOptionThree + ) { AccelDropdown = accelDropdown; AccelDropdown.Items.Clear(); AccelDropdown.Items.AddRange(TypeToIndex.Keys.ToArray()); + AccelDropdown.SelectedIndexChanged += new System.EventHandler(OnIndexChanged); + + ConstOptionOne = constOptionOne; + ConstOptionTwo = constOptionTwo; + ConstOptionThree = constOptionThree; } public ComboBox AccelDropdown { get; } public int AccelerationIndex { get; private set; } + public Option ConstOptionOne { get; } + + public Option ConstOptionTwo { get; } + + public Option ConstOptionThree { get; } + private void OnIndexChanged(object sender, EventArgs e) { var AccelerationType = AccelDropdown.SelectedItem.ToString(); AccelerationIndex = TypeToIndex[AccelerationType]; - /* switch (AccelerationType) { case Linear: LayoutLinear(); + break; + case Classic: + LayoutClassic(); + break; + case Natural: + LayoutNatural(); + break; + case Logarithmic: + LayoutLogarithmic(); + break; + case Sigmoid: + LayoutSigmoid(); + break; + case Power: + LayoutPower(); + break; default: LayoutDefault(); break; } - */ } private void LayoutDefault() { + ConstOptionOne.Show(); + ConstOptionTwo.Show(); + ConstOptionThree.Hide(); + + ConstOptionOne.SetName("Acceleration"); + ConstOptionTwo.SetName("Limit\\Exponent"); + } + + private void LayoutLinear() + { + ConstOptionOne.Show(); + ConstOptionTwo.Hide(); + ConstOptionThree.Hide(); + + ConstOptionOne.SetName("Acceleration"); + } + + private void LayoutClassic() + { + ConstOptionOne.Show(); + ConstOptionTwo.Show(); + ConstOptionThree.Hide(); + + ConstOptionOne.SetName("Acceleration"); + ConstOptionTwo.SetName("Exponent"); + } + + private void LayoutNatural() + { + ConstOptionOne.Show(); + ConstOptionTwo.Show(); + ConstOptionThree.Hide(); + + ConstOptionOne.SetName("Acceleration"); + ConstOptionOne.SetName("Limit"); + } + + private void LayoutLogarithmic() + { + ConstOptionOne.Show(); + ConstOptionTwo.Hide(); + ConstOptionThree.Hide(); + + ConstOptionOne.SetName("Acceleration"); + } + + + private void LayoutSigmoid() + { + ConstOptionOne.Show(); + ConstOptionTwo.Show(); + ConstOptionThree.Show(); + + ConstOptionOne.SetName("Acceleration"); + ConstOptionTwo.SetName("Limit"); + ConstOptionThree.SetName("Midpoint"); + } + + private void LayoutPower() + { + ConstOptionOne.Show(); + ConstOptionTwo.Show(); + ConstOptionThree.Hide(); + ConstOptionOne.SetName("Scale"); + ConstOptionTwo.SetName("Exponent"); } } } -- cgit v1.2.3