mirror of
https://gitee.com/akwkevin/aistudio.-wpf.-diagram
synced 2026-03-03 00:00:57 +08:00
137 lines
2.6 KiB
C#
137 lines
2.6 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Windows;
|
|
using System.Xml.Serialization;
|
|
using AIStudio.Wpf.DiagramDesigner;
|
|
using AIStudio.Wpf.DiagramModels;
|
|
using AIStudio.Wpf.DiagramModels.ViewModels;
|
|
using AIStudio.Wpf.Mind;
|
|
using AIStudio.Wpf.Mind.ViewModels;
|
|
|
|
namespace AIStudio.Wpf.Flowchart.Models
|
|
{
|
|
|
|
public class MindNodeModel : DiagramNode
|
|
{
|
|
public Size Spacing
|
|
{
|
|
get; set;
|
|
}
|
|
|
|
|
|
public Point Offset
|
|
{
|
|
get; set;
|
|
}
|
|
|
|
public bool IsExpanded
|
|
{
|
|
get; set;
|
|
}
|
|
|
|
[XmlElement]
|
|
public LinkInfoModel LinkInfoModel
|
|
{
|
|
get; set;
|
|
}
|
|
|
|
[XmlElement]
|
|
public ImageInfoModel ImageInfoModel
|
|
{
|
|
get; set;
|
|
}
|
|
|
|
public string Remark
|
|
{
|
|
get; set;
|
|
}
|
|
|
|
public double? Priority
|
|
{
|
|
get; set;
|
|
}
|
|
|
|
public double? Rate
|
|
{
|
|
get; set;
|
|
}
|
|
|
|
[XmlArray]
|
|
public List<string> Tags
|
|
{
|
|
get; set;
|
|
}
|
|
|
|
public override DiagramItemViewModel ToNodel(IDiagramViewModel diagramViewModel)
|
|
{
|
|
MindNode mindNode = new MindNode(diagramViewModel);
|
|
|
|
mindNode.Spacing = Spacing;
|
|
mindNode.Offset = Offset;
|
|
mindNode.IsExpanded = IsExpanded;
|
|
mindNode.LinkInfo = new LinkInfo(LinkInfoModel?.Url, LinkInfoModel?.Text);
|
|
mindNode.ImageInfo = new ImageInfo(ImageInfoModel?.Url, ImageInfoModel?.Text);
|
|
mindNode.Remark = Remark;
|
|
mindNode.Priority = Priority;
|
|
mindNode.Rate = Rate;
|
|
if (Tags != null)
|
|
{
|
|
mindNode.Tags = new System.Collections.ObjectModel.ObservableCollection<string>(Tags);
|
|
}
|
|
|
|
mindNode.InitLayout(false);
|
|
return mindNode;
|
|
}
|
|
|
|
|
|
}
|
|
|
|
public class LinkInfoModel
|
|
{
|
|
public LinkInfoModel()
|
|
{
|
|
|
|
}
|
|
|
|
public LinkInfoModel(LinkInfo linkinfo)
|
|
{
|
|
Url = linkinfo.Url;
|
|
Text = linkinfo.Text;
|
|
}
|
|
|
|
public string Url
|
|
{
|
|
get; set;
|
|
}
|
|
|
|
public string Text
|
|
{
|
|
get; set;
|
|
}
|
|
}
|
|
|
|
public class ImageInfoModel
|
|
{
|
|
public ImageInfoModel()
|
|
{
|
|
|
|
}
|
|
|
|
public ImageInfoModel(ImageInfo imageInfo)
|
|
{
|
|
Url = imageInfo.Url;
|
|
Text = imageInfo.Text;
|
|
}
|
|
|
|
public string Url
|
|
{
|
|
get; set;
|
|
}
|
|
|
|
public string Text
|
|
{
|
|
get; set;
|
|
}
|
|
}
|
|
}
|