Files
StructureHelper/StructureHelper/Windows/UserControls/WorkPlanes/PrimitiveTemplateSelector.cs
Evgeny Redikultsev 738ce5c433 Add graphic primitives
2025-08-30 13:58:12 +05:00

34 lines
1.4 KiB
C#

using StructureHelper.Infrastructure.UI.GraphicalPrimitives;
using System.Windows;
using System.Windows.Controls;
namespace StructureHelper.Windows.UserControls.WorkPlanes
{
public class PrimitiveTemplateSelector : DataTemplateSelector
{
public DataTemplate BeamShearSectionTemplate { get; set; }
public DataTemplate InclinedSectionTemplate { get; set; }
public DataTemplate StirrupByRebarTemplate { get; set; }
public DataTemplate StirrupByDensityTemplate { get; set; }
public DataTemplate StirrupByInclinedRebarTemplate { get; set; }
public DataTemplate ConcentratedForceTemplate { get; set; }
public DataTemplate DistributedLoadTemplate { get; set; }
public override DataTemplate SelectTemplate(object item, DependencyObject container)
{
return item switch
{
BeamShearSectionPrimitive => BeamShearSectionTemplate,
InclinedSectionPrimitive => InclinedSectionTemplate,
StirrupByRebarPrimitive => StirrupByRebarTemplate,
StirrupByDensityPrimitive => StirrupByDensityTemplate,
StirrupByInclinedRebarPrimitive => StirrupByInclinedRebarTemplate,
ConcentratedForcePrimitive => ConcentratedForceTemplate,
DistributedLoadPrimitive => DistributedLoadTemplate,
_ => base.SelectTemplate(item, container)
};
}
}
}