Adjust scrubbing behaviour to allow dragging through rate values

This commit is contained in:
Ronnie Moir 2021-02-23 15:52:53 +00:00
parent f45cedeb85
commit a6e840634b
2 changed files with 8 additions and 8 deletions

View File

@ -20,7 +20,7 @@ public class ModWindDown : ModTimeRamp
[SettingSource("Initial rate", "The starting speed of the track")]
public override BindableNumber<double> InitialRate { get; } = new BindableDouble
{
MinValue = 0.5,
MinValue = 0.51,
MaxValue = 2,
Default = 1,
Value = 1,
@ -31,7 +31,7 @@ public class ModWindDown : ModTimeRamp
public override BindableNumber<double> FinalRate { get; } = new BindableDouble
{
MinValue = 0.5,
MaxValue = 2,
MaxValue = 1.99,
Default = 0.75,
Value = 0.75,
Precision = 0.01,
@ -49,10 +49,10 @@ public class ModWindDown : ModTimeRamp
public ModWindDown()
{
InitialRate.BindValueChanged(val =>
InitialRate.Value = Math.Max(val.NewValue, FinalRate.Value + 0.01));
FinalRate.Value = Math.Min(FinalRate.Value, val.NewValue - 0.01));
FinalRate.BindValueChanged(val =>
FinalRate.Value = Math.Min(val.NewValue, InitialRate.Value - 0.01));
InitialRate.Value = Math.Max(InitialRate.Value, val.NewValue + 0.01));
}
}
}

View File

@ -21,7 +21,7 @@ public class ModWindUp : ModTimeRamp
public override BindableNumber<double> InitialRate { get; } = new BindableDouble
{
MinValue = 0.5,
MaxValue = 2,
MaxValue = 1.99,
Default = 1,
Value = 1,
Precision = 0.01,
@ -30,7 +30,7 @@ public class ModWindUp : ModTimeRamp
[SettingSource("Final rate", "The speed increase to ramp towards")]
public override BindableNumber<double> FinalRate { get; } = new BindableDouble
{
MinValue = 0.5,
MinValue = 0.51,
MaxValue = 2,
Default = 1.5,
Value = 1.5,
@ -49,10 +49,10 @@ public class ModWindUp : ModTimeRamp
public ModWindUp()
{
InitialRate.BindValueChanged(val =>
InitialRate.Value = Math.Min(val.NewValue, FinalRate.Value - 0.01));
FinalRate.Value = Math.Max(FinalRate.Value, val.NewValue + 0.01));
FinalRate.BindValueChanged(val =>
FinalRate.Value = Math.Max(val.NewValue, InitialRate.Value + 0.01));
InitialRate.Value = Math.Min(InitialRate.Value, val.NewValue - 0.01));
}
}
}