为线的动画做扩展准备

This commit is contained in:
艾竹
2023-04-29 15:29:22 +08:00
parent 7d8b19e4e0
commit f4268b9fc2
23 changed files with 397 additions and 120 deletions

View File

@@ -165,6 +165,7 @@ namespace AIStudio.Wpf.DiagramDesigner
d.ColorViewModel = CopyHelper.Mapper(s.ColorViewModel);
d.FontViewModel = CopyHelper.Mapper(s.FontViewModel);
d.ShapeViewModel = CopyHelper.Mapper(s.ShapeViewModel);
d.AnimationViewModel = CopyHelper.Mapper(s.AnimationViewModel);
d.LockObjectViewModel = CopyHelper.Mapper<LockObjectViewModel, ILockObjectViewModel>(s.LockObjectViewModel);
d.IsLoaded = true;
return d;
@@ -194,16 +195,16 @@ namespace AIStudio.Wpf.DiagramDesigner
public static IShapeViewModel Mapper(IShapeViewModel s)
{
var d = CopyHelper.Mapper<ShapeViewModel, IShapeViewModel>(s);
d.SourceMarker = CopyHelper.Mapper<LinkMarker, ILinkMarker>(s.SourceMarker);
d.SinkMarker = CopyHelper.Mapper<LinkMarker, ILinkMarker>(s.SinkMarker);
d.SourceMarker = CopyHelper.Mapper<SharpPath, ISharpPath>(s.SourceMarker);
d.SinkMarker = CopyHelper.Mapper<SharpPath, ISharpPath>(s.SinkMarker);
return d;
}
public static T Mapper<T>(IShapeViewModel s) where T : IShapeViewModel
{
var d = CopyHelper.Mapper<T, IShapeViewModel>(s);
d.SourceMarker = CopyHelper.Mapper<LinkMarkerItem, ILinkMarker>(s.SourceMarker);
d.SinkMarker = CopyHelper.Mapper<LinkMarkerItem, ILinkMarker>(s.SinkMarker);
d.SourceMarker = CopyHelper.Mapper<SharpPathItem, ISharpPath>(s.SourceMarker);
d.SinkMarker = CopyHelper.Mapper<SharpPathItem, ISharpPath>(s.SinkMarker);
return d;
}
@@ -219,6 +220,18 @@ namespace AIStudio.Wpf.DiagramDesigner
return d;
}
public static IAnimationViewModel Mapper(IAnimationViewModel s)
{
var d = CopyHelper.Mapper<AnimationViewModel, IAnimationViewModel>(s);
return d;
}
public static T Mapper<T>(IAnimationViewModel s) where T : IAnimationViewModel
{
var d = CopyHelper.Mapper<T, IAnimationViewModel>(s);
return d;
}
public static void CopyPropertyValue(IColorViewModel s, IColorViewModel d, string propertyName = null)
{
if (propertyName == "LineColor")