osu/osu.Game/Graphics/ErrorTextFlowContainer.cs

37 lines
1019 B
C#

// 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.
using System.Collections.Generic;
using osu.Framework.Graphics.Containers;
using osu.Game.Graphics.Containers;
using osuTK.Graphics;
namespace osu.Game.Graphics
{
public partial class ErrorTextFlowContainer : OsuTextFlowContainer
{
private readonly List<ITextPart> errorTextParts = new List<ITextPart>();
public ErrorTextFlowContainer()
: base(cp => cp.Font = cp.Font.With(size: 12))
{
}
public void ClearErrors()
{
foreach (var textPart in errorTextParts)
RemovePart(textPart);
}
public void AddErrors(string[]? errors)
{
ClearErrors();
if (errors == null) return;
foreach (string error in errors)
errorTextParts.Add(AddParagraph(error, cp => cp.Colour = Color4.Red));
}
}
}