序列化调整中

This commit is contained in:
艾竹
2023-01-24 23:10:57 +08:00
parent 66d3a6685b
commit a5005ac083
47 changed files with 387 additions and 333 deletions

View File

@@ -33,24 +33,21 @@ namespace AIStudio.Wpf.DiagramDesigner
(FontViewModel as FontViewModel).PropertyChanged += FontViewModel_PropertyChanged;
}
public SelectableViewModelBase(IDiagramViewModel root, string json)
public SelectableViewModelBase(IDiagramViewModel root, string serializableString, string serializableType)
{
Init();
LoadDesignerItemViewModel(root, JsonConvert.DeserializeObject(json, ToXmlType()) as SelectableItemBase);
SelectableItemBase obj = SerializeHelper.DeserializeObject(GetSerializableType(), serializableString, serializableType);
LoadDesignerItemViewModel(root, obj);
(FontViewModel as FontViewModel).PropertyChanged += FontViewModel_PropertyChanged;
}
}
public virtual SelectableItemBase ToXmlObject()
public virtual SerializableItem ToSerializableItem(string serializableType)
{
return null;
}
public virtual SerializableItem ToSerializabObject()
{
var obj = ToXmlObject();
var obj = GetSerializableObject();
if (obj != null)
{
return new SerializableItem() { TypeName = this.GetType().FullName, ObjectJson = obj.ToJson() };
return new SerializableItem() { TypeName = this.GetType().FullName, SerializableString = SerializeHelper.SerializeObject(obj, serializableType) };
}
else
{
@@ -58,8 +55,12 @@ namespace AIStudio.Wpf.DiagramDesigner
}
}
public virtual SelectableItemBase GetSerializableObject()
{
return null;
}
public virtual Type ToXmlType()
public virtual Type GetSerializableType()
{
return null;
}