Neg_Utils/NEG/UI/UnityUi/WindowSlot/SingleWindowSlot.cs
2025-10-06 17:31:41 +02:00

35 lines
920 B
C#

using NEG.UI.UnityUi.WindowSlot;
using NEG.UI.Window;
namespace NEG.UI.WindowSlot
{
public class SingleWindowSlot : MonoWindowSlot
{
private IWindow currentWindow;
public IWindow CurrentWindow
{
get => currentWindow;
protected set
{
currentWindow?.SetClosedState();
currentWindow = value;
}
}
public override void AttachWindow(IWindow window, object data)
{
CurrentWindow = window;
window.SetOpenedState(this, data);
}
public override void DetachWindow(IWindow window)
{
// if (UiManager.Instance.CurrentMainWindow == window)
// UiManager.Instance.MainWindowClosed(window);
// CurrentWindow = null;
}
public override void CloseAllWindows() => CurrentWindow = null;
}
}