- Fixed some tooltip regressions
- Defined signatures where necessary
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using FlaxEditor.Scripting;
|
||||
using FlaxEditor.Surface.Elements;
|
||||
using FlaxEditor.Utilities;
|
||||
@@ -62,7 +63,7 @@ namespace FlaxEditor.Surface.ContextMenu
|
||||
Group = group;
|
||||
_groupArchetype = groupArchetype;
|
||||
_archetype = archetype;
|
||||
TooltipText = $"{_archetype.Signature}\n{_archetype.Description}";
|
||||
TooltipText = GetTooltip();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -323,6 +324,15 @@ namespace FlaxEditor.Surface.ContextMenu
|
||||
Group.ContextMenu.SetDescriptionPanelArchetype(_archetype);
|
||||
}
|
||||
|
||||
private string GetTooltip()
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
if (!string.IsNullOrEmpty(_archetype.Signature))
|
||||
sb.Append(_archetype.Signature + "\n");
|
||||
sb.Append(_archetype.Description);
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public override bool OnMouseDown(Float2 location, MouseButton button)
|
||||
{
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using FlaxEditor.Scripting;
|
||||
using FlaxEditor.Surface.Elements;
|
||||
using FlaxEditor.Surface.Undo;
|
||||
@@ -124,7 +125,7 @@ namespace FlaxEditor.Surface
|
||||
Archetype = nodeArch;
|
||||
GroupArchetype = groupArch;
|
||||
AutoFocus = false;
|
||||
TooltipText = TooltipText = $"{nodeArch.Signature}\n{nodeArch.Description}";
|
||||
TooltipText = GetTooltip();
|
||||
CullChildren = false;
|
||||
BackgroundColor = Style.Current.BackgroundNormal;
|
||||
|
||||
@@ -851,6 +852,15 @@ namespace FlaxEditor.Surface
|
||||
}
|
||||
}
|
||||
|
||||
private string GetTooltip()
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
if (!string.IsNullOrEmpty(Archetype.Signature))
|
||||
sb.Append(Archetype.Signature + "\n");
|
||||
sb.Append(Archetype.Description);
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override bool ShowTooltip => base.ShowTooltip && _headerRect.Contains(ref _mousePosition) && !Surface.IsLeftMouseButtonDown && !Surface.IsRightMouseButtonDown && !Surface.IsPrimaryMenuOpened;
|
||||
|
||||
|
||||
@@ -447,8 +447,7 @@ namespace FlaxEditor.Surface
|
||||
var valueType = member.ValueType;
|
||||
|
||||
// Getter/setter method of the property - we can return early here
|
||||
bool isGetterOrSetter = name.StartsWith("get_") || name.StartsWith("set_");
|
||||
if (member.IsMethod && isGetterOrSetter)
|
||||
if (member.IsMethod && (name.StartsWith("get_") || name.StartsWith("set_")))
|
||||
{
|
||||
var flags = member.IsStatic ? BindingFlags.Public | BindingFlags.Static | BindingFlags.DeclaredOnly : BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly;
|
||||
var property = declaringType.GetMembers(name.Substring(4), MemberTypes.Property, flags);
|
||||
@@ -470,7 +469,7 @@ namespace FlaxEditor.Surface
|
||||
sb.Append(name);
|
||||
|
||||
// Is a method and not a property
|
||||
if (member.IsMethod && !isGetterOrSetter)
|
||||
if (member.IsMethod)
|
||||
{
|
||||
sb.Append('(');
|
||||
var parameters = member.GetParameters();
|
||||
@@ -504,8 +503,7 @@ namespace FlaxEditor.Surface
|
||||
var declaringType = member.DeclaringType;
|
||||
|
||||
// Getter/setter method of the property - we can return early here
|
||||
bool isGetterOrSetter = name.StartsWith("get_") || name.StartsWith("set_");
|
||||
if (member.IsMethod && isGetterOrSetter)
|
||||
if (member.IsMethod && (name.StartsWith("get_") || name.StartsWith("set_")))
|
||||
{
|
||||
var flags = member.IsStatic ? BindingFlags.Public | BindingFlags.Static | BindingFlags.DeclaredOnly : BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly;
|
||||
var property = declaringType.GetMembers(name.Substring(4), MemberTypes.Property, flags);
|
||||
@@ -524,7 +522,7 @@ namespace FlaxEditor.Surface
|
||||
var sb = new StringBuilder(signature);
|
||||
|
||||
// Tooltip
|
||||
var tooltip = Editor.Instance.CodeDocs.GetTooltip(member);
|
||||
var tooltip = GetVisualScriptMemberShortDescription(member);
|
||||
if (!string.IsNullOrEmpty(tooltip))
|
||||
sb.Append("\n").Append(tooltip);
|
||||
|
||||
|
||||
@@ -51,6 +51,7 @@ namespace FlaxEditor.Surface
|
||||
{
|
||||
TypeID = originalNodeId,
|
||||
Title = "Missing Node :(",
|
||||
Signature = ":(",
|
||||
Description = ":(",
|
||||
Flags = NodeFlags.AllGraphs,
|
||||
Size = new Float2(200, 70),
|
||||
|
||||
@@ -238,7 +238,8 @@ namespace FlaxEditor.Surface
|
||||
|
||||
var node = (NodeArchetype)Archetypes.Function.Nodes[2].Clone();
|
||||
node.Flags &= ~NodeFlags.NoSpawnViaGUI;
|
||||
node.Description = Editor.Instance.CodeDocs.GetTooltip(member);
|
||||
node.Signature = SurfaceUtils.GetVisualScriptMemberInfoSignature(member);
|
||||
node.Description = SurfaceUtils.GetVisualScriptMemberShortDescription(member);
|
||||
node.DefaultValues[0] = name;
|
||||
node.DefaultValues[1] = parameters.Length;
|
||||
node.Title = "Override " + name;
|
||||
@@ -280,6 +281,7 @@ namespace FlaxEditor.Surface
|
||||
node.DefaultValues[0] = Activator.CreateInstance(scriptType.Type);
|
||||
node.Flags &= ~NodeFlags.NoSpawnViaGUI;
|
||||
node.Title = scriptTypeName;
|
||||
node.Signature = scriptTypeName;
|
||||
node.Description = Editor.Instance.CodeDocs.GetTooltip(scriptType);
|
||||
|
||||
// Create group archetype
|
||||
@@ -330,6 +332,7 @@ namespace FlaxEditor.Surface
|
||||
node.DefaultValues[0] = scriptTypeTypeName;
|
||||
node.Flags &= ~NodeFlags.NoSpawnViaGUI;
|
||||
node.Title = "Pack " + scriptTypeName;
|
||||
node.Signature = "Pack " + scriptTypeName;
|
||||
node.Description = tooltip;
|
||||
((IList<NodeArchetype>)group.Archetypes).Add(node);
|
||||
|
||||
@@ -338,6 +341,7 @@ namespace FlaxEditor.Surface
|
||||
node.DefaultValues[0] = scriptTypeTypeName;
|
||||
node.Flags &= ~NodeFlags.NoSpawnViaGUI;
|
||||
node.Title = "Unpack " + scriptTypeName;
|
||||
node.Signature = "Unpack " + scriptTypeName;
|
||||
node.Description = tooltip;
|
||||
((IList<NodeArchetype>)group.Archetypes).Add(node);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user