public BehaviorToolButton AddToolButton(Behavior behavior) { BehaviorToolButton button = behavior.CreateToolButton(); string category = BehaviorOrderer.GetCategory(behavior); AddToolButton(button, category); return(button); }
public static IEnumerable <Behavior> LoadBehaviors(Assembly assembly) { List <Behavior> result = new List <Behavior>(); Type basic = typeof(Behavior); foreach (Type t in assembly.GetTypes()) { if (basic.IsAssignableFrom(t) && !t.IsAbstract && t.GetConstructor(new Type[0]) != null && !t.HasAttribute <IgnoreAttribute>()) { Behavior instance = Activator.CreateInstance(t) as Behavior; result.Add(instance); } } BehaviorOrderer.Order(result); return(result); }