1
0
mirror of https://github.com/Siccity/xNode.git synced 2026-03-26 22:49:02 +08:00

# fixed Node header tooltip bug

This commit is contained in:
MYTNB 2020-08-10 23:10:30 +08:00
parent cdb08154e2
commit 76b25c49b1

View File

@ -536,8 +536,8 @@ namespace XNodeEditor {
if (e.type != EventType.Layout && currentActivity == NodeActivity.DragGrid) Selection.objects = preSelection.ToArray(); if (e.type != EventType.Layout && currentActivity == NodeActivity.DragGrid) Selection.objects = preSelection.ToArray();
EndZoomed(position, zoom, topPadding); EndZoomed(position, zoom, topPadding);
//If a change in is detected in the selected node, call OnValidate method. //If a change in is detected in the selected node, call OnValidate method.
//This is done through reflection because OnValidate is only relevant in editor, //This is done through reflection because OnValidate is only relevant in editor,
//and thus, the code should not be included in build. //and thus, the code should not be included in build.
if (onValidate != null && EditorGUI.EndChangeCheck()) onValidate.Invoke(Selection.activeObject, null); if (onValidate != null && EditorGUI.EndChangeCheck()) onValidate.Invoke(Selection.activeObject, null);
} }
@ -556,28 +556,22 @@ namespace XNodeEditor {
} }
private void DrawTooltip() { private void DrawTooltip() {
if (!NodeEditorPreferences.GetSettings().portTooltips && graphEditor != null) if (!NodeEditorPreferences.GetSettings().portTooltips || graphEditor is null)
return; return;
string tooltip = null;
if (hoveredPort != null) { if (hoveredPort != null) {
string tooltip = graphEditor.GetPortTooltip(hoveredPort); tooltip = graphEditor.GetPortTooltip(hoveredPort);
if (string.IsNullOrEmpty(tooltip)) return;
GUIContent content = new GUIContent(tooltip);
Vector2 size = NodeEditorResources.styles.tooltip.CalcSize(content);
size.x += 8;
Rect rect = new Rect(Event.current.mousePosition - (size), size);
EditorGUI.LabelField(rect, content, NodeEditorResources.styles.tooltip);
Repaint();
} }
else if (hoveredNode != null && IsHoveringNode && IsHoveringTitle(hoveredNode)) { else if (hoveredNode != null && IsHoveringNode && IsHoveringTitle(hoveredNode)) {
string tooltip = graphEditor.GetNodeTooltip(hoveredNode); tooltip = graphEditor.GetNodeTooltip(hoveredNode);
if (string.IsNullOrEmpty(tooltip)) return;
GUIContent content = new GUIContent(tooltip);
Vector2 size = NodeEditorResources.styles.tooltip.CalcSize(content);
size.x += 8;
Rect rect = new Rect(Event.current.mousePosition - (size), size);
EditorGUI.LabelField(rect, content, NodeEditorResources.styles.tooltip);
Repaint();
} }
if (string.IsNullOrEmpty(tooltip)) return;
GUIContent content = new GUIContent(tooltip);
Vector2 size = NodeEditorResources.styles.tooltip.CalcSize(content);
size.x += 8;
Rect rect = new Rect(Event.current.mousePosition - (size), size);
EditorGUI.LabelField(rect, content, NodeEditorResources.styles.tooltip);
Repaint();
} }
} }
} }