
package AWT_Conversion;

import conversion.Conversion;
import java.awt.TextComponent;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.FocusAdapter;
import java.awt.event.FocusEvent;
import java.io.Serializable;

public class Controller extends FocusAdapter
                        implements Serializable, ActionListener {
  public Controller (Conversion model, TextComponent output) {
    this.model = model; this.output = output;
  }

  protected Conversion model;
  protected TextComponent output;

  public void actionPerformed (ActionEvent e) {
    update(e.getSource());
  }
  public void focusLost (FocusEvent e) {
    update(e.getSource());
  }

  public void update (Object input) {
    double in = new Double(((TextComponent)input).getText()).doubleValue();
    output.setText(""+model.y(in));
  }
// Controller is a Java Bean with two outlets for InterfaceBuilder

  public Controller () { }
  public static final String[] __ibOutletNames = { "model", "output" };
}

