1
0
mirror of https://github.com/ppy/osu.git synced 2025-03-04 05:22:54 +08:00

Use IBindable where possible

This commit is contained in:
Dean Herbert 2018-06-29 20:28:28 +09:00
parent 9fce4eaccf
commit 06bd3d4815
2 changed files with 6 additions and 7 deletions

View File

@ -62,7 +62,7 @@ namespace osu.Game.Screens.Select
Sort = sort, Sort = sort,
SearchText = searchTextBox.Text, SearchText = searchTextBox.Text,
AllowConvertedBeatmaps = showConverted, AllowConvertedBeatmaps = showConverted,
Ruleset = ruleset Ruleset = ruleset.Value
}; };
public Action Exit; public Action Exit;
@ -163,14 +163,14 @@ namespace osu.Game.Screens.Select
searchTextBox.HoldFocus = true; searchTextBox.HoldFocus = true;
} }
private readonly Bindable<RulesetInfo> ruleset = new Bindable<RulesetInfo>(); private readonly IBindable<RulesetInfo> ruleset = new Bindable<RulesetInfo>();
private Bindable<bool> showConverted; private Bindable<bool> showConverted;
public readonly Box Background; public readonly Box Background;
[BackgroundDependencyLoader(permitNulls: true)] [BackgroundDependencyLoader(permitNulls: true)]
private void load(OsuColour colours, Bindable<RulesetInfo> parentRuleset, OsuConfigManager config) private void load(OsuColour colours, IBindable<RulesetInfo> parentRuleset, OsuConfigManager config)
{ {
sortTabs.AccentColour = colours.GreenLight; sortTabs.AccentColour = colours.GreenLight;
@ -179,8 +179,7 @@ namespace osu.Game.Screens.Select
if (parentRuleset != null) if (parentRuleset != null)
ruleset.BindTo(parentRuleset); ruleset.BindTo(parentRuleset);
ruleset.ValueChanged += val => updateCriteria(); ruleset.BindValueChanged(val => updateCriteria(), true);
ruleset.TriggerChange();
} }
private void updateCriteria() => FilterChanged?.Invoke(CreateCriteria()); private void updateCriteria() => FilterChanged?.Invoke(CreateCriteria());

View File

@ -32,7 +32,7 @@ namespace osu.Game.Screens.Select.Leaderboards
private FillFlowContainer<LeaderboardScore> scrollFlow; private FillFlowContainer<LeaderboardScore> scrollFlow;
private readonly Bindable<RulesetInfo> ruleset = new Bindable<RulesetInfo>(); private readonly IBindable<RulesetInfo> ruleset = new Bindable<RulesetInfo>();
public Action<Score> ScoreSelected; public Action<Score> ScoreSelected;
@ -192,7 +192,7 @@ namespace osu.Game.Screens.Select.Leaderboards
} }
[BackgroundDependencyLoader(permitNulls: true)] [BackgroundDependencyLoader(permitNulls: true)]
private void load(APIAccess api, Bindable<RulesetInfo> parentRuleset) private void load(APIAccess api, IBindable<RulesetInfo> parentRuleset)
{ {
this.api = api; this.api = api;