using System; using UnityEngine; using UnityEngine.UI; using Vanguard.App; namespace Vanguard.UI { /// /// Гамбургер-меню экрана: язык, версия и адрес сервера. В Lobby добавляется /// «Выйти». Закрывается кнопкой, кликом вне панели и по Esc (через драйвер /// экрана). /// public sealed class HamburgerMenu { private readonly GameObject _blocker; private readonly RectTransform _panel; private readonly Action _onLogout; private readonly Action _onHistory; public HamburgerMenu( Transform parent, AppConfig config, Action onLogout = null, Action onHistory = null, string title = "Меню") { _onLogout = onLogout; _onHistory = onHistory; _blocker = new GameObject( "MenuBlocker", typeof(RectTransform), typeof(Image), typeof(Button)); var blockerRect = (RectTransform)_blocker.transform; blockerRect.SetParent(parent, false); UiKit.Stretch(blockerRect); var blockerImage = _blocker.GetComponent(); blockerImage.color = new Color(0f, 0f, 0f, 0.001f); blockerImage.raycastTarget = true; var blockerButton = _blocker.GetComponent