Пример #1
0
 public TechnoExt(Pointer <TechnoClass> OwnerObject) : base(OwnerObject)
 {
     _extComponent          = new ExtComponent <TechnoExt>(this, 0, "TechnoExt root component");
     _decoratorComponent    = new DecoratorComponent();
     _extComponent.OnAwake += () => ScriptManager.CreateScriptableTo(_extComponent, Type.Scripts, this);
     _extComponent.OnAwake += () => _decoratorComponent.AttachToComponent(_extComponent);
 }
Пример #2
0
        public void TestDecorator()
        {
            DecoratorComponentBase component = new DecoratorComponent();

            component.Operation();

            ConcreteDecorator decorator = new ConcreteDecorator(component);

            decorator.Operation();
        }
Пример #3
0
        public List <DecoratorComponent> GetAllDecoratorsTypes()
        {
            var abstractClass = typeof(DecoratorComponent);

            var derivedClass = AppDomain.CurrentDomain.GetAssemblies()
                               .SelectMany(z => z.GetTypes())
                               .Where(z => abstractClass.IsAssignableFrom(z) &&
                                      !z.IsInterface && !z.IsAbstract && z.Name != "DecoratorConcreteComponent")
                               .ToList();

            List <DecoratorComponent> decoratorsTypes = new List <DecoratorComponent>();

            foreach (var type in derivedClass)
            {
                DecoratorComponent decorator = (DecoratorComponent)Activator.CreateInstance(type);
                decoratorsTypes.Add(decorator);
            }

            return(decoratorsTypes);
        }
 public ConversionFromPLNtoUSDDecorator(DecoratorComponent baseComponent) : base(baseComponent)
 {
 }
Пример #5
0
 public TaxDecorator(DecoratorComponent baseComponent) : base(baseComponent)
 {
 }
 public CommissionDecorator(DecoratorComponent baseComponent) : base(baseComponent)
 {
 }