From 1cef64c7c84362c395645f0c60efda49305e3059 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=89=BE=E7=AB=B9?= Date: Sun, 23 Apr 2023 21:45:08 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=BC=80=E5=8F=91=E4=B8=AD=E7=9A=84?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E6=B3=A8=E9=87=8A=E6=8E=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UserControls/DiagramControl.xaml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/AIStudio.Wpf.DiagramDesigner/UserControls/DiagramControl.xaml b/AIStudio.Wpf.DiagramDesigner/UserControls/DiagramControl.xaml index 64eca6c..78af4c1 100644 --- a/AIStudio.Wpf.DiagramDesigner/UserControls/DiagramControl.xaml +++ b/AIStudio.Wpf.DiagramDesigner/UserControls/DiagramControl.xaml @@ -265,7 +265,7 @@ VerticalAlignment="Bottom" HorizontalAlignment="Left" Visibility="{Binding Path=ShowConnectors, Converter={x:Static dd:BoolToVisibilityConverter.Instance}}" /> - - + --> -- Gitee From e5d187d8c81a9ef1943704c8116b27ae966f3ae2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=89=BE=E7=AB=B9?= Date: Sun, 23 Apr 2023 22:44:15 +0800 Subject: [PATCH 2/2] If --- .../Themes/ConnectorItem.xaml | 4 ++-- .../DesignerItemViewModelBase.cs | 2 +- .../LogicalGateItemViewModelBase.cs | 19 ++++++++++++++----- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/AIStudio.Wpf.DiagramDesigner/Themes/ConnectorItem.xaml b/AIStudio.Wpf.DiagramDesigner/Themes/ConnectorItem.xaml index 5b77ff9..a0f6640 100644 --- a/AIStudio.Wpf.DiagramDesigner/Themes/ConnectorItem.xaml +++ b/AIStudio.Wpf.DiagramDesigner/Themes/ConnectorItem.xaml @@ -30,8 +30,8 @@ - - + + diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/DesignerItemViewModelBase.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/DesignerItemViewModelBase.cs index 3014f78..9062a0d 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/DesignerItemViewModelBase.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/BaseViewModel/DesignerItemViewModelBase.cs @@ -592,7 +592,7 @@ namespace AIStudio.Wpf.DiagramDesigner } } - public void ClearConnectors() + public virtual void ClearConnectors() { connectors.Clear(); } diff --git a/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/LogicalGateItemViewModelBase.cs b/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/LogicalGateItemViewModelBase.cs index 80ea4b4..f4955af 100644 --- a/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/LogicalGateItemViewModelBase.cs +++ b/AIStudio.Wpf.DiagramDesigner/ViewModels/DefaultViewModel/LogicalGateItemViewModelBase.cs @@ -38,17 +38,17 @@ namespace AIStudio.Wpf.DiagramDesigner public LogicalGateItemViewModelBase(IDiagramViewModel root, LogicalType logicalType) : base(root) { - this.LogicalType = logicalType; + this.LogicalType = logicalType; } public LogicalGateItemViewModelBase(IDiagramViewModel root, SelectableItemBase designer) : base(root, designer) { - + } public LogicalGateItemViewModelBase(IDiagramViewModel root, SerializableItem serializableItem, string serializableType) : base(root, serializableItem, serializableType) { - + } public override SelectableItemBase GetSerializableObject() @@ -177,7 +177,14 @@ namespace AIStudio.Wpf.DiagramDesigner public Dictionary Input { get; set; } = new Dictionary(); public Dictionary Output { get; set; } = new Dictionary(); - public virtual LogicalConnectorInfo ExecuteAddInput(object parameter, int index = 0) + public override void ClearConnectors() + { + connectors.Clear(); + Input.Clear(); + Output.Clear(); + } + + public virtual LogicalConnectorInfo ExecuteAddInput(object parameter, int index = 0, string name = null) { if (Input.Values.Count >= 2) { @@ -185,6 +192,7 @@ namespace AIStudio.Wpf.DiagramDesigner } LogicalConnectorInfo connector = new LogicalConnectorInfo(this, ConnectorOrientation.Left, true, false, ValueTypeInput.Count > index ? ValueTypeInput[index] : ValueTypeInput[0]); connector.XRatio = 0; + connector.Name = name ?? $"Input{index}"; Input.Add(Input.Count, connector); for (int i = 0; i < Input.Values.Count; i++) { @@ -195,10 +203,11 @@ namespace AIStudio.Wpf.DiagramDesigner return connector; } - public virtual LogicalConnectorInfo ExecuteAddOutput(object parameter, int index = 0) + public virtual LogicalConnectorInfo ExecuteAddOutput(object parameter, int index = 0, string name = null) { LogicalConnectorInfo connector = new LogicalConnectorInfo(this, ConnectorOrientation.Right, true, false, ValueTypeOutput.Count > index ? ValueTypeOutput[index] : ValueTypeInput[0]); connector.XRatio = 1; + connector.Name = name ?? $"Output{index}"; Output.Add(Output.Count, connector); for (int i = 0; i < Output.Values.Count; i++) { -- Gitee