From e76a50f6e5d1c6f7ca6dca9bbb4072e77fdb0153 Mon Sep 17 00:00:00 2001 From: kwai Date: Fri, 18 Aug 2023 18:56:37 +0800 Subject: [PATCH] block --- .../Controls/BlockDragThumb.cs | 48 ------------------ .../BlockDesignerItemViewModel.cs | 50 +++++-------------- 2 files changed, 13 insertions(+), 85 deletions(-) delete mode 100644 AIStudio.Wpf.DiagramDesigner/Controls/BlockDragThumb.cs diff --git a/AIStudio.Wpf.DiagramDesigner/Controls/BlockDragThumb.cs b/AIStudio.Wpf.DiagramDesigner/Controls/BlockDragThumb.cs deleted file mode 100644 index 2ce2415..0000000 --- a/AIStudio.Wpf.DiagramDesigner/Controls/BlockDragThumb.cs +++ /dev/null @@ -1,48 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Diagnostics; -using System.Linq; -using System.Threading; -using System.Windows; -using System.Windows.Controls.Primitives; -using System.Windows.Input; -using System.Windows.Media; -using AIStudio.Wpf.DiagramDesigner.Geometrys; - -namespace AIStudio.Wpf.DiagramDesigner.Controls -{ - public class BlockDragThumb : DragThumb - { - BlockDesignerItemViewModel DesignerItem - { - get - { - return DataContext as BlockDesignerItemViewModel; - } - } - - private Point? firstPoint; - protected override void OnPreviewMouseLeftButtonDown(MouseButtonEventArgs e) - { - base.OnPreviewMouseLeftButtonDown(e); - if (e.LeftButton == MouseButtonState.Pressed && firstPoint == null) - { - firstPoint = e.GetPosition(this); - DesignerItem.BeforeExecution(); - } - } - - protected override void OnPreviewMouseLeftButtonUp(MouseButtonEventArgs e) - { - base.OnPreviewMouseLeftButtonDown(e); - - if (firstPoint == e.GetPosition(this)) - { - DesignerItem.EditCommand?.Execute(e.GetPosition(this)); - firstPoint = null; - } - - } - - } -} diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/BlockViewModel/BlockDesignerItemViewModel.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/BlockViewModel/BlockDesignerItemViewModel.cs index 850f6e9..28feb98 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/BlockViewModel/BlockDesignerItemViewModel.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/BlockViewModel/BlockDesignerItemViewModel.cs @@ -467,45 +467,10 @@ namespace AIStudio.Wpf.DiagramDesigner items.ForEach(p => p.ExecutStatus = 0); } - public async Task Execute() - { - await StopExecution(0); - await BeforeExecution(); - if (await Executing()) - { - await AfterExecution(); - } - else - { - ExecutStatus = 0; - } - } - - public virtual Task BeforeExecution() - { - ExecutStatus = 1; - return Task.CompletedTask; - } - - public virtual Task Executing() - { - return Task.FromResult(true); - } - - public virtual Task StopExecution(int status) + public virtual Task Execute() { return Task.CompletedTask; - } - - public virtual async Task AfterExecution() - { - if (ExecutStatus == 1) - { - ExecutStatus = 0; - if (LinkNode.Next != null) - await LinkNode.Next.Value.Execute(); - } - } + } public virtual object GetResult() { @@ -637,4 +602,15 @@ namespace AIStudio.Wpf.DiagramDesigner } } #endregion + + [FlagsAttribute] + public enum ExecutStatus + { + Stop, + Run, + PauseCommand, + ContinueCommand, + StopCommand, + + } }