mirror of
https://gitee.com/langsisi_admin/serein-flow
synced 2026-03-02 15:50:47 +08:00
流程上下文添加了调用信息记录
This commit is contained in:
@@ -58,7 +58,7 @@ namespace Serein.Workbench.Node.View
|
||||
var result = nodeContainerControl.PlaceNode(this);
|
||||
if (!result) // 检查是否放置成功,如果不成功,需要重新添加回来
|
||||
{
|
||||
FlowCanvas.Add(this); // 从画布上移除
|
||||
FlowCanvas.Add(this);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
<TextBox IsEnabled="{Binding IsEnabledOnView}" MinWidth="50" Margin="2" Text="{Binding NodeModel.KeyName, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
HorizontalAlignment="Stretch" VerticalAlignment="Center">
|
||||
</TextBox>
|
||||
<Button Content="EXP" Command="{Binding CommandCopyDataExp}" Height="17.2"></Button>
|
||||
<!--<Button Content="EXP" Command="{Binding CommandCopyDataExp}" Height="17.2"></Button>-->
|
||||
<!--<Button Content="刷新 " Command="{Binding CommandCopyDataExp}" Height="17.2" Margin="2,0,0,0"></Button>-->
|
||||
</StackPanel>
|
||||
|
||||
|
||||
@@ -10,6 +10,8 @@ namespace Serein.Workbench.Node.View
|
||||
/// </summary>
|
||||
public partial class GlobalDataControl : NodeControlBase, INodeJunction, INodeContainerControl
|
||||
{
|
||||
private readonly GlobalDataNodeControlViewModel viewModel;
|
||||
|
||||
public GlobalDataControl() : base()
|
||||
{
|
||||
// 窗体初始化需要
|
||||
@@ -26,6 +28,7 @@ namespace Serein.Workbench.Node.View
|
||||
DataContext = viewModel;
|
||||
viewModel.NodeModel.DisplayName = "[全局数据]";
|
||||
InitializeComponent();
|
||||
this.viewModel = viewModel;
|
||||
}
|
||||
|
||||
|
||||
@@ -56,6 +59,7 @@ namespace Serein.Workbench.Node.View
|
||||
{
|
||||
return false;
|
||||
}
|
||||
//viewModel.NodeModel is SingleGlobalDataNode
|
||||
GlobalDataPanel.Children.Add(nodeControl);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -261,11 +261,15 @@ namespace Serein.Workbench.Services
|
||||
private void FlowEEForwardingService_OnNodeTakeOut(NodeTakeOutEventArgs eventArgs)
|
||||
{
|
||||
string nodeGuid = eventArgs.NodeGuid;
|
||||
if (!TryGetControl(nodeGuid, out var nodeControl))
|
||||
string containerNodeGuid = eventArgs.ContainerNodeGuid;
|
||||
if (!TryGetControl(containerNodeGuid, out var containerNodeControl) || !TryGetControl(nodeGuid, out var nodeControl))
|
||||
{
|
||||
return;
|
||||
}
|
||||
nodeControl.TakeOutContainer(); // 从容器节点中取出
|
||||
(double x, double y) = (Canvas.GetLeft(containerNodeControl), Canvas.GetRight(containerNodeControl));
|
||||
Canvas.SetLeft(nodeControl, x + 400);
|
||||
Canvas.SetRight(nodeControl, y + 200);
|
||||
}
|
||||
|
||||
private void FlowEEForwardingService_OnNodePlace(NodePlaceEventArgs eventArgs)
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<!--<nodeView:NetScriptNodeControl x:Name="NetScriptNodeControl" Margin="10" AllowDrop="True" PreviewMouseMove="BaseNodeControl_PreviewMouseMove"/>-->
|
||||
<nodeView:FlowCallNodeControl MaxWidth="110" MaxHeight="160" x:Name="FlowCallNodeControl" Margin="10" AllowDrop="True" PreviewMouseMove="BaseNodeControl_PreviewMouseMove"/>
|
||||
<nodeView:ScriptNodeControl MaxWidth="110" MaxHeight="160" x:Name="ScriptNodeControl" Margin="10" AllowDrop="True" PreviewMouseMove="BaseNodeControl_PreviewMouseMove"/>
|
||||
<!--<nodeView:GlobalDataControl MaxWidth="110" MaxHeight="160" x:Name="GlobalDataControl" Margin="10" AllowDrop="True" PreviewMouseMove="BaseNodeControl_PreviewMouseMove"/>-->
|
||||
<nodeView:GlobalDataControl MaxWidth="110" MaxHeight="160" x:Name="GlobalDataControl" Margin="10" AllowDrop="True" PreviewMouseMove="BaseNodeControl_PreviewMouseMove"/>
|
||||
<!--<nodeView:ExpOpNodeControl MaxWidth="110" MaxHeight="160" x:Name="ExpOpNodeControl" Margin="10" AllowDrop="True" PreviewMouseMove="BaseNodeControl_PreviewMouseMove"/>-->
|
||||
<!--<nodeView:ConditionNodeControl MaxWidth="110" MaxHeight="160" x:Name="ConditionNodeControl" Margin="10" AllowDrop="True" PreviewMouseMove="BaseNodeControl_PreviewMouseMove"/>-->
|
||||
<!--<nodeView:ConditionRegionControl x:Name="ConditionRegionControl" Margin="10" AllowDrop="True" PreviewMouseMove="BaseNodeControl_PreviewMouseMove"/>-->
|
||||
|
||||
@@ -122,7 +122,7 @@ namespace Serein.Workbench.Views
|
||||
private readonly TranslateTransform translateTransform;
|
||||
#endregion
|
||||
|
||||
#region 初始化
|
||||
#region 初始化画布与相关事件
|
||||
|
||||
public FlowCanvasView(FlowCanvasDetails model)
|
||||
{
|
||||
@@ -173,11 +173,9 @@ namespace Serein.Workbench.Views
|
||||
|
||||
}
|
||||
|
||||
|
||||
private void InitEvent()
|
||||
{
|
||||
keyEventService.OnKeyDown += KeyEventService_OnKeyDown;
|
||||
//flowNodeService.OnRemoveConnectionLine += FlowNodeService_OnRemoveConnectionLine;
|
||||
flowEEForwardingService.NodeLocated += FlowEEForwardingService_OnNodeLocated;
|
||||
}
|
||||
|
||||
@@ -357,8 +355,7 @@ namespace Serein.Workbench.Views
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
#region 接口实现
|
||||
#region 画布节点操作接口实现
|
||||
private IFlowCanvas Api => this;
|
||||
|
||||
/// <inheritdoc/>
|
||||
@@ -568,14 +565,20 @@ namespace Serein.Workbench.Views
|
||||
if (keyEventService.GetKeyState(Key.LeftCtrl) || keyEventService.GetKeyState(Key.RightCtrl))
|
||||
{
|
||||
// Ctrl + F5 调试当前流程
|
||||
_ = flowEnvironment.FlowControl.StartFlowAsync([flowNodeService.CurrentSelectCanvas.Guid]);
|
||||
Task.Run(() =>
|
||||
{
|
||||
flowEnvironment.FlowControl.StartFlowAsync([flowNodeService.CurrentSelectCanvas.Guid]);
|
||||
});
|
||||
}
|
||||
else if (selectNodeControls.Count == 1 )
|
||||
{
|
||||
// F5 调试当前选定节点
|
||||
var nodeModel = selectNodeControls[0].ViewModel.NodeModel;
|
||||
SereinEnv.WriteLine(InfoType.INFO, $"调试运行当前节点:{nodeModel.Guid}");
|
||||
_ = flowEnvironment.FlowControl.StartFlowAsync<FlowResult>(nodeModel.Guid);
|
||||
Task.Run(() =>
|
||||
{
|
||||
flowEnvironment.FlowControl.StartFlowAsync<FlowResult>(nodeModel.Guid);
|
||||
});
|
||||
//_ = nodeModel.StartFlowAsync(new DynamicContext(flowEnvironment), new CancellationToken());
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user