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;
private readonly Action _onLobby;
public HamburgerMenu(
Transform parent,
AppConfig config,
Action onLogout = null,
Action onHistory = null,
Action onLobby = null,
string title = "Меню")
{
_onLogout = onLogout;
_onHistory = onHistory;
_onLobby = onLobby;
_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