// Program 16.2: GridLayout Example
import java.applet.Applet;
import java.awt.Checkbox;
import java.awt.Label;
import java.awt.TextField;
import java.awt.Event;
import java.awt.GridLayout;

public class Ingredients2 extends Applet {

  /* You need access to t from the handleCheckbox method so make it a field. */
  TextField t;
  float price = 7.00f;

  public void init() {
  
    setLayout(new GridLayout(11,1));
    add(new Label("What do you want on your pizza?", Label.CENTER));
    add(new Checkbox("Pepperoni"));
    add(new Checkbox("Olives"));
    add(new Checkbox("Onions"));
    add(new Checkbox("Sausage"));
    add(new Checkbox("Peppers"));
    add(new Checkbox("Extra Cheese"));
    add(new Checkbox("Ham"));
    add(new Checkbox("Pineapple"));
    add(new Checkbox("Anchovies"));
    t = new TextField("$" + String.valueOf(price));
    t.setEditable(false); // so people can't change the price of the pizza
    add(t);
  }
  
  public boolean action(Event e, Object o) {
    if (e.target instanceof Checkbox) {
      return handleCheckbox((Checkbox) e.target);
    }
    else {
      return false;
    }
    
  }

  private boolean handleCheckbox(Checkbox c) {
  
    if (c.getState()) price += 0.50f;
    else price -= 0.50f;
    // Change the price
    t.setText("$" + String.valueOf(price));
    return true;
  
  }

}