Expose distance spacing in IPositionSnapProvider for updating distance grid

Alternate method is to expose a `SnapDistancesChanged` event in
`IPositionSnapProvider` instead, but I chose this way as an analogue to
`IBeatSnapProvider.BeatDivisor`, which might even make sense to be
exposed as `BindableBeatDivisor` instead of caching that separately.
This commit is contained in:
Salman Ahmed
2022-01-18 15:25:32 +03:00
parent 19ee05c232
commit 528dc03b8c
7 changed files with 27 additions and 0 deletions

View File

@ -3,6 +3,7 @@
using NUnit.Framework;
using osu.Framework.Allocation;
using osu.Framework.Bindables;
using osu.Framework.Graphics;
using osu.Framework.Graphics.Shapes;
using osu.Game.Beatmaps.ControlPoints;
@ -166,6 +167,8 @@ namespace osu.Game.Tests.Visual.Editing
public SnapResult SnapScreenSpacePositionToValidTime(Vector2 screenSpacePosition) => new SnapResult(screenSpacePosition, 0);
public IBindable<float> DistanceSpacingMultiplier { get; } = new BindableFloat(1);
public float GetBeatSnapDistanceAt(HitObject referenceObject) => 10;
public float DurationToDistance(HitObject referenceObject, double duration) => (float)duration;