31 lines
1.0 KiB
C#
31 lines
1.0 KiB
C#
|
|
using System;
|
|
using UnityEngine;
|
|
using UnityEngine.EventSystems;
|
|
|
|
namespace Stary.Evo
|
|
{
|
|
public class OnPointerExitEventTrigger : MonoBehaviour, IPointerExitHandler
|
|
{
|
|
public readonly EasyEvent<PointerEventData> OnPointerExitEvent = new EasyEvent<PointerEventData>();
|
|
|
|
public void OnPointerExit(PointerEventData eventData)
|
|
{
|
|
OnPointerExitEvent.Trigger(eventData);
|
|
}
|
|
}
|
|
|
|
public static class OnPointerExitEventTriggerExtension
|
|
{
|
|
public static IUnRegister OnPointerExitEvent<T>(this T self, Action<PointerEventData> onPointerExit)
|
|
where T : Component
|
|
{
|
|
return self.GetOrAddComponent<OnPointerExitEventTrigger>().OnPointerExitEvent.Register(onPointerExit);
|
|
}
|
|
|
|
public static IUnRegister OnPointerExitEvent(this GameObject self, Action<PointerEventData> onPointerExit)
|
|
{
|
|
return self.GetOrAddComponent<OnPointerExitEventTrigger>().OnPointerExitEvent.Register(onPointerExit);
|
|
}
|
|
}
|
|
} |