// Button2.java
// Introduction:  adding listeners to swing components
// Review:  inner classes, implementing interfaces

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Button2 extends JFrame {

  JButton b1 = new JButton("Button 1");
  JButton b2 = new JButton("Button 2");
  JTextField txt = new JTextField(10); 
  
  public Button2 () {

    BL al = new BL();
    b1.addActionListener(al);
    b2.addActionListener(al);
    Container cp = getContentPane();
    cp.setLayout(new FlowLayout());
    cp.add(b1);
    cp.add(b2);
    cp.add(txt);
  }


  // inner class
  class BL implements ActionListener {
    public void actionPerformed(ActionEvent e){
      String name = 
        ((JButton)e.getSource()).getText();
      txt.setText(name);
    }
  }
  
  public static void main(String[] args) {
        JFrame frame = new Button2();
        frame.pack();
        frame.setVisible(true);
  }
} 



