37 lines
906 B
C#
37 lines
906 B
C#
using UnityEngine.UIElements;
|
|
|
|
namespace UnityEditor.VFX.UI
|
|
{
|
|
class DownClickable : MouseManipulator
|
|
{
|
|
public event System.Action clicked;
|
|
|
|
// Click-once type constructor
|
|
public DownClickable(System.Action handler)
|
|
{
|
|
clicked = handler;
|
|
|
|
activators.Add(new ManipulatorActivationFilter { button = MouseButton.LeftMouse });
|
|
}
|
|
|
|
protected override void RegisterCallbacksOnTarget()
|
|
{
|
|
target.RegisterCallback<MouseDownEvent>(OnMouseDown);
|
|
}
|
|
|
|
protected override void UnregisterCallbacksFromTarget()
|
|
{
|
|
target.UnregisterCallback<MouseDownEvent>(OnMouseDown);
|
|
}
|
|
|
|
protected void OnMouseDown(MouseDownEvent evt)
|
|
{
|
|
if (clicked != null)
|
|
{
|
|
clicked();
|
|
evt.StopPropagation();
|
|
}
|
|
}
|
|
}
|
|
}
|