mirror of
https://github.com/osukey/osukey.git
synced 2025-05-07 22:57:31 +09:00
Improve performance of refreshes
This commit is contained in:
parent
712253ff50
commit
a19e26f8aa
@ -31,7 +31,7 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables.Connections
|
|||||||
protected override void LoadComplete()
|
protected override void LoadComplete()
|
||||||
{
|
{
|
||||||
base.LoadComplete();
|
base.LoadComplete();
|
||||||
bindHitObject(Start);
|
bindEvents(Start);
|
||||||
}
|
}
|
||||||
|
|
||||||
private DrawableOsuHitObject end;
|
private DrawableOsuHitObject end;
|
||||||
@ -48,20 +48,21 @@ namespace osu.Game.Rulesets.Osu.Objects.Drawables.Connections
|
|||||||
end = value;
|
end = value;
|
||||||
|
|
||||||
if (end != null)
|
if (end != null)
|
||||||
bindHitObject(end);
|
bindEvents(end);
|
||||||
|
|
||||||
refreshFollowPoints();
|
refresh();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void bindHitObject(DrawableOsuHitObject drawableObject)
|
private void bindEvents(DrawableOsuHitObject drawableObject)
|
||||||
{
|
{
|
||||||
drawableObject.HitObject.StartTimeBindable.BindValueChanged(_ => refreshFollowPoints());
|
drawableObject.HitObject.PositionBindable.BindValueChanged(_ => scheduleRefresh());
|
||||||
drawableObject.HitObject.PositionBindable.BindValueChanged(_ => refreshFollowPoints());
|
drawableObject.HitObject.DefaultsApplied += scheduleRefresh;
|
||||||
drawableObject.HitObject.DefaultsApplied += refreshFollowPoints;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void refreshFollowPoints()
|
private void scheduleRefresh() => Scheduler.AddOnce(refresh);
|
||||||
|
|
||||||
|
private void refresh()
|
||||||
{
|
{
|
||||||
ClearInternal();
|
ClearInternal();
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user