109 lines
3.4 KiB
C#
109 lines
3.4 KiB
C#
using System;
|
|
using System.ComponentModel;
|
|
|
|
namespace Hyper.ComponentModel {
|
|
public abstract class ChainingPropertyDescriptor : PropertyDescriptor {
|
|
private readonly PropertyDescriptor _root;
|
|
protected PropertyDescriptor Root { get { return _root; } }
|
|
protected ChainingPropertyDescriptor(PropertyDescriptor root)
|
|
: base(root) {
|
|
_root = root;
|
|
}
|
|
public override void AddValueChanged(object component, EventHandler handler) {
|
|
Root.AddValueChanged(component, handler);
|
|
}
|
|
public override AttributeCollection Attributes {
|
|
get {
|
|
return Root.Attributes;
|
|
}
|
|
}
|
|
public override bool CanResetValue(object component) {
|
|
return Root.CanResetValue(component);
|
|
}
|
|
public override string Category {
|
|
get {
|
|
return Root.Category;
|
|
}
|
|
}
|
|
public override Type ComponentType {
|
|
get { return Root.ComponentType; }
|
|
}
|
|
public override TypeConverter Converter {
|
|
get {
|
|
return Root.Converter;
|
|
}
|
|
}
|
|
public override string Description {
|
|
get {
|
|
return Root.Description;
|
|
}
|
|
}
|
|
public override bool DesignTimeOnly {
|
|
get {
|
|
return Root.DesignTimeOnly;
|
|
}
|
|
}
|
|
public override string DisplayName {
|
|
get {
|
|
return Root.DisplayName;
|
|
}
|
|
}
|
|
public override bool Equals(object obj) {
|
|
return Root.Equals(obj);
|
|
}
|
|
public override PropertyDescriptorCollection GetChildProperties(object instance, Attribute[] filter) {
|
|
return Root.GetChildProperties(instance, filter);
|
|
}
|
|
public override object GetEditor(Type editorBaseType) {
|
|
return Root.GetEditor(editorBaseType);
|
|
}
|
|
public override int GetHashCode() {
|
|
return Root.GetHashCode();
|
|
}
|
|
public override object GetValue(object component) {
|
|
return Root.GetValue(component);
|
|
}
|
|
public override bool IsBrowsable {
|
|
get {
|
|
return Root.IsBrowsable;
|
|
}
|
|
}
|
|
public override bool IsLocalizable {
|
|
get {
|
|
return Root.IsLocalizable;
|
|
}
|
|
}
|
|
public override bool IsReadOnly {
|
|
get { return Root.IsReadOnly; }
|
|
}
|
|
public override string Name {
|
|
get {
|
|
return Root.Name;
|
|
}
|
|
}
|
|
public override Type PropertyType {
|
|
get { return Root.PropertyType; }
|
|
}
|
|
public override void RemoveValueChanged(object component, EventHandler handler) {
|
|
Root.RemoveValueChanged(component, handler);
|
|
}
|
|
public override void ResetValue(object component) {
|
|
Root.ResetValue(component);
|
|
}
|
|
public override void SetValue(object component, object value) {
|
|
Root.SetValue(component, value);
|
|
}
|
|
public override bool ShouldSerializeValue(object component) {
|
|
return Root.ShouldSerializeValue(component);
|
|
}
|
|
public override bool SupportsChangeEvents {
|
|
get {
|
|
return Root.SupportsChangeEvents;
|
|
}
|
|
}
|
|
public override string ToString() {
|
|
return Root.ToString();
|
|
}
|
|
}
|
|
}
|