Path: blob/master/osu.Game/Rulesets/Edit/ExpandableSpriteText.cs
2264 views
// Copyright (c) ppy Pty Ltd <[email protected]>. Licensed under the MIT Licence. // See the LICENCE file in the repository root for full licence text. using osu.Framework.Allocation; using osu.Framework.Bindables; using osu.Framework.Graphics; using osu.Game.Graphics.Containers; using osu.Game.Graphics.Sprites; namespace osu.Game.Rulesets.Edit { internal partial class ExpandableSpriteText : OsuSpriteText, IExpandable { public BindableBool Expanded { get; } = new BindableBool(); [Resolved(canBeNull: true)] private IExpandingContainer? expandingContainer { get; set; } protected override void LoadComplete() { base.LoadComplete(); expandingContainer?.Expanded.BindValueChanged(containerExpanded => { Expanded.Value = containerExpanded.NewValue; }, true); Expanded.BindValueChanged(expanded => { this.FadeTo(expanded.NewValue ? 1 : 0, 150, Easing.OutQuint); }, true); } } }