diff --git a/osu.Game.Tests/Visual/TestCaseSliderBarPercentage.cs b/osu.Game.Tests/Visual/TestCaseSliderBarPercentage.cs index ce32dbe889..8a64f7c9a4 100644 --- a/osu.Game.Tests/Visual/TestCaseSliderBarPercentage.cs +++ b/osu.Game.Tests/Visual/TestCaseSliderBarPercentage.cs @@ -103,7 +103,7 @@ namespace osu.Game.Tests.Visual } private class TestSliderBar<T> : OsuSliderBar<T> - where T : struct, IEquatable<T> + where T : struct, IEquatable<T>, IComparable, IConvertible { public TestSliderBar() { diff --git a/osu.Game.Tests/Visual/TestCaseSliderBarPrecision.cs b/osu.Game.Tests/Visual/TestCaseSliderBarPrecision.cs index c4b3a63bf2..af2b9be351 100644 --- a/osu.Game.Tests/Visual/TestCaseSliderBarPrecision.cs +++ b/osu.Game.Tests/Visual/TestCaseSliderBarPrecision.cs @@ -152,7 +152,7 @@ namespace osu.Game.Tests.Visual } private class TestSliderBar<T> : OsuSliderBar<T> - where T : struct, IEquatable<T> + where T : struct, IEquatable<T>, IComparable, IConvertible { public TestSliderBar() { diff --git a/osu.Game/Graphics/UserInterface/OsuSliderBar.cs b/osu.Game/Graphics/UserInterface/OsuSliderBar.cs index e3d9a89bf7..d42efe6678 100644 --- a/osu.Game/Graphics/UserInterface/OsuSliderBar.cs +++ b/osu.Game/Graphics/UserInterface/OsuSliderBar.cs @@ -18,7 +18,7 @@ using osu.Framework.Graphics.Shapes; namespace osu.Game.Graphics.UserInterface { public class OsuSliderBar<T> : SliderBar<T>, IHasTooltip, IHasAccentColour - where T : struct, IEquatable<T> + where T : struct, IEquatable<T>, IComparable, IConvertible { private SampleChannel sample; private double lastSampleTime; @@ -69,7 +69,7 @@ namespace osu.Game.Graphics.UserInterface if (bindableInt != null) return bindableInt.Value.ToString("N0"); - return Current.Value.ToString(); + return Current.Value.ToString(CultureInfo.InvariantCulture); } } diff --git a/osu.Game/Overlays/Settings/SettingsSlider.cs b/osu.Game/Overlays/Settings/SettingsSlider.cs index 43f1fa6a02..56aa77a24f 100644 --- a/osu.Game/Overlays/Settings/SettingsSlider.cs +++ b/osu.Game/Overlays/Settings/SettingsSlider.cs @@ -10,12 +10,12 @@ using osu.Game.Graphics.UserInterface; namespace osu.Game.Overlays.Settings { public class SettingsSlider<T> : SettingsSlider<T, OsuSliderBar<T>> - where T : struct, IEquatable<T> + where T : struct, IEquatable<T>, IComparable, IConvertible { } public class SettingsSlider<T, U> : SettingsItem<T> - where T : struct, IEquatable<T> + where T : struct, IEquatable<T>, IComparable, IConvertible where U : OsuSliderBar<T>, new() { protected override Drawable CreateControl() => new U diff --git a/osu.Game/Screens/Play/ReplaySettings/ReplaySliderBar.cs b/osu.Game/Screens/Play/ReplaySettings/ReplaySliderBar.cs index e6e909183d..724f28dadf 100644 --- a/osu.Game/Screens/Play/ReplaySettings/ReplaySliderBar.cs +++ b/osu.Game/Screens/Play/ReplaySettings/ReplaySliderBar.cs @@ -11,7 +11,7 @@ using osu.Game.Overlays.Settings; namespace osu.Game.Screens.Play.ReplaySettings { public class ReplaySliderBar<T> : SettingsSlider<T> - where T : struct, IEquatable<T> + where T : struct, IEquatable<T>, IComparable, IConvertible { protected override Drawable CreateControl() => new Sliderbar {