Files
OldThink/Content.Client/Info/ServerInfo.cs

73 lines
2.5 KiB
C#
Raw Normal View History

using Content.Client.Changelog;
2021-06-09 22:19:39 +02:00
using Content.Client.Credits;
using Content.Client.Links;
2021-02-25 09:50:45 +01:00
using Robust.Client.UserInterface;
2019-10-18 14:28:39 +02:00
using Robust.Client.UserInterface.Controls;
using Robust.Shared.IoC;
using Robust.Shared.Localization;
using Robust.Shared.Utility;
2021-06-09 22:19:39 +02:00
namespace Content.Client.Info
2019-10-18 14:28:39 +02:00
{
public sealed class ServerInfo : BoxContainer
2019-10-18 14:28:39 +02:00
{
private readonly RichTextLabel _richTextLabel;
public ServerInfo()
2019-10-18 14:28:39 +02:00
{
Orientation = LayoutOrientation.Vertical;
2019-10-18 14:28:39 +02:00
_richTextLabel = new RichTextLabel
{
2021-02-21 12:38:56 +01:00
VerticalExpand = true
2019-10-18 14:28:39 +02:00
};
AddChild(_richTextLabel);
var buttons = new BoxContainer
{
Orientation = LayoutOrientation.Horizontal
};
2019-10-18 14:28:39 +02:00
AddChild(buttons);
var uriOpener = IoCManager.Resolve<IUriOpener>();
var rulesButton = new Button() { Text = Loc.GetString("server-info-rules-button") };
rulesButton.OnPressed += args => new RulesAndInfoWindow().Open();
var discordButton = new Button {Text = Loc.GetString("server-info-discord-button") };
2020-06-14 15:15:07 +02:00
discordButton.OnPressed += args => uriOpener.OpenUri(UILinks.Discord);
2019-10-18 14:28:39 +02:00
var websiteButton = new Button {Text = Loc.GetString("server-info-website-button") };
2020-06-14 15:15:07 +02:00
websiteButton.OnPressed += args => uriOpener.OpenUri(UILinks.Website);
2019-10-18 14:28:39 +02:00
var wikiButton = new Button {Text = Loc.GetString("server-info-wiki-button") };
wikiButton.OnPressed += args => uriOpener.OpenUri(UILinks.Wiki);
var reportButton = new Button { Text = Loc.GetString("server-info-report-button") };
reportButton.OnPressed += args => uriOpener.OpenUri(UILinks.BugReport);
var creditsButton = new Button { Text = Loc.GetString("server-info-credits-button") };
creditsButton.OnPressed += args => new CreditsWindow().Open();
2021-02-25 09:50:45 +01:00
var changelogButton = new ChangelogButton
{
HorizontalExpand = true,
HorizontalAlignment = HAlignment.Right
};
buttons.AddChild(rulesButton);
2019-10-18 14:28:39 +02:00
buttons.AddChild(discordButton);
buttons.AddChild(websiteButton);
buttons.AddChild(wikiButton);
buttons.AddChild(reportButton);
buttons.AddChild(creditsButton);
2021-02-25 09:50:45 +01:00
buttons.AddChild(changelogButton);
2019-10-18 14:28:39 +02:00
}
public void SetInfoBlob(string markup)
{
2021-12-20 12:42:42 +01:00
_richTextLabel.SetMessage(FormattedMessage.FromMarkup(markup));
2019-10-18 14:28:39 +02:00
}
}
}