1
0

AdminLogLabel.cs 815 B

123456789101112131415161718192021222324252627282930313233
  1. using Content.Shared.Administration.Logs;
  2. using Robust.Client.UserInterface;
  3. using Robust.Client.UserInterface.Controls;
  4. namespace Content.Client.Administration.UI.CustomControls;
  5. public sealed class AdminLogLabel : RichTextLabel
  6. {
  7. public AdminLogLabel(ref SharedAdminLog log, HSeparator separator)
  8. {
  9. Log = log;
  10. Separator = separator;
  11. SetMessage($"{log.Date:HH:mm:ss}: {log.Message}");
  12. OnVisibilityChanged += VisibilityChanged;
  13. }
  14. public SharedAdminLog Log { get; }
  15. public HSeparator Separator { get; }
  16. private void VisibilityChanged(Control control)
  17. {
  18. Separator.Visible = Visible;
  19. }
  20. protected override void Dispose(bool disposing)
  21. {
  22. base.Dispose(disposing);
  23. OnVisibilityChanged -= VisibilityChanged;
  24. }
  25. }