示例#1
0
        private void OrderButton_Click(object sender, EventArgs e)
        {
            CoffeeMachine coffee_machine = null;

            if (CoffeeCheckBox.Checked == true)
            {
                coffee_machine = new Coffee();
            }
            if (CocoaCheckBox.Checked == true)
            {
                coffee_machine = new Cocoa();
            }
            if (ChocolateCheckBox.Checked == true)
            {
                coffee_machine = new Chocolate();
            }
            if (SugarCheckBox.Checked == true)
            {
                coffee_machine = new Sugar(coffee_machine);
            }
            if (MilkCheckBox.Checked == true)
            {
                coffee_machine = new Milk(coffee_machine);
            }
            if (CreamCheckBox.Checked == true)
            {
                coffee_machine = new Cream(coffee_machine);
            }
            if (CoffeeCheckBox.Checked == true && CocoaCheckBox.Checked == true ||
                CoffeeCheckBox.Checked == true && ChocolateCheckBox.Checked == true ||
                CocoaCheckBox.Checked == true && ChocolateCheckBox.Checked == true ||
                CoffeeCheckBox.Checked == true && CocoaCheckBox.Checked == true && ChocolateCheckBox.Checked == true ||
                coffee_machine == null)
            {
                throw new
                      ArgumentException("Ошибка (выбрано больше одного напитка)");
            }
            if (coffee_machine == null)
            {
                throw new
                      ArgumentException("Ошибка (в метод передана пустая строка)");
            }
            TotalTextBox.Text += "Название: " + coffee_machine.Name + Environment.NewLine + "Цена: " + coffee_machine.GetCost() + " руб." + Environment.NewLine;
        }
示例#2
0
 public Sugar(CoffeeMachine p)
     : base(p.Name + ", с сахаром", p)
 {
 }
示例#3
0
 public Cream(CoffeeMachine p)
     : base(p.Name + ", со сливками", p)
 {
 }
 public CoffeeMachineDecorator(string n, CoffeeMachine coffee_machine)
     : base(n)
 {
     this.coffee_machine = coffee_machine;
 }
示例#5
0
 public Milk(CoffeeMachine p)
     : base(p.Name + ", с молоком", p)
 {
 }