diff --git a/Library/FlowNode/ParameterDetails.cs b/Library/FlowNode/ParameterDetails.cs
index 95b7044..85eb887 100644
--- a/Library/FlowNode/ParameterDetails.cs
+++ b/Library/FlowNode/ParameterDetails.cs
@@ -86,6 +86,12 @@ namespace Serein.Library
[PropertyInfo(IsNotification = true)]
private string _name ;
+ ///
+ /// 入参注释
+ ///
+ [PropertyInfo]
+ private string _description;
+
///
/// 自定义的方法入参数据
///
@@ -179,7 +185,7 @@ namespace Serein.Library
DataValue = string.IsNullOrEmpty(DataValue) ? string.Empty : DataValue,
Items = this.Items?.Select(it => it).ToArray(),
IsParams = this.IsParams,
-
+ Description = this.Description,
};
return pd;
}
@@ -326,7 +332,7 @@ namespace Serein.Library
public override string ToString()
{
- return $"[{this.Index}] {this.Name} : {this.DataType?.FullName}";
+ return $"[{this.Index}] {(string.IsNullOrWhiteSpace(this.Description) ? string.Empty : $"({this.Description})")}{this.Name} : {this.DataType?.FullName}";
}
}
diff --git a/NodeFlow/Model/SingleConditionNode.cs b/NodeFlow/Model/SingleConditionNode.cs
index ae41a6f..48ee5ab 100644
--- a/NodeFlow/Model/SingleConditionNode.cs
+++ b/NodeFlow/Model/SingleConditionNode.cs
@@ -73,6 +73,7 @@ namespace Serein.NodeFlow.Model
//Convertor = null,
InputType = ParameterValueInputType.Input,
Items = null,
+ Description = "条件节点入参控制点"
};
this.MethodDetails.ParameterDetailss = [..pd];
}
diff --git a/NodeFlow/Model/SingleExpOpNode.cs b/NodeFlow/Model/SingleExpOpNode.cs
index 302cd79..c7844e4 100644
--- a/NodeFlow/Model/SingleExpOpNode.cs
+++ b/NodeFlow/Model/SingleExpOpNode.cs
@@ -62,6 +62,8 @@ namespace Serein.NodeFlow.Model
//Convertor = null,
InputType = ParameterValueInputType.Input,
Items = null,
+ Description = "表达式节点入参控制点"
+
};
this.MethodDetails.ParameterDetailss = [.. pd];
}
diff --git a/NodeFlow/Model/SingleScriptNode.cs b/NodeFlow/Model/SingleScriptNode.cs
index 4af4159..239a6d6 100644
--- a/NodeFlow/Model/SingleScriptNode.cs
+++ b/NodeFlow/Model/SingleScriptNode.cs
@@ -92,6 +92,8 @@ namespace Serein.NodeFlow.Model
InputType = ParameterValueInputType.Input,
Items = null,
IsParams = true,
+ Description = "脚本节点入参"
+
};
}
diff --git a/NodeFlow/Tool/NodeMethodDetailsHelper.cs b/NodeFlow/Tool/NodeMethodDetailsHelper.cs
index 646d3ac..bd16930 100644
--- a/NodeFlow/Tool/NodeMethodDetailsHelper.cs
+++ b/NodeFlow/Tool/NodeMethodDetailsHelper.cs
@@ -7,6 +7,7 @@ using Serein.Library.FlowNode;
using System.Diagnostics;
using System.Diagnostics.CodeAnalysis;
using System.ComponentModel.DataAnnotations;
+using System.ComponentModel;
namespace Serein.NodeFlow.Tool;
@@ -309,6 +310,7 @@ public static class NodeMethodDetailsHelper
{
dataType = parameterInfo.ParameterType;
}
+ var description = parameterInfo.GetCustomAttribute()?.Description ?? "";
var inputType = GetInputType(explicitParemType);
var items = GetExplicitItems(explicitParemType, inputType);
@@ -325,6 +327,8 @@ public static class NodeMethodDetailsHelper
DataValue = parameterInfo.HasDefaultValue ? parameterInfo?.DefaultValue?.ToString() : "", // 如果存在默认值,则使用默认值
Items = items.ToArray(), // 如果是枚举值入参,则获取枚举类型的字面量
IsParams = hasParams, // 判断是否为可变参数
+ Description = description // 入参描述
+
};
}
diff --git a/Workbench/Node/View/ActionNodeControl.xaml b/Workbench/Node/View/ActionNodeControl.xaml
index fb71a3f..9b4d134 100644
--- a/Workbench/Node/View/ActionNodeControl.xaml
+++ b/Workbench/Node/View/ActionNodeControl.xaml
@@ -107,7 +107,6 @@
-