using Content.Client.Eui;
using Content.Shared.Administration;
+using Content.Shared.Eui;
using Robust.Client.UserInterface.Controls;
using Robust.Shared.Utility;
public AdminAnnounceEui()
{
_window = new AdminAnnounceWindow();
- _window.OnClose += () => SendMessage(new AdminAnnounceEuiMsg.Close());
+ _window.OnClose += () => SendMessage(new CloseEuiMessage());
_window.AnnounceButton.OnPressed += AnnounceButtonOnOnPressed;
}
using Content.Client.Eui;
using Content.Shared.Administration.BanList;
using Content.Shared.Eui;
+using Content.Shared.Ghost.Roles;
namespace Content.Client.Administration.UI.BanList;
public BanListEui()
{
BanWindow = new BanListWindow();
+ BanWindow.OnClose += OnClosed;
BanControl = BanWindow.BanList;
}
+ private void OnClosed()
+ {
+ SendMessage(new CloseEuiMessage());
+ }
+
+ public override void Closed()
+ {
+ base.Closed();
+ BanWindow.Close();
+ }
+
private BanListWindow BanWindow { get; }
private BanListControl BanControl { get; }
public AdminLogsEui()
{
LogsWindow = new AdminLogsWindow();
+ LogsWindow.OnClose += OnCloseWindow;
LogsControl = LogsWindow.Logs;
LogsControl.LogSearch.OnTextEntered += _ => RequestLogs();
private void OnRequestClosed(WindowRequestClosedEventArgs args)
{
- SendMessage(new Close());
+ SendMessage(new CloseEuiMessage());
+ }
+
+ private void OnCloseWindow()
+ {
+ if (ClydeWindow == null)
+ SendMessage(new CloseEuiMessage());
}
private void RequestLogs()
return;
}
- LogsControl.Orphan();
- LogsWindow.Dispose();
- LogsWindow = null;
-
var monitor = _clyde.EnumerateMonitors().First();
ClydeWindow = _clyde.CreateWindow(new WindowCreateParameters
Height = 400
});
+ LogsControl.Orphan();
+ LogsWindow.Dispose();
+ LogsWindow = null;
+
ClydeWindow.RequestClosed += OnRequestClosed;
ClydeWindow.DisposeOnClose = true;
public EditSolutionsEui()
{
_window = new EditSolutionsWindow();
- _window.OnClose += () => SendMessage(new EditSolutionsEuiMsg.Close());
+ _window.OnClose += () => SendMessage(new CloseEuiMessage());
}
public override void Opened()
public override void Closed()
{
base.Closed();
- _window.OnClose -= () => SendMessage(new EditSolutionsEuiMsg.Close());
_window.Close();
}
NoteControl.OnNoteChanged += (id, text) => SendMessage(new EditNoteRequest(id, text));
NoteControl.OnNewNoteEntered += text => SendMessage(new CreateNoteRequest(text));
NoteControl.OnNoteDeleted += id => SendMessage(new DeleteNoteRequest(id));
+ NoteWindow.OnClose += OnClosed;
+ }
+
+ private void OnClosed()
+ {
+ SendMessage(new CloseEuiMessage());
+ }
+
+ public override void Closed()
+ {
+ base.Closed();
+ NoteWindow.Close();
}
private AdminNotesWindow NoteWindow { get; }
{
base.Closed();
+ SendMessage(new CloseEuiMessage());
CloseEverything();
}
public SetOutfitEui()
{
_window = new SetOutfitMenu();
+ _window.OnClose += OnClosed;
+ }
+
+ private void OnClosed()
+ {
+ SendMessage(new CloseEuiMessage());
}
public override void Opened()
public void SendClosedMessage()
{
- SendMessage(new SpawnExplosionEuiMsg.Close());
+ SendMessage(new CloseEuiMessage());
}
public void ClearOverlay()
_window.Close();
};
+ _window.OnClose += () => SendMessage(new AcceptCloningChoiceMessage(AcceptCloningUiButton.Deny));
+
_window.AcceptButton.OnPressed += _ =>
{
SendMessage(new AcceptCloningChoiceMessage(AcceptCloningUiButton.Accept));
_window.OnClose += () =>
{
- SendMessage(new CrewManifestEuiClosed());
+ SendMessage(new CloseEuiMessage());
};
}
using Content.Client.Eui;
+using Content.Shared.Eui;
namespace Content.Client.NPC;
base.Opened();
_window = new NPCWindow();
_window.OpenCentered();
+ _window.OnClose += OnClosed;
+ }
+
+ private void OnClosed()
+ {
+ SendMessage(new CloseEuiMessage());
}
public override void Closed()
_window.OnClose += () =>
{
- SendMessage(new GhostRoleWindowCloseMessage());
+ SendMessage(new CloseEuiMessage());
};
}
private void OnClose()
{
base.Closed();
- SendMessage(new MakeGhostRoleWindowClosedMessage());
+ SendMessage(new CloseEuiMessage());
}
}
}
public override async void HandleMessage(EuiMessageBase msg)
{
+ base.HandleMessage(msg);
+
if (!_adminManager.HasAdminFlag(Player, AdminFlags.Logs))
{
return;
switch (msg)
{
- case Close _:
- {
- Close();
- break;
- }
case LogsRequest request:
{
_sawmill.Info($"Admin log request from admin with id {Player.UserId.UserId} and name {Player.Name}");
switch (msg)
{
- case Close _:
- {
- Close();
- break;
- }
case CreateNoteRequest {Message: var message}:
{
if (!_notesMan.CanCreate(Player))
public override void HandleMessage(EuiMessageBase msg)
{
+ base.HandleMessage(msg);
+
switch (msg)
{
- case AdminAnnounceEuiMsg.Close:
- Close();
- break;
case AdminAnnounceEuiMsg.DoAnnounce doAnnounce:
if (!_adminManager.HasAdminFlag(Player, AdminFlags.Admin))
{
var solutions = _entityManager.GetComponentOrNull<SolutionContainerManagerComponent>(Target)?.Solutions;
return new EditSolutionsEuiState(Target, solutions);
}
-
- public override void HandleMessage(EuiMessageBase msg)
- {
- switch (msg)
- {
- case EditSolutionsEuiMsg.Close:
- Close();
- break;
- }
- }
}
}
public override async void HandleMessage(EuiMessageBase msg)
{
+ base.HandleMessage(msg);
+
switch (msg)
{
- case Close _:
- {
- Close();
- break;
- }
-
case AddAdmin ca:
{
await HandleCreateAdmin(ca);
{
public override void HandleMessage(EuiMessageBase msg)
{
- if (msg is SpawnExplosionEuiMsg.Close)
- {
- Close();
- return;
- }
+ base.HandleMessage(msg);
if (msg is not SpawnExplosionEuiMsg.PreviewRequest request)
return;
return new(name, entries);
}
- public override void HandleMessage(EuiMessageBase msg)
- {
- base.HandleMessage(msg);
-
- switch (msg)
- {
- case CrewManifestEuiClosed:
- Closed();
- break;
- }
- }
-
public override void Closed()
{
base.Closed();
/// </summary>
public virtual void HandleMessage(EuiMessageBase msg)
{
+ if (msg is CloseEuiMessage)
+ Close();
}
/// <summary>
public override void HandleMessage(EuiMessageBase msg)
{
+ base.HandleMessage(msg);
+
switch (msg)
{
- case AdminFaxEuiMsg.Close:
- {
- Close();
- break;
- }
case AdminFaxEuiMsg.Follow followData:
{
if (Player.AttachedEntity == null ||
case GhostRoleFollowRequestMessage req:
EntitySystem.Get<GhostRoleSystem>().Follow(Player, req.Identifier);
break;
- case GhostRoleWindowCloseMessage _:
- Closed();
- break;
}
}
return new MakeGhostRoleEuiState(EntityUid);
}
- public override void HandleMessage(EuiMessageBase msg)
- {
- base.HandleMessage(msg);
-
- switch (msg)
- {
- case MakeGhostRoleWindowClosedMessage _:
- Closed();
- break;
- }
- }
-
public override void Closed()
{
base.Closed();
public static class AdminAnnounceEuiMsg
{
- [Serializable, NetSerializable]
- public sealed class Close : EuiMessageBase
- {
-
- }
-
[Serializable, NetSerializable]
public sealed class DoAnnounce : EuiMessageBase
{
Solutions = solutions;
}
}
-
- public static class EditSolutionsEuiMsg
- {
- [Serializable, NetSerializable]
- public sealed class Close : EuiMessageBase { }
- }
}
public static class AdminLogsEuiMsg
{
- [Serializable, NetSerializable]
- public sealed class Close : EuiMessageBase
- {
- }
-
[Serializable, NetSerializable]
public sealed class SetLogFilter : EuiMessageBase
{
public static class AdminNoteEuiMsg
{
- [Serializable, NetSerializable]
- public sealed class Close : EuiMessageBase
- {
- }
-
[Serializable, NetSerializable]
public sealed class CreateNoteRequest : EuiMessageBase
{
public static class PermissionsEuiMsg
{
- [Serializable, NetSerializable]
- public sealed class Close : EuiMessageBase
- {
- }
-
[Serializable, NetSerializable]
public sealed class AddAdmin : EuiMessageBase
{
public static class SpawnExplosionEuiMsg
{
- [Serializable, NetSerializable]
- public sealed class Close : EuiMessageBase { }
-
/// <summary>
/// This message is sent to the server to request explosion preview data.
/// </summary>
}
}
-[Serializable, NetSerializable]
-public sealed class CrewManifestEuiClosed : EuiMessageBase
-{}
-
[Serializable, NetSerializable]
public sealed class CrewManifestEntries
{
-namespace Content.Shared.Eui
+using Robust.Shared.Serialization;
+
+namespace Content.Shared.Eui
{
[Serializable]
public abstract class EuiMessageBase
{
}
+
+ [Serializable, NetSerializable]
+ public sealed class CloseEuiMessage : EuiMessageBase
+ {
+ }
}
Identifier = identifier;
}
}
-
- [NetSerializable, Serializable]
- public sealed class GhostRoleWindowCloseMessage : EuiMessageBase
- {
- }
}
+++ /dev/null
-using Content.Shared.Eui;
-using Robust.Shared.Serialization;
-
-namespace Content.Shared.Ghost.Roles
-{
- [Serializable, NetSerializable]
- public sealed class MakeGhostRoleWindowClosedMessage : EuiMessageBase
- {
- }
-}