| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- using Content.Client.Eui;
- using Content.Shared.Administration.Notes;
- using Content.Shared.Eui;
- using JetBrains.Annotations;
- using static Content.Shared.Administration.Notes.AdminNoteEuiMsg;
- namespace Content.Client.Administration.UI.Notes;
- [UsedImplicitly]
- public sealed class AdminNotesEui : BaseEui
- {
- public AdminNotesEui()
- {
- NoteWindow = new AdminNotesWindow();
- NoteControl = NoteWindow.Notes;
- NoteControl.NoteChanged += (id, type, text, severity, secret, expiryTime) => SendMessage(new EditNoteRequest(id, type, text, severity, secret, expiryTime));
- NoteControl.NewNoteEntered += (type, text, severity, secret, expiryTime) => SendMessage(new CreateNoteRequest(type, text, severity, secret, expiryTime));
- NoteControl.NoteDeleted += (id, type) => SendMessage(new DeleteNoteRequest(id, type));
- NoteWindow.OnClose += () => SendMessage(new CloseEuiMessage());
- }
- public override void Closed()
- {
- base.Closed();
- NoteWindow.Close();
- }
- private AdminNotesWindow NoteWindow { get; }
- private AdminNotesControl NoteControl { get; }
- public override void HandleState(EuiStateBase state)
- {
- if (state is not AdminNotesEuiState s)
- {
- return;
- }
- NoteWindow.SetTitlePlayer(s.NotedPlayerName);
- NoteControl.SetPlayerName(s.NotedPlayerName);
- NoteControl.SetNotes(s.Notes);
- NoteControl.SetPermissions(s.CanCreate, s.CanDelete, s.CanEdit);
- }
- public override void Opened()
- {
- NoteWindow.OpenCentered();
- }
- }
|