重写脚本解释器的实现,提高其可读性。

This commit is contained in:
fengjiayi
2025-07-13 17:34:03 +08:00
parent 6141d2c1c1
commit 01ab905155
42 changed files with 1747 additions and 715 deletions

View File

@@ -83,22 +83,32 @@ namespace Serein.Workbench.Node.ViewModel
}
/// <summary>
/// 选择画布发生改变
/// </summary>
/// <param name="value"></param>
partial void OnSelectCanvasChanged(FlowCanvasViewModel value)
{
FlowCallNode.ResetTargetNode();
FlowCallNode.ResetTargetNode(); // 改变画布直接重置
}
/// <summary>
/// 选择的节点发生改变
/// </summary>
/// <param name="value"></param>
partial void OnSelectNodeChanged(IFlowNode value)
{
if(value is null)
{
FlowCallNode.ResetTargetNode();
FlowCallNode.ResetTargetNode(); // 如果是不选择了,则重置一下
return;
}
FlowCallNode.SetTargetNode(value.Guid);
FlowCallNode.SetTargetNode(value.Guid); // 重新设置目标节点
}
/// <summary>
/// 刷新可选画布
/// </summary>
private void RershCanvass()
{
var canvass = flowNodeService.FlowCanvass.Select(f => (FlowCanvasViewModel)f.DataContext).ToArray(); // .Where(f => f.Model.PublicNodes.Count > 0)