Add primitive visual property
This commit is contained in:
@@ -1,10 +1,14 @@
|
||||
using StructureHelperCommon.Infrastructures.Interfaces;
|
||||
using StructureHelperCommon.Models.VisualProperties;
|
||||
using StructureHelperCommon.Services;
|
||||
|
||||
namespace StructureHelperLogics.Models.BeamShears
|
||||
{
|
||||
public class StirrupBaseUpdateStrategy : IUpdateStrategy<IStirrup>
|
||||
public class StirrupBaseUpdateStrategy : IParentUpdateStrategy<IStirrup>
|
||||
{
|
||||
private IUpdateStrategy<IPrimitiveVisualProperty> visualUpdateStrategy;
|
||||
public bool UpdateChildren { get; set; } = true;
|
||||
|
||||
public void Update(IStirrup targetObject, IStirrup sourceObject)
|
||||
{
|
||||
CheckObject.IsNull(targetObject);
|
||||
@@ -12,6 +16,18 @@ namespace StructureHelperLogics.Models.BeamShears
|
||||
if (ReferenceEquals(targetObject, sourceObject)) { return; }
|
||||
targetObject.Name = sourceObject.Name;
|
||||
targetObject.CompressedGap = sourceObject.CompressedGap;
|
||||
if (UpdateChildren == true)
|
||||
{
|
||||
UpdateTargetChildren(targetObject, sourceObject);
|
||||
}
|
||||
}
|
||||
|
||||
private void UpdateTargetChildren(IStirrup targetObject, IStirrup sourceObject)
|
||||
{
|
||||
CheckObject.IsNull(sourceObject.VisualProperty);
|
||||
CheckObject.IsNull(targetObject.VisualProperty);
|
||||
visualUpdateStrategy ??= new PrimitiveVisualPropertyUpdateStrategy();
|
||||
visualUpdateStrategy.Update(targetObject.VisualProperty, sourceObject.VisualProperty);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user