using System; using BansheeEngine; namespace BansheeEditor { /// /// Attribute that can be added to types deriving from . That handle implementation /// will then be used whenever a handle for the type specified in this attribute needs to be displayed. /// /// Implementation must contain a constructor accepting the object for the type the handle is shown for, otherwise /// it will not be recognized by the system. If handle is not shown for any specific type, the constructor should not /// accept any parameters. /// [AttributeUsage(AttributeTargets.Class)] public sealed class CustomHandle : Attribute { private Type type; /// /// Creates a new custom handle attribute. /// /// Type deriving from for which the custom handle will be displayed. /// Type can be null in which case the handle is always displayed. public CustomHandle(Type type) { this.type = type; } } }