1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-22 17:27:39 +08:00

Merge pull request #5205 from UselessToucan/flow_container_insert

Make FlowContainer insertions cleaner
This commit is contained in:
Dean Herbert 2019-07-11 23:13:58 +09:00 committed by GitHub
commit 3be5aff82d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 14 additions and 31 deletions

View File

@ -92,25 +92,17 @@ namespace osu.Game.Overlays.Changelog
}); });
} }
NavigationIconButton left, right; fill.Insert(-1, new NavigationIconButton(Build.Versions?.Previous)
fill.AddRange(new[]
{
left = new NavigationIconButton(Build.Versions?.Previous)
{ {
Icon = FontAwesome.Solid.ChevronLeft, Icon = FontAwesome.Solid.ChevronLeft,
SelectBuild = b => SelectBuild(b) SelectBuild = b => SelectBuild(b)
}, });
right = new NavigationIconButton(Build.Versions?.Next) fill.Insert(1, new NavigationIconButton(Build.Versions?.Next)
{ {
Icon = FontAwesome.Solid.ChevronRight, Icon = FontAwesome.Solid.ChevronRight,
SelectBuild = b => SelectBuild(b) SelectBuild = b => SelectBuild(b)
},
}); });
fill.SetLayoutPosition(left, -1);
fill.SetLayoutPosition(right, 1);
return fill; return fill;
} }
} }

View File

@ -85,10 +85,7 @@ namespace osu.Game.Overlays.Music
private void addBeatmapSet(BeatmapSetInfo obj) => Schedule(() => private void addBeatmapSet(BeatmapSetInfo obj) => Schedule(() =>
{ {
var newItem = new PlaylistItem(obj) { OnSelect = set => Selected?.Invoke(set) }; items.Insert(items.Count - 1, new PlaylistItem(obj) { OnSelect = set => Selected?.Invoke(set) });
items.Add(newItem);
items.SetLayoutPosition(newItem, items.Count - 1);
}); });
private void removeBeatmapSet(BeatmapSetInfo obj) => Schedule(() => private void removeBeatmapSet(BeatmapSetInfo obj) => Schedule(() =>

View File

@ -26,8 +26,7 @@ namespace osu.Game.Overlays.Notifications
public void Add(Notification notification, float position) public void Add(Notification notification, float position)
{ {
notifications.Add(notification); notifications.Insert((int)position, notification);
notifications.SetLayoutPosition(notification, position);
} }
public IEnumerable<Type> AcceptTypes; public IEnumerable<Type> AcceptTypes;

View File

@ -78,10 +78,8 @@ namespace osu.Game.Overlays.Profile.Header
int displayIndex = index; int displayIndex = index;
LoadComponentAsync(new DrawableBadge(badges[index]), asyncBadge => LoadComponentAsync(new DrawableBadge(badges[index]), asyncBadge =>
{ {
badgeFlowContainer.Add(asyncBadge);
// load in stable order regardless of async load order. // load in stable order regardless of async load order.
badgeFlowContainer.SetLayoutPosition(asyncBadge, displayIndex); badgeFlowContainer.Insert(displayIndex, asyncBadge);
}); });
} }
} }

View File

@ -49,8 +49,7 @@ namespace osu.Game.Overlays.Profile.Sections.Ranks
Font = OsuFont.GetFont(size: 11, weight: FontWeight.Regular, italics: true) Font = OsuFont.GetFont(size: 11, weight: FontWeight.Regular, italics: true)
}; };
RightFlowContainer.Add(text); RightFlowContainer.Insert(1, text);
RightFlowContainer.SetLayoutPosition(text, 1);
LeftFlowContainer.Add(new BeatmapMetadataContainer(Score.Beatmap)); LeftFlowContainer.Add(new BeatmapMetadataContainer(Score.Beatmap));
LeftFlowContainer.Add(new DrawableDate(Score.Date)); LeftFlowContainer.Add(new DrawableDate(Score.Date));

View File

@ -46,8 +46,7 @@ namespace osu.Game.Overlays.Settings
if (text == null) if (text == null)
{ {
// construct lazily for cases where the label is not needed (may be provided by the Control). // construct lazily for cases where the label is not needed (may be provided by the Control).
Add(text = new OsuSpriteText()); FlowContent.Insert(-1, text = new OsuSpriteText());
FlowContent.SetLayoutPosition(text, -1);
} }
text.Text = value; text.Text = value;

View File

@ -110,8 +110,7 @@ namespace osu.Game.Screens.Select.Options
HotKey = hotkey HotKey = hotkey
}; };
buttonsContainer.Add(button); buttonsContainer.Insert((int)depth, button);
buttonsContainer.SetLayoutPosition(button, depth);
} }
} }
} }