using System; using System.Collections; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; namespace ANX.ContentCompiler.GUI.Nodes { public class NodeProperties : ICustomTypeDescriptor { public virtual AttributeCollection GetAttributes() { AttributeCollection col = TypeDescriptor.GetAttributes(this, true); return col; } public virtual EventDescriptor GetDefaultEvent() { EventDescriptor ed = TypeDescriptor.GetDefaultEvent(this, true); return ed; } public virtual PropertyDescriptor GetDefaultProperty() { PropertyDescriptor pd = TypeDescriptor.GetDefaultProperty(this, true); return pd; } public virtual object GetEditor(Type editorBaseType) { object o = TypeDescriptor.GetEditor(this, editorBaseType, true); return o; } public virtual EventDescriptorCollection GetEvents() { EventDescriptorCollection edc = TypeDescriptor.GetEvents(this, true); return edc; } public virtual EventDescriptorCollection GetEvents(System.Attribute[] attributes) { EventDescriptorCollection edc = TypeDescriptor.GetEvents(this, attributes, true); return edc; } public virtual object GetPropertyOwner(PropertyDescriptor pd) { return this; } public virtual PropertyDescriptorCollection GetProperties() { PropertyDescriptorCollection pcol = GetProperties(null); return pcol; } public virtual PropertyDescriptorCollection GetProperties(System.Attribute[] attributes) { return TypeDescriptor.GetProperties(this, attributes, true); } public virtual string GetComponentName() { string name = TypeDescriptor.GetComponentName(this, true); return name; } public virtual TypeConverter GetConverter() { TypeConverter tc = TypeDescriptor.GetConverter(this, true); return tc; } public virtual string GetClassName() { return this.GetType().FullName; } } }