package atm;
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.JTextField;

/**
   A component that lets the user enter a number, using 
   a button pad labeled with digits
*/

public class KeyPad extends JPanel implements ActionListener
{  public KeyPad()
   {  setLayout(new BorderLayout());
   
      // add display field
   
      display = new JTextField();
      add(display, "North");

      // make button panel

      buttonPanel = new JPanel();
      buttonPanel.setLayout(new GridLayout(4, 3));
      
      // add digit buttons
      
      ActionListener listener = this;
      addButton("7", listener);
      addButton("8", listener);
      addButton("9", listener);
      addButton("4", listener);
      addButton("5", listener);
      addButton("6", listener);
      addButton("1", listener);
      addButton("2", listener);
      addButton("3", listener);
      addButton("0", listener);      
      addButton(".", listener);
      
      // add clear entry button
      
      clearButton = new JButton("CE");
      buttonPanel.add(clearButton);
      clearButton.addActionListener
         (this);      
      
      add(buttonPanel, "Center");
   }

   /** 
      Gets the value that the user entered. 
      @return the value in the text field of the keypad
   */
   public double getValue()
   {  return 0;
   }
   
   /** 
      Clears the dislay. 
   */
   public void clear()
   {  
   }
   
   /**
      Adds a button to the button panel 
      @param label the button label
      @param listener the button listener
   */
   public void addButton(String label, 
      ActionListener listener)
   {  JButton button = new JButton(label);
      buttonPanel.add(button);
      button.addActionListener(listener);
   }

    /** Reacts on buttons.
     */
    public void actionPerformed(ActionEvent event){}
    {}

   private JPanel buttonPanel;
   private JButton clearButton;
   private JTextField display;
   

}

