43 lines
1.2 KiB
C#
43 lines
1.2 KiB
C#
using Content.Client.Eui;
|
|
using Content.Shared.Administration;
|
|
using Content.Shared.Eui;
|
|
using Robust.Client.UserInterface.Controls;
|
|
using Robust.Shared.Utility;
|
|
|
|
namespace Content.Client.Administration.UI
|
|
{
|
|
public sealed class AdminAnnounceEui : BaseEui
|
|
{
|
|
private readonly AdminAnnounceWindow _window;
|
|
|
|
public AdminAnnounceEui()
|
|
{
|
|
_window = new AdminAnnounceWindow();
|
|
_window.OnClose += () => SendMessage(new CloseEuiMessage());
|
|
_window.AnnounceButton.OnPressed += AnnounceButtonOnOnPressed;
|
|
}
|
|
|
|
private void AnnounceButtonOnOnPressed(BaseButton.ButtonEventArgs obj)
|
|
{
|
|
SendMessage(new AdminAnnounceEuiMsg.DoAnnounce
|
|
{
|
|
Announcement = Rope.Collapse(_window.Announcement.TextRope),
|
|
Announcer = _window.Announcer.Text,
|
|
AnnounceType = (AdminAnnounceType) (_window.AnnounceMethod.SelectedMetadata ?? AdminAnnounceType.Station),
|
|
CloseAfter = !_window.KeepWindowOpen.Pressed,
|
|
});
|
|
|
|
}
|
|
|
|
public override void Opened()
|
|
{
|
|
_window.OpenCentered();
|
|
}
|
|
|
|
public override void Closed()
|
|
{
|
|
_window.Close();
|
|
}
|
|
}
|
|
}
|