Elin Decompiled Documentation EA 23.200 Stable
Loading...
Searching...
No Matches
TooltipManager Class Reference
Inheritance diagram for TooltipManager:

Public Member Functions

void ResetTooltips ()
 
void ShowTooltip (TooltipData data, Transform target)
 
void HideTooltips (bool immediate=false)
 

Public Attributes

UITooltip[] tooltips
 
string disableHide
 
float disableTimer
 

Static Public Attributes

static TooltipManager Instance
 

Private Member Functions

void Awake ()
 
void Update ()
 

Detailed Description

Definition at line 3 of file TooltipManager.cs.

Member Function Documentation

◆ Awake()

void TooltipManager.Awake ( )
inlineprivate

Definition at line 13 of file TooltipManager.cs.

14 {
15 Instance = this;
16 }
static TooltipManager Instance

References Instance.

◆ HideTooltips()

void TooltipManager.HideTooltips ( bool  immediate = false)
inline

Definition at line 89 of file TooltipManager.cs.

90 {
91 UITooltip[] array = tooltips;
92 foreach (UITooltip t in array)
93 {
94 if (immediate)
95 {
96 t.cg.alpha = 0f;
97 t.data = null;
98 t.SetActive(enable: false);
99 }
100 else
101 {
102 t.hideFunc = delegate
103 {
104 t.hideTimer += Time.smoothDeltaTime;
105 return t.hideTimer > 0.2f;
106 };
107 }
108 }
109 }
UITooltip[] tooltips

References tooltips.

Referenced by UIDynamicList.List(), UICharaMaker.ListJob(), UICharaMaker.ListRace(), Game.Load(), LayerInfo.OnAfterInit(), LayerList.OnKill(), UIContextMenu.Show(), UI.StartDrag(), and UIButton.TryShowTip< T >().

◆ ResetTooltips()

void TooltipManager.ResetTooltips ( )
inline

Definition at line 18 of file TooltipManager.cs.

19 {
20 UITooltip[] array = tooltips;
21 for (int i = 0; i < array.Length; i++)
22 {
23 array[i].data = null;
24 }
25 }
TooltipData data
Definition: UITooltip.cs:15

References UITooltip.data, and tooltips.

Referenced by DropdownGrid.TrySelect().

◆ ShowTooltip()

void TooltipManager.ShowTooltip ( TooltipData  data,
Transform  target 
)
inline

Definition at line 27 of file TooltipManager.cs.

28 {
29 if (disableTimer > 0f)
30 {
31 return;
32 }
33 if ((bool)UIContextMenu.Current)
34 {
35 UIButton componentOf = InputModuleEX.GetComponentOf<UIButton>();
36 if (!componentOf || !componentOf.transform.GetComponentInParent<UIContextMenu>())
37 {
38 return;
39 }
40 }
41 UITooltip t = tooltips[0];
42 UITooltip[] array = tooltips;
43 foreach (UITooltip uITooltip in array)
44 {
45 if (uITooltip.name == data.id)
46 {
47 t = uITooltip;
48 }
49 }
50 t.SetActive(enable: true);
51 t.SetData(data);
52 if (t.cg.alpha < 0.1f)
53 {
54 t.cg.alpha = 1f;
55 }
56 t.hideTimer = 0f;
57 t.hideFunc = delegate
58 {
59 if (target == null || !InputModuleEX.IsPointerOver(target))
60 {
61 t.hideTimer += Time.smoothDeltaTime;
62 return t.hideTimer > 0.2f;
63 }
64 t.hideTimer = 0f;
65 return false;
66 };
67 if (t.followType == UITooltip.FollowType.None)
68 {
69 return;
70 }
71 Vector3 vector = ((t.followType == UITooltip.FollowType.Mouse) ? EInput.uiMousePosition : target.position);
72 if (t.followType == UITooltip.FollowType.Pivot)
73 {
74 GameObject gameObject = target.FindTagInParents("PivotTooltip", includeInactive: false);
75 if ((bool)gameObject)
76 {
77 t.Rect().pivot = gameObject.transform.Rect().pivot;
78 vector = gameObject.transform.position;
79 }
80 else
81 {
82 t.Rect().pivot = t.orgPivot;
83 }
84 }
85 t.transform.position = vector + data.offset + t.offset;
86 Util.ClampToScreen(t.Rect(), 20);
87 }
Definition: EInput.cs:8
static Vector3 uiMousePosition
Definition: EInput.cs:369
static bool IsPointerOver(Component c)
string id
Definition: TooltipData.cs:13
static UIContextMenu Current
CanvasGroup cg
Definition: UITooltip.cs:41
Vector3 offset
Definition: UITooltip.cs:29
void SetData(TooltipData _data)
Definition: UITooltip.cs:55
Vector2 orgPivot
Definition: UITooltip.cs:39
FollowType followType
Definition: UITooltip.cs:31
Definition: Util.cs:10
static void ClampToScreen(RectTransform rect, int margin=0)
Definition: Util.cs:110

References UIContextMenu.Current, disableTimer, InputModuleEX.IsPointerOver(), UITooltip.SetData(), tooltips, EInput.uiMousePosition, and Util.

Referenced by HintIcon.ShowTooltip(), UIButton.ShowTooltip(), UIButton.ShowTooltipForced(), and UIButton.TryShowTip< T >().

◆ Update()

void TooltipManager.Update ( )
inlineprivate

Definition at line 111 of file TooltipManager.cs.

112 {
113 if (disableTimer > 0f)
114 {
115 disableTimer -= Time.deltaTime;
116 }
117 UITooltip[] array = tooltips;
118 foreach (UITooltip uITooltip in array)
119 {
120 if (!(uITooltip.name == disableHide) && uITooltip.gameObject.activeSelf)
121 {
122 if (uITooltip.hideFunc())
123 {
124 uITooltip.cg.alpha -= Time.smoothDeltaTime * 5f;
125 }
126 else
127 {
128 uITooltip.cg.alpha += Time.smoothDeltaTime * 5f;
129 }
130 if (uITooltip.cg.alpha <= 0f)
131 {
132 uITooltip.data = null;
133 uITooltip.SetActive(enable: false);
134 }
135 }
136 }
137 }
string disableHide
Func< bool > hideFunc
Definition: UITooltip.cs:43

References UITooltip.cg, disableHide, disableTimer, UITooltip.hideFunc, and tooltips.

Member Data Documentation

◆ disableHide

string TooltipManager.disableHide

Definition at line 9 of file TooltipManager.cs.

Referenced by Update().

◆ disableTimer

float TooltipManager.disableTimer

Definition at line 11 of file TooltipManager.cs.

Referenced by ShowTooltip(), and Update().

◆ Instance

◆ tooltips

UITooltip [] TooltipManager.tooltips

Definition at line 7 of file TooltipManager.cs.

Referenced by HideTooltips(), ResetTooltips(), ShowTooltip(), and Update().


The documentation for this class was generated from the following file: