mirror of
https://gitee.com/langsisi_admin/serein-flow
synced 2026-04-29 02:53:23 +08:00
添加Avalonia项目的demo
This commit is contained in:
17
Serein.Workbench.Avalonia/Api/IFlowEEForwardingService.cs
Normal file
17
Serein.Workbench.Avalonia/Api/IFlowEEForwardingService.cs
Normal file
@@ -0,0 +1,17 @@
|
||||
using Serein.Library.Api;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Serein.Workbench.Avalonia.Api
|
||||
{
|
||||
/// <summary>
|
||||
/// 流程事件管理,转发流程运行环境中触发的事件到工作台各个订阅者
|
||||
/// </summary>
|
||||
internal interface IFlowEEForwardingService : IFlowEnvironmentEvent
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
23
Serein.Workbench.Avalonia/Api/INodeControl.cs
Normal file
23
Serein.Workbench.Avalonia/Api/INodeControl.cs
Normal file
@@ -0,0 +1,23 @@
|
||||
using Serein.Library;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Serein.Workbench.Avalonia.Api
|
||||
{
|
||||
internal interface INodeControl
|
||||
{
|
||||
/// <summary>
|
||||
/// 对应的节点实体
|
||||
/// </summary>
|
||||
NodeModelBase NodeModelBase { get; }
|
||||
|
||||
/// <summary>
|
||||
/// 初始化使用的方法,设置节点实体
|
||||
/// </summary>
|
||||
/// <param name="nodeModel"></param>
|
||||
void SetNodeModel(NodeModelBase nodeModel);
|
||||
}
|
||||
}
|
||||
52
Serein.Workbench.Avalonia/Api/INodeJunction.cs
Normal file
52
Serein.Workbench.Avalonia/Api/INodeJunction.cs
Normal file
@@ -0,0 +1,52 @@
|
||||
using Serein.Library;
|
||||
using Serein.Workbench.Avalonia.Custom.Views;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Serein.Workbench.Avalonia.Api
|
||||
{
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 约束一个节点应该有哪些控制点
|
||||
/// </summary>
|
||||
public interface INodeJunction
|
||||
{
|
||||
/// <summary>
|
||||
/// 方法执行入口控制点
|
||||
/// </summary>
|
||||
NodeJunctionView ExecuteJunction { get; }
|
||||
/// <summary>
|
||||
/// 执行完成后下一个要执行的方法控制点
|
||||
/// </summary>
|
||||
NodeJunctionView NextStepJunction { get; }
|
||||
|
||||
/// <summary>
|
||||
/// 参数节点控制点
|
||||
/// </summary>
|
||||
NodeJunctionView[] ArgDataJunction { get; }
|
||||
/// <summary>
|
||||
/// 返回值控制点
|
||||
/// </summary>
|
||||
NodeJunctionView ReturnDataJunction { get; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取目标参数控制点,用于防止wpf释放资源导致找不到目标节点,返回-1,-1的坐标
|
||||
/// </summary>
|
||||
/// <param name="index"></param>
|
||||
/// <returns></returns>
|
||||
NodeJunctionView GetJunctionOfArgData(int index)
|
||||
{
|
||||
var arr = ArgDataJunction;
|
||||
if (index >= arr.Length)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
return arr[index];
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user