using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI; namespace UIWidgets { [AddComponentMenu("UI/ImageAdvanced", 240)] public class ImageAdvanced : Image, IPointerDownHandler, IPointerUpHandler, IPointerEnterHandler, IPointerExitHandler, IEventSystemHandler { public PointerUnityEvent onPointerDown = new PointerUnityEvent(); public PointerUnityEvent onPointerUp = new PointerUnityEvent(); public PointerUnityEvent onPointerEnter = new PointerUnityEvent(); public PointerUnityEvent onPointerExit = new PointerUnityEvent(); public virtual void OnPointerDown(PointerEventData eventData) { onPointerDown.Invoke(eventData); } public virtual void OnPointerUp(PointerEventData eventData) { onPointerUp.Invoke(eventData); } public virtual void OnPointerEnter(PointerEventData eventData) { onPointerEnter.Invoke(eventData); } public virtual void OnPointerExit(PointerEventData eventData) { onPointerExit.Invoke(eventData); } } }