This commit is contained in:
kwai
2023-02-27 20:18:58 +08:00
parent 298ec29dd9
commit f8c2115f03
21 changed files with 326 additions and 75 deletions

View File

@@ -76,6 +76,17 @@ namespace AIStudio.Wpf.Mind.Helpers
}
}
public ConnectionViewModel GetConnectionViewModel(MindNode source, MindNode sink)
{
var connector = new ConnectionViewModel(source.Root, source.Connectors.FirstOrDefault(), sink.Connectors.FirstOrDefault(), DrawMode.ConnectingLineSmooth, RouterMode.RouterNormal);
connector.ColorViewModel.LineColor = source.ColorViewModel.LineColor;
connector.SmoothMargin = 20;
connector.SmoothAutoSlope = 0.2;
connector.ShapeViewModel.SinkMarker.PathStyle = source.ShapeViewModel.SinkMarker.PathStyle;
connector.ShapeViewModel.SinkMarker.SizeStyle = source.ShapeViewModel.SinkMarker.SizeStyle;
return connector;
}
public void LayoutUpdated(MindNode mindNode)
{
@@ -138,7 +149,7 @@ namespace AIStudio.Wpf.Mind.Helpers
var connect = mindNode.Root?.Items.OfType<ConnectionViewModel>().FirstOrDefault(p => p.SourceConnectorInfo?.DataItem == mindNode && p.SinkConnectorInfoFully?.DataItem == child);
connect?.SetSourcePort(mindNode.FirstConnector);
connect?.SetSinkPort(child.LeftConnector);
connect.Visible = child.Visible;
connect?.SetVisible(child.Visible);
}
var lefts = mindNode.Children.Where(p => p.ConnectorOrientation == ConnectorOrientation.Right).ToList();
@@ -156,7 +167,7 @@ namespace AIStudio.Wpf.Mind.Helpers
var connect = mindNode.Root?.Items.OfType<ConnectionViewModel>().FirstOrDefault(p => p.SourceConnectorInfo?.DataItem == mindNode && p.SinkConnectorInfoFully?.DataItem == child);
connect?.SetSourcePort(mindNode.FirstConnector);
connect?.SetSinkPort(child.RightConnector);
connect.Visible = child.Visible;
connect?.SetVisible(child.Visible);
}
}
}
@@ -180,7 +191,7 @@ namespace AIStudio.Wpf.Mind.Helpers
var connect = mindNode.Root?.Items.OfType<ConnectionViewModel>().FirstOrDefault(p => p.SourceConnectorInfo?.DataItem == mindNode && p.SinkConnectorInfoFully?.DataItem == child);
connect?.SetSourcePort(mindNode.RightConnector);
connect?.SetSinkPort(child.LeftConnector);
connect.Visible = child.Visible;
connect?.SetVisible(child.Visible);
}
}
}
@@ -202,7 +213,7 @@ namespace AIStudio.Wpf.Mind.Helpers
var connect = mindNode.Root?.Items.OfType<ConnectionViewModel>().FirstOrDefault(p => p.SourceConnectorInfo?.DataItem == mindNode && p.SinkConnectorInfoFully?.DataItem == child);
connect?.SetSourcePort(mindNode.LeftConnector);
connect?.SetSinkPort(child.RightConnector);
connect.Visible = child.Visible;
connect?.SetVisible(child.Visible);
}
}
}