Esempio n. 1
0
        private void AddSubItemClickHandler(object sender, EventArgs e)
        {
            Beverage obj = null;

            switch (((Button)sender).Name)
            {
            case "buttonMilkSoy": obj = new MilkSoyDecorator(_lastBeverageAdded); break;

            case "buttonMilkSkim": obj = new MilkSkimDecorator(_lastBeverageAdded); break;

            case "buttonMilk1": obj = new Milk1Decorator(_lastBeverageAdded); break;

            case "buttonMilk2": obj = new Milk2Decorator(_lastBeverageAdded); break;

            case "buttonMilkWhole": obj = new MilkWholeDecorator(_lastBeverageAdded); break;

            case "buttonFlavorCaramel": obj = new CaramelDecorator(_lastBeverageAdded); break;

            case "buttonFlavorHazelnut": obj = new HazelnutSyrupDecorator(_lastBeverageAdded); break;

            case "buttonDecaf": obj = new DecafDecorator(_lastBeverageAdded); break;

            default:
                // TODO - Need to catch this somewhere and display
                throw new ArgumentNullException("Unknown Sub-Item Selected");
            }

            AddSubItem(_lastItemNodeAdded, obj);
        }
 public DoubleShortAndCaramelDecorator(BeverageComponent beverageComponent)
 {
     if (beverageComponent == null)
     {
         this._beverageComponent = new ConcreteEspress();
     }
     _caramelDecorator     = new CaramelDecorator(this._beverageComponent);
     _doubleShortDecorator = new DoubleShortDecorator(this._beverageComponent);
 }