using System; namespace Netron.Diagramming.Core { /// /// Descriptor for derived classes (i.e. most of the simple drawing elements like the shape). /// class ComplexShapeBaseDescriptor : ShapeBaseDescriptor { protected override void GetValue(object sender, PropertyEventArgs e) { switch (e.Name) { case "Materials": e.Value = (e.Component as ComplexShapeBase).Children; break; default: base.GetValue(sender, e); break; } } protected override void SetValue(object sender, PropertyEventArgs e) { switch (e.Name) { default: base.SetValue(sender, e); break; } } public ComplexShapeBaseDescriptor(ShapeProvider provider, Type type) : base(provider, type) { this.AddProperty("Materials", typeof(CollectionBase), constLayout, "The collection of shape materials."); } } }