Make FlowContainer insertion cleaner

This commit is contained in:
Roman Kapustin 2019-07-01 18:41:08 +03:00
parent 9e5ba5c796
commit 0c95dff3d6
5 changed files with 12 additions and 27 deletions

View File

@ -88,24 +88,16 @@ 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,
{ SelectBuild = b => SelectBuild(b)
Icon = FontAwesome.Solid.ChevronLeft, });
SelectBuild = b => SelectBuild(b) fill.Insert(1, new NavigationIconButton(Build.Versions?.Next)
}, {
right = new NavigationIconButton(Build.Versions?.Next) Icon = FontAwesome.Solid.ChevronRight,
{ SelectBuild = b => SelectBuild(b)
Icon = FontAwesome.Solid.ChevronRight,
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

@ -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;