15 private Animator rootAnimator = null;
18 private bool isModal =
false;
21 private bool closeOnNonTargetedTap =
false;
26 private Action activatedCallback;
31 private Action cancelledCallback;
36 private Action deactivatedCallback;
38 private int dehydrateButtonId;
46 gameObject.SetActive(
false);
48 if (dehydrateButtonId == 0)
50 dehydrateButtonId = Animator.StringToHash(
"Dehydrate");
54 private void OnEnable()
56 if (cancelButton != null)
58 cancelButton.
Activated += OnCancelPressed;
62 private void OnDisable()
64 if (cancelButton != null)
66 cancelButton.
Activated -= OnCancelPressed;
70 public void Show(Action _activatedCallback = null, Action _cancelledCallback = null, Action _deactivatedCallback = null)
72 activatedCallback = _activatedCallback;
73 cancelledCallback = _cancelledCallback;
74 deactivatedCallback = _deactivatedCallback;
76 gameObject.SetActive(
true);
84 if (closeOnNonTargetedTap)
90 if (activatedCallback != null)
101 if (deactivatedCallback != null)
103 deactivatedCallback();
111 if (closeOnNonTargetedTap)
118 activatedCallback = null;
119 cancelledCallback = null;
120 deactivatedCallback = null;
128 if (rootAnimator != null && rootAnimator.isInitialized)
130 rootAnimator.SetTrigger(dehydrateButtonId);
134 gameObject.SetActive(
false);
138 private void OnCancelPressed(
TestButton source)
140 if (cancelButton.
Focused || closeOnNonTargetedTap)
142 if (cancelledCallback != null)