using DG.Tweening;
using Kill.Managers;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
namespace Kill.UI.Pages
{
///
/// 首页设备列表项 - 显示单个设备信息
/// 支持左滑手势:左滑时菜单向左滑出并显示高斯模糊覆盖层,
/// 滑动超过菜单宽度1/3松手则完整展开,否则缩回并隐藏模糊层
///
public class HomePageDeviceItem : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler
{
public Text deviceNameText;
public GameObject selectedIndicator;
/// 菜单(子物体,锚点位于item最右侧),左滑时向左滑出
public RectTransform menuRect;
/// 高斯模糊覆盖层(子物体,覆盖其他内容),菜单出现时显示,缩回时隐藏
public GameObject blurOverlay;
// 当前设备信息
public DeviceInfo deviceInfo;
/// 当前展开菜单的item(全局仅允许一个菜单展开)
private static HomePageDeviceItem openItem;
private float menuWidth;
private float currentOffset;
private float dragStartOffset;
private bool isMenuOpen;
private bool isDragging;
private Vector3 menuInitPos;
private Tweener tweener;
private Button button;
void Awake()
{
button = GetComponent