This commit is contained in:
艾竹
2023-04-23 22:44:15 +08:00
parent 1cef64c7c8
commit e5d187d8c8
3 changed files with 17 additions and 8 deletions

View File

@@ -30,7 +30,7 @@
</DataTemplate>
<DataTemplate DataType="{x:Type dd:LogicalConnectorInfo}">
<Grid>
<Grid ToolTip="{Binding Name}">
<Grid Width="{Binding ConnectorWidth}" Height="{Binding ConnectorHeight}" HorizontalAlignment="Left" VerticalAlignment="Top">
<Grid.ContextMenu>
<ContextMenu ItemsSource="{Binding MenuOptions}">

View File

@@ -592,7 +592,7 @@ namespace AIStudio.Wpf.DiagramDesigner
}
}
public void ClearConnectors()
public virtual void ClearConnectors()
{
connectors.Clear();
}

View File

@@ -177,7 +177,14 @@ namespace AIStudio.Wpf.DiagramDesigner
public Dictionary<int, LogicalConnectorInfo> Input { get; set; } = new Dictionary<int, LogicalConnectorInfo>();
public Dictionary<int, LogicalConnectorInfo> Output { get; set; } = new Dictionary<int, LogicalConnectorInfo>();
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++)
{