1
0
mirror of https://github.com/ppy/osu.git synced 2025-02-21 18:42:56 +08:00

Fix OverlayRulesetSelector don't have default colour

This commit is contained in:
Andrei Zavatski 2020-01-01 23:14:26 +03:00
parent b016238c16
commit 2d6a07e970
2 changed files with 25 additions and 18 deletions

View File

@ -25,6 +25,9 @@ namespace osu.Game.Tests.Visual.UserInterface
typeof(OverlayRulesetTabItem), typeof(OverlayRulesetTabItem),
}; };
[Resolved]
private OsuColour colours { get; set; }
private readonly OverlayRulesetSelector selector; private readonly OverlayRulesetSelector selector;
private readonly Bindable<RulesetInfo> ruleset = new Bindable<RulesetInfo>(); private readonly Bindable<RulesetInfo> ruleset = new Bindable<RulesetInfo>();
@ -38,31 +41,27 @@ namespace osu.Game.Tests.Visual.UserInterface
}); });
} }
[BackgroundDependencyLoader]
private void load(OsuColour colours)
{
selector.AccentColour = colours.Lime;
}
[Test] [Test]
public void TestSelection() public void TestSelection()
{ {
var osuRuleset = new OsuRuleset().RulesetInfo; AddStep("Select osu!", () => ruleset.Value = new OsuRuleset().RulesetInfo);
var maniaRuleset = new ManiaRuleset().RulesetInfo; AddAssert("Check osu! selected", () => selector.Current.Value.Equals(new OsuRuleset().RulesetInfo));
var taikoRuleset = new TaikoRuleset().RulesetInfo;
var catchRuleset = new CatchRuleset().RulesetInfo;
AddStep("Select osu!", () => ruleset.Value = osuRuleset); AddStep("Select mania", () => ruleset.Value = new ManiaRuleset().RulesetInfo);
AddAssert("Check osu! selected", () => selector.Current.Value == osuRuleset); AddAssert("Check mania selected", () => selector.Current.Value.Equals(new ManiaRuleset().RulesetInfo));
AddStep("Select mania", () => ruleset.Value = maniaRuleset); AddStep("Select taiko", () => ruleset.Value = new TaikoRuleset().RulesetInfo);
AddAssert("Check mania selected", () => selector.Current.Value == maniaRuleset); AddAssert("Check taiko selected", () => selector.Current.Value.Equals(new TaikoRuleset().RulesetInfo));
AddStep("Select taiko", () => ruleset.Value = taikoRuleset); AddStep("Select catch", () => ruleset.Value = new CatchRuleset().RulesetInfo);
AddAssert("Check taiko selected", () => selector.Current.Value == taikoRuleset); AddAssert("Check catch selected", () => selector.Current.Value.Equals(new CatchRuleset().RulesetInfo));
}
AddStep("Select catch", () => ruleset.Value = catchRuleset); [Test]
AddAssert("Check catch selected", () => selector.Current.Value == catchRuleset); public void TestColours()
{
AddStep("Set colour to blue", () => selector.AccentColour = colours.Blue);
AddAssert("Check colour is blue", () => selector.AccentColour == colours.Blue);
} }
} }
} }

View File

@ -1,6 +1,7 @@
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence. // Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
// See the LICENCE file in the repository root for full licence text. // See the LICENCE file in the repository root for full licence text.
using osu.Framework.Allocation;
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers; using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.UserInterface; using osu.Framework.Graphics.UserInterface;
@ -32,6 +33,13 @@ namespace osu.Game.Overlays
AutoSizeAxes = Axes.Both; AutoSizeAxes = Axes.Both;
} }
[BackgroundDependencyLoader]
private void load(OsuColour colours)
{
if (accentColour == default)
AccentColour = colours.Pink;
}
protected override TabItem<RulesetInfo> CreateTabItem(RulesetInfo value) => new OverlayRulesetTabItem(value); protected override TabItem<RulesetInfo> CreateTabItem(RulesetInfo value) => new OverlayRulesetTabItem(value);
protected override TabFillFlowContainer CreateTabFlow() => new TabFillFlowContainer protected override TabFillFlowContainer CreateTabFlow() => new TabFillFlowContainer