FM/Assets/Scripts/FUJIFILM/UI/Other/ImageDesignItem.cs

78 lines
2.4 KiB
C#

using System;
using UnityEngine;
using UnityEngine.UI;
using ZGame;
namespace HK.FUJIFILM
{
public class ImageDesignItem : MonoBehaviour
{
[SerializeField] private Image maskImage;
[SerializeField] private Transform designParent;
[SerializeField] private Button btnAddImage;
public Transform DesignParent => designParent;
private RectTransform rectTransform;
public RectTransform RectTransform
{
get
{
if (rectTransform == null)
rectTransform = transform.GetComponent<RectTransform>();
return rectTransform;
}
}
public float SizeDeltaMax =>
RectTransform.sizeDelta.x > RectTransform.sizeDelta.y
? RectTransform.sizeDelta.x
: RectTransform.sizeDelta.y;
public string ID;
public ImageDesignItemParent Parent;
public Action OnClickAddImage;
public Transform targetTran = null;
private void Awake()
{
maskImage = GetComponent<Image>();
designParent = transform.GetChild(0).transform;
btnAddImage = transform.GetChild(1).GetComponent<Button>();
btnAddImage.onClick.AddListener(ClickAddImage);
// EventManager.Instance.Subscribe(ProductDesgin_GenPhotoEventArgs.EventId, ProductDesgin_GenPhotoEvent);
}
private void OnDestroy()
{
// EventManager.Instance.Unsubscribe(ProductDesgin_GenPhotoEventArgs.EventId, ProductDesgin_GenPhotoEvent);
}
public void SetData(string id, ImageDesignItemParent parent = null)
{
ID = id;
Parent = parent;
}
public void IsHideBtnAdd(bool value)
{
btnAddImage.gameObject.SetActive(!value);
}
// public void AddImage(Sprite sprite)
// {
// var o = ResourcesManager.Instance.LoadGameObject(
// AssetConst.Assets_Res_FUJIFILM_Prefabs_UI_Item_imgDesignItem_prefab, designParent);
// var image = o.GetComponent<Image>();
// image.sprite = sprite;
// ImageScaler.ScaleImageWithMaxSize(image, 300);
// }
private void ClickAddImage()
{
OnClickAddImage?.Invoke();
EventManager.Instance.FireNow(this, new ProductDesignItemEventArgs(designParent, ID));
}
}
}