2025-08-22 09:16:11 +08:00
|
|
|
using UnityEngine.UI;
|
|
|
|
using TMPro;
|
|
|
|
using UnityEngine;
|
|
|
|
using ZGame;
|
|
|
|
|
|
|
|
namespace HK.FUJIFILM
|
|
|
|
{
|
|
|
|
public class PhotoItemOperation : UIItemBase
|
|
|
|
{
|
|
|
|
[SerializeField] private Button btnToUp;
|
|
|
|
[SerializeField] private Button btnToDown;
|
|
|
|
[SerializeField] private Button btnRotate;
|
|
|
|
[SerializeField] private Button btnDelete;
|
|
|
|
[SerializeField] private Button btnClose;
|
|
|
|
|
|
|
|
CanvasGroup canvasGroup;
|
|
|
|
|
|
|
|
[SerializeField] private GameObject target;
|
|
|
|
|
|
|
|
public override void OnInit()
|
|
|
|
{
|
|
|
|
base.OnInit();
|
|
|
|
|
|
|
|
#region AutoGen_Init
|
|
|
|
|
|
|
|
btnToUp = GetValue<Button>("btnToUp");
|
|
|
|
btnToDown = GetValue<Button>("btnToDown");
|
|
|
|
btnRotate = GetValue<Button>("btnRotate");
|
|
|
|
btnDelete = GetValue<Button>("btnDelete");
|
|
|
|
btnClose = GetValue<Button>("btnClose");
|
|
|
|
|
|
|
|
btnToUp.onClick.AddListener(OnClickbtnToUp);
|
|
|
|
btnToDown.onClick.AddListener(OnClickbtnToDown);
|
|
|
|
btnRotate.onClick.AddListener(OnClickbtnRotate);
|
|
|
|
btnDelete.onClick.AddListener(OnClickbtnDelete);
|
|
|
|
btnClose.onClick.AddListener(OnClickbtnClose);
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
canvasGroup = GetComponent<CanvasGroup>();
|
|
|
|
Close();
|
|
|
|
EventManager.Instance.Subscribe(PhotoItemOperationEventArgs.EventId, PhotoItemOperationEvent);
|
|
|
|
}
|
|
|
|
|
|
|
|
private void PhotoItemOperationEvent(object sender, GameEventArgs e)
|
|
|
|
{
|
|
|
|
var args = e as PhotoItemOperationEventArgs;
|
2025-08-27 01:05:19 +08:00
|
|
|
if (args == null)
|
|
|
|
{
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2025-08-22 09:16:11 +08:00
|
|
|
if (args.isStart)
|
|
|
|
Open(args.target);
|
|
|
|
else
|
|
|
|
Close();
|
|
|
|
}
|
|
|
|
|
|
|
|
#region AutoGen_Method
|
|
|
|
|
|
|
|
private void OnClickbtnToUp()
|
|
|
|
{
|
|
|
|
var parent = target.transform.parent;
|
|
|
|
target.transform.SetSiblingIndex(parent.childCount - 1);
|
|
|
|
Close();
|
|
|
|
}
|
|
|
|
|
|
|
|
private void OnClickbtnToDown()
|
|
|
|
{
|
|
|
|
var siblingIndex = (target.transform.GetSiblingIndex() - 1) >= 0 ? target.transform.GetSiblingIndex() : 0;
|
|
|
|
target.transform.SetSiblingIndex(siblingIndex);
|
|
|
|
Close();
|
|
|
|
}
|
|
|
|
|
|
|
|
private void OnClickbtnRotate()
|
|
|
|
{
|
|
|
|
Close();
|
|
|
|
}
|
|
|
|
|
|
|
|
private void OnClickbtnDelete()
|
|
|
|
{
|
|
|
|
GameObject.Destroy(target);
|
|
|
|
Close();
|
|
|
|
}
|
|
|
|
|
|
|
|
private void OnClickbtnClose()
|
|
|
|
{
|
|
|
|
Close();
|
|
|
|
}
|
|
|
|
|
|
|
|
void Close()
|
|
|
|
{
|
|
|
|
target = null;
|
|
|
|
canvasGroup.alpha = 0;
|
|
|
|
canvasGroup.interactable = false;
|
|
|
|
canvasGroup.blocksRaycasts = false;
|
|
|
|
}
|
|
|
|
|
|
|
|
void Open(Transform ta)
|
|
|
|
{
|
2025-08-27 01:05:19 +08:00
|
|
|
if (ta == null)
|
|
|
|
{
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2025-08-22 09:16:11 +08:00
|
|
|
target = ta.gameObject;
|
|
|
|
canvasGroup.alpha = 1;
|
|
|
|
canvasGroup.interactable = true;
|
|
|
|
canvasGroup.blocksRaycasts = true;
|
|
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
public override void OnDispose()
|
|
|
|
{
|
|
|
|
base.OnDispose();
|
|
|
|
|
|
|
|
#region AutoGen_Dispose
|
|
|
|
|
|
|
|
btnToUp.onClick.RemoveListener(OnClickbtnToUp);
|
|
|
|
btnToDown.onClick.RemoveListener(OnClickbtnToDown);
|
|
|
|
btnRotate.onClick.RemoveListener(OnClickbtnRotate);
|
|
|
|
btnDelete.onClick.RemoveListener(OnClickbtnDelete);
|
|
|
|
btnClose.onClick.RemoveListener(OnClickbtnClose);
|
|
|
|
|
|
|
|
btnToUp = null;
|
|
|
|
btnToDown = null;
|
|
|
|
btnRotate = null;
|
|
|
|
btnDelete = null;
|
|
|
|
btnClose = null;
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|