using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI; namespace UIWidgets { [AddComponentMenu("UI/Progressbar", 210)] public class ButtonAdvanced : Button, 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 override void OnPointerDown(PointerEventData eventData) { onPointerDown.Invoke(eventData); base.OnPointerDown(eventData); } public override void OnPointerUp(PointerEventData eventData) { onPointerUp.Invoke(eventData); base.OnPointerUp(eventData); } public override void OnPointerEnter(PointerEventData eventData) { onPointerEnter.Invoke(eventData); base.OnPointerEnter(eventData); } public override void OnPointerExit(PointerEventData eventData) { onPointerExit.Invoke(eventData); base.OnPointerExit(eventData); } } }