misc optimization & refactoring
This commit is contained in:
@@ -0,0 +1,108 @@
|
||||
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();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user