This reverts commit cd9cc17339.
This commit is contained in:
@@ -1,6 +1,5 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Text;
|
|
||||||
using Content.Client.Chat.Managers;
|
using Content.Client.Chat.Managers;
|
||||||
using Content.Client.Chat.UI;
|
using Content.Client.Chat.UI;
|
||||||
using Content.Shared.Alert;
|
using Content.Shared.Alert;
|
||||||
@@ -12,7 +11,6 @@ using Robust.Shared.GameObjects;
|
|||||||
using Robust.Shared.Input;
|
using Robust.Shared.Input;
|
||||||
using Robust.Shared.IoC;
|
using Robust.Shared.IoC;
|
||||||
using Robust.Shared.Log;
|
using Robust.Shared.Log;
|
||||||
using Robust.Shared.Timing;
|
|
||||||
|
|
||||||
namespace Content.Client.Alerts.UI;
|
namespace Content.Client.Alerts.UI;
|
||||||
|
|
||||||
@@ -22,11 +20,6 @@ public sealed class AlertsFramePresenter : IDisposable
|
|||||||
[Dependency] private readonly IUserInterfaceManager _userInterfaceManager = default!;
|
[Dependency] private readonly IUserInterfaceManager _userInterfaceManager = default!;
|
||||||
[Dependency] private readonly IChatManager _chatManager = default!;
|
[Dependency] private readonly IChatManager _chatManager = default!;
|
||||||
|
|
||||||
[Dependency] private readonly ILogManager _logMan = default!;
|
|
||||||
[Dependency] private readonly IGameTiming _timing = default!;
|
|
||||||
|
|
||||||
private readonly ISawmill _logger;
|
|
||||||
|
|
||||||
private IAlertsFrameView _alertsFrame;
|
private IAlertsFrameView _alertsFrame;
|
||||||
private ClientAlertsSystem? _alertsSystem;
|
private ClientAlertsSystem? _alertsSystem;
|
||||||
|
|
||||||
@@ -35,9 +28,6 @@ public sealed class AlertsFramePresenter : IDisposable
|
|||||||
// This is a lot easier than a factory
|
// This is a lot easier than a factory
|
||||||
IoCManager.InjectDependencies(this);
|
IoCManager.InjectDependencies(this);
|
||||||
|
|
||||||
_logger = _logMan.GetSawmill("alerts");
|
|
||||||
_logger.Info("Constructor");
|
|
||||||
|
|
||||||
_alertsFrame = new AlertsUI(_chatManager);
|
_alertsFrame = new AlertsUI(_chatManager);
|
||||||
_userInterfaceManager.StateRoot.AddChild((AlertsUI) _alertsFrame);
|
_userInterfaceManager.StateRoot.AddChild((AlertsUI) _alertsFrame);
|
||||||
|
|
||||||
@@ -61,7 +51,6 @@ public sealed class AlertsFramePresenter : IDisposable
|
|||||||
/// <inheritdoc />
|
/// <inheritdoc />
|
||||||
public void Dispose()
|
public void Dispose()
|
||||||
{
|
{
|
||||||
_logger.Info("Destructor");
|
|
||||||
_userInterfaceManager.StateRoot.RemoveChild((AlertsUI) _alertsFrame);
|
_userInterfaceManager.StateRoot.RemoveChild((AlertsUI) _alertsFrame);
|
||||||
_alertsFrame.Dispose();
|
_alertsFrame.Dispose();
|
||||||
_alertsFrame = null!;
|
_alertsFrame = null!;
|
||||||
@@ -73,33 +62,19 @@ public sealed class AlertsFramePresenter : IDisposable
|
|||||||
|
|
||||||
private void OnAlertPressed(object? sender, AlertType e)
|
private void OnAlertPressed(object? sender, AlertType e)
|
||||||
{
|
{
|
||||||
_logger.Info(_timing.CurTick + "|" +nameof(OnAlertPressed) + ":" + Enum.GetName(e));
|
|
||||||
_alertsSystem?.AlertClicked(e);
|
_alertsSystem?.AlertClicked(e);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SystemOnClearAlerts(object? sender, EventArgs e)
|
private void SystemOnClearAlerts(object? sender, EventArgs e)
|
||||||
{
|
{
|
||||||
_logger.Info(_timing.CurTick + "|" + nameof(SystemOnClearAlerts));
|
|
||||||
_alertsFrame.ClearAllControls();
|
_alertsFrame.ClearAllControls();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SystemOnSyncAlerts(object? sender, IReadOnlyDictionary<AlertKey, AlertState> e)
|
private void SystemOnSyncAlerts(object? sender, IReadOnlyDictionary<AlertKey, AlertState> e)
|
||||||
{
|
{
|
||||||
if (sender is ClientAlertsSystem system)
|
if (sender is ClientAlertsSystem system)
|
||||||
{
|
|
||||||
var sb = new StringBuilder();
|
|
||||||
sb.AppendLine(_timing.CurTick + "|" +nameof(SystemOnSyncAlerts));
|
|
||||||
|
|
||||||
foreach (var kvState in e)
|
|
||||||
{
|
|
||||||
var alertType = kvState.Key.AlertType!.Value;
|
|
||||||
sb.AppendLine("\t" + Enum.GetName(alertType));
|
|
||||||
}
|
|
||||||
|
|
||||||
_logger.Info(sb.ToString());
|
|
||||||
_alertsFrame.SyncControls(system, system.AlertOrder, e);
|
_alertsFrame.SyncControls(system, system.AlertOrder, e);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
//TODO: This system binding boilerplate seems to be duplicated between every presenter
|
//TODO: This system binding boilerplate seems to be duplicated between every presenter
|
||||||
// prob want to pull it out into a generic object with callbacks for Onbind/OnUnbind
|
// prob want to pull it out into a generic object with callbacks for Onbind/OnUnbind
|
||||||
@@ -107,25 +82,16 @@ public sealed class AlertsFramePresenter : IDisposable
|
|||||||
|
|
||||||
private void OnSystemLoaded(object? sender, SystemChangedArgs args)
|
private void OnSystemLoaded(object? sender, SystemChangedArgs args)
|
||||||
{
|
{
|
||||||
if (args.System is ClientAlertsSystem system)
|
if (args.System is ClientAlertsSystem system) SystemBindingChanged(system);
|
||||||
{
|
|
||||||
_logger.Info(_timing.CurTick + "|" +nameof(OnSystemLoaded));
|
|
||||||
SystemBindingChanged(system);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnSystemUnloaded(object? sender, SystemChangedArgs args)
|
private void OnSystemUnloaded(object? sender, SystemChangedArgs args)
|
||||||
{
|
{
|
||||||
if (args.System is ClientAlertsSystem)
|
if (args.System is ClientAlertsSystem) SystemBindingChanged(null);
|
||||||
{
|
|
||||||
_logger.Info(_timing.CurTick + "|" +nameof(OnSystemUnloaded));
|
|
||||||
SystemBindingChanged(null);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void SystemBindingChanged(ClientAlertsSystem? newSystem)
|
private void SystemBindingChanged(ClientAlertsSystem? newSystem)
|
||||||
{
|
{
|
||||||
_logger.Info(_timing.CurTick + "|" +nameof(SystemBindingChanged) + ":" + (newSystem is null ? "null" :"notNull"));
|
|
||||||
if (newSystem is null)
|
if (newSystem is null)
|
||||||
{
|
{
|
||||||
if (_alertsSystem is null)
|
if (_alertsSystem is null)
|
||||||
@@ -148,7 +114,6 @@ public sealed class AlertsFramePresenter : IDisposable
|
|||||||
|
|
||||||
private void BindToSystem(ClientAlertsSystem system)
|
private void BindToSystem(ClientAlertsSystem system)
|
||||||
{
|
{
|
||||||
_logger.Info(_timing.CurTick + "|" +nameof(BindToSystem));
|
|
||||||
_alertsSystem = system;
|
_alertsSystem = system;
|
||||||
system.SyncAlerts += SystemOnSyncAlerts;
|
system.SyncAlerts += SystemOnSyncAlerts;
|
||||||
system.ClearAlerts += SystemOnClearAlerts;
|
system.ClearAlerts += SystemOnClearAlerts;
|
||||||
@@ -161,7 +126,6 @@ public sealed class AlertsFramePresenter : IDisposable
|
|||||||
if (system is null)
|
if (system is null)
|
||||||
throw new InvalidOperationException();
|
throw new InvalidOperationException();
|
||||||
|
|
||||||
_logger.Info(_timing.CurTick + "|" +nameof(UnbindFromSystem));
|
|
||||||
system.SyncAlerts -= SystemOnSyncAlerts;
|
system.SyncAlerts -= SystemOnSyncAlerts;
|
||||||
system.ClearAlerts -= SystemOnClearAlerts;
|
system.ClearAlerts -= SystemOnClearAlerts;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
using System;
|
using System;
|
||||||
using Robust.Shared.Serialization;
|
using Robust.Shared.Serialization;
|
||||||
using Robust.Shared.Serialization.Manager;
|
using Robust.Shared.Serialization.Manager;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user