mirror of
https://github.com/ppy/osu.git
synced 2025-01-14 19:22:56 +08:00
Merge pull request #7910 from EVAST9919/rankings-clickable-countries
Make country names in RankingsOverlay clickable
This commit is contained in:
commit
eb8a56055f
@ -29,8 +29,8 @@ namespace osu.Game.Tests.Visual.Online
|
|||||||
typeof(RankingsOverlayHeader)
|
typeof(RankingsOverlayHeader)
|
||||||
};
|
};
|
||||||
|
|
||||||
[Cached]
|
[Cached(typeof(RankingsOverlay))]
|
||||||
private RankingsOverlay rankingsOverlay;
|
private readonly RankingsOverlay rankingsOverlay;
|
||||||
|
|
||||||
private readonly Bindable<Country> countryBindable = new Bindable<Country>();
|
private readonly Bindable<Country> countryBindable = new Bindable<Country>();
|
||||||
private readonly Bindable<RankingsScope> scope = new Bindable<RankingsScope>();
|
private readonly Bindable<RankingsScope> scope = new Bindable<RankingsScope>();
|
||||||
|
@ -9,6 +9,7 @@ using osu.Game.Graphics.Sprites;
|
|||||||
using osu.Game.Graphics;
|
using osu.Game.Graphics;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using osu.Framework.Allocation;
|
using osu.Framework.Allocation;
|
||||||
|
using osu.Game.Graphics.Containers;
|
||||||
|
|
||||||
namespace osu.Game.Overlays.Rankings.Tables
|
namespace osu.Game.Overlays.Rankings.Tables
|
||||||
{
|
{
|
||||||
@ -61,18 +62,35 @@ namespace osu.Game.Overlays.Rankings.Tables
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
private class CountryName : OsuSpriteText
|
private class CountryName : OsuHoverContainer
|
||||||
{
|
{
|
||||||
|
protected override IEnumerable<Drawable> EffectTargets => new[] { text };
|
||||||
|
|
||||||
|
[Resolved(canBeNull: true)]
|
||||||
|
private RankingsOverlay rankings { get; set; }
|
||||||
|
|
||||||
|
private readonly OsuSpriteText text;
|
||||||
|
private readonly Country country;
|
||||||
|
|
||||||
public CountryName(Country country)
|
public CountryName(Country country)
|
||||||
{
|
{
|
||||||
Font = OsuFont.GetFont(size: 12);
|
this.country = country;
|
||||||
Text = country.FullName ?? string.Empty;
|
|
||||||
|
AutoSizeAxes = Axes.Both;
|
||||||
|
Add(text = new OsuSpriteText
|
||||||
|
{
|
||||||
|
Font = OsuFont.GetFont(size: 12),
|
||||||
|
Text = country.FullName ?? string.Empty,
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
[BackgroundDependencyLoader]
|
[BackgroundDependencyLoader]
|
||||||
private void load(OverlayColourProvider colourProvider)
|
private void load(OverlayColourProvider colourProvider)
|
||||||
{
|
{
|
||||||
Colour = colourProvider.Light2;
|
IdleColour = colourProvider.Light2;
|
||||||
|
HoverColour = colourProvider.Content2;
|
||||||
|
|
||||||
|
Action = () => rankings?.ShowCountry(country);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user