Files
serein-flow/Library/FlowNode/FlowCanvasDetails.cs
fengjiayi 0d89ac1415 1. 脚本转c#代码功能,支持了[Flipflop]触发器节点
2. 修复了Script.StringNode转C#中存在多余的转义符的问题
3. 为IFlowControl添加了Task StratNodeAsync(string)的接口,用于在代码生成场景中的流程控制
4. 调整了关于Lightweight运行环境的文件位置
2025-08-04 22:38:20 +08:00

106 lines
2.4 KiB
C#

using Serein.Library.Api;
using System.Collections.Generic;
namespace Serein.Library
{
/// <summary>
/// 流程画布
/// </summary>
[FlowDataProperty(ValuePath = NodeValuePath.Node)]
public partial class FlowCanvasDetails
{
/// <summary>
/// 流程画布的构造函数
/// </summary>
/// <param name="env"></param>
public FlowCanvasDetails(IFlowEnvironment env)
{
Env = env;
}
/// <summary>
/// 流程画布的运行环境
/// </summary>
public IFlowEnvironment Env { get; }
/// <summary>
/// 画布拥有的节点
/// </summary>
[DataInfo(IsProtection = false)]
private List<IFlowNode> _nodes = [];
//private System.Collections.ObjectModel.ObservableCollection<IFlowNode> _nodes = [];
/// <summary>
/// 画布公开的节点
/// </summary>
[DataInfo(IsProtection = false)]
private List<IFlowNode> _publicNodes = [];
/// <summary>
/// 标识画布ID
/// </summary>
[DataInfo(IsProtection = false)]
private string _guid;
/// <summary>
/// 画布名称
/// </summary>
[DataInfo(IsNotification = true)]
private string _name;
/// <summary>
/// 画布宽度
/// </summary>
[DataInfo(IsNotification = true)]
private double _width;
/// <summary>
/// 画布高度
/// </summary>
[DataInfo(IsNotification = true)]
private double _height;
/// <summary>
/// 预览位置X
/// </summary>
[DataInfo(IsNotification = true)]
private double _viewX;
/// <summary>
/// 预览位置Y
/// </summary>
[DataInfo(IsNotification = true)]
private double _viewY;
/// <summary>
/// 缩放比例X
/// </summary>
[DataInfo(IsNotification = true)]
private double _scaleX = 1;
/// <summary>
/// 缩放比例Y
/// </summary>
[DataInfo(IsNotification = true)]
private double _scaleY = 1;
/// <summary>
/// 起始节点
/// </summary>
[DataInfo]
private IFlowNode? _startNode;
}
public partial class FlowCanvasDetails
{
}
}