A game about forced loneliness, made by TACStudios
1using System;
2using UnityEngine.UIElements;
3
4namespace UnityEditor.Tilemaps
5{
6 internal class TilePaletteDragHandler : MouseManipulator
7 {
8 private readonly Action m_DragUpdated;
9 private readonly Action m_DragPerformed;
10
11 public TilePaletteDragHandler(Action dragUpdated, Action dragPerformed)
12 {
13 m_DragUpdated = dragUpdated;
14 m_DragPerformed = dragPerformed;
15 activators.Add(new ManipulatorActivationFilter { button = MouseButton.LeftMouse });
16 }
17
18 protected override void RegisterCallbacksOnTarget()
19 {
20 target.RegisterCallback<DragUpdatedEvent>(OnDragUpdate);
21 target.RegisterCallback<DragPerformEvent>(OnDragPerformEvent);
22 }
23
24 protected override void UnregisterCallbacksFromTarget()
25 {
26 target.UnregisterCallback<DragUpdatedEvent>(OnDragUpdate);
27 target.UnregisterCallback<DragPerformEvent>(OnDragPerformEvent);
28 }
29
30 private void OnDragUpdate(DragUpdatedEvent evt)
31 {
32 m_DragUpdated?.Invoke();
33 }
34
35 private void OnDragPerformEvent(DragPerformEvent evt)
36 {
37 m_DragPerformed?.Invoke();
38 }
39 }
40}