mirror of
https://gitee.com/akwkevin/aistudio.-wpf.-diagram
synced 2026-03-03 00:00:57 +08:00
block的序列化与反序列化
This commit is contained in:
@@ -28,15 +28,56 @@ namespace AIStudio.Wpf.DiagramDesigner
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
public override SelectableItemBase GetSerializableObject()
|
||||
{
|
||||
return new BlockDesignerItem(this);
|
||||
}
|
||||
|
||||
protected override void InitNew()
|
||||
{
|
||||
ItemWidth = double.NaN;
|
||||
ItemHeight = double.NaN;
|
||||
AddConnector(new BlockConnectorInfo(this.Root, this, ConnectorOrientation.Top));
|
||||
AddConnector(new BlockConnectorInfo(this.Root, this, ConnectorOrientation.Bottom));
|
||||
|
||||
}
|
||||
|
||||
protected override void Init(IDiagramViewModel root, bool initNew)
|
||||
{
|
||||
base.Init(root, initNew);
|
||||
|
||||
IsReadOnlyText = true;
|
||||
}
|
||||
|
||||
protected override void LoadDesignerItemViewModel(SelectableItemBase designerbase)
|
||||
{
|
||||
base.LoadDesignerItemViewModel(designerbase);
|
||||
|
||||
if (designerbase is BlockDesignerItem designer)
|
||||
{
|
||||
if (designer.Connectors != null)
|
||||
{
|
||||
ClearConnectors();
|
||||
foreach (var connector in designer.Connectors)
|
||||
{
|
||||
BlockConnectorInfo fullyCreatedConnectorInfo = new BlockConnectorInfo(this.Root, this, connector);
|
||||
AddConnector(fullyCreatedConnectorInfo);
|
||||
}
|
||||
}
|
||||
|
||||
if (designer.Containers != null)
|
||||
{
|
||||
ClearContainers();
|
||||
foreach (var container in designer.Containers)
|
||||
{
|
||||
BlockItemsContainerInfo blockitemsContainerInfo = new BlockItemsContainerInfo(this.Root, this, container);
|
||||
AddContainer(blockitemsContainerInfo);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void AddNext(BlockDesignerItemViewModel next, bool first = true)
|
||||
{
|
||||
if (this.Next == next)
|
||||
|
||||
Reference in New Issue
Block a user