mirror of
https://gitee.com/akwkevin/aistudio.-wpf.-diagram
synced 2026-03-02 15:50:51 +08:00
xx
This commit is contained in:
@@ -11,6 +11,7 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
{
|
||||
public abstract class ConnectorInfoBase : SelectableViewModelBase, IAttachTo
|
||||
{
|
||||
|
||||
public ConnectorInfoBase(ConnectorOrientation orientation) : this(null, orientation)
|
||||
{
|
||||
|
||||
|
||||
@@ -44,6 +44,7 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private double _connectorValue;
|
||||
public double ConnectorValue
|
||||
{
|
||||
|
||||
@@ -203,6 +203,26 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
return connector;
|
||||
}
|
||||
|
||||
public virtual LogicalConnectorInfo ExecuteAddToInput(LogicalConnectorInfo connector)
|
||||
{
|
||||
if (Input.Values.Count >= 2)
|
||||
{
|
||||
this.ItemHeight = this.ItemHeight * (Input.Values.Count + 1) / Input.Values.Count;
|
||||
}
|
||||
connector.Orientation = ConnectorOrientation.Left;
|
||||
connector.IsInnerPoint = true;
|
||||
connector.IsPortless = false;
|
||||
connector.XRatio = 0;
|
||||
Input.Add(Input.Count, connector);
|
||||
for (int i = 0; i < Input.Values.Count; i++)
|
||||
{
|
||||
Input[i].YRatio = (i + 1.0) / (Input.Values.Count + 1.0);
|
||||
}
|
||||
AddConnector(connector);
|
||||
|
||||
return connector;
|
||||
}
|
||||
|
||||
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]);
|
||||
@@ -218,6 +238,22 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
return connector;
|
||||
}
|
||||
|
||||
public virtual LogicalConnectorInfo ExecuteAddToOutput(LogicalConnectorInfo connector)
|
||||
{
|
||||
connector.Orientation = ConnectorOrientation.Right;
|
||||
connector.IsInnerPoint = true;
|
||||
connector.IsPortless = false;
|
||||
connector.XRatio = 1;
|
||||
Output.Add(Output.Count, connector);
|
||||
for (int i = 0; i < Output.Values.Count; i++)
|
||||
{
|
||||
Output[i].YRatio = (i + 1.0) / (Output.Values.Count + 1.0);
|
||||
}
|
||||
AddConnector(connector);
|
||||
|
||||
return connector;
|
||||
}
|
||||
|
||||
public virtual List<ConnectorValueType> ValueTypeInput
|
||||
{
|
||||
get
|
||||
|
||||
Reference in New Issue
Block a user