//package ex1;

import java.awt.*;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JButton;
import javax.swing.JComponent;

import java.awt.Toolkit;
import java.awt.BorderLayout;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class LeBeeper extends JPanel 
                    implements ActionListener {
    JButton button, button2, button3, button4, button5;

    public LeBeeper() {
        super(new BorderLayout());
        button = new JButton("Click Me");
        button.setPreferredSize(new Dimension(200, 80));
        add(button, BorderLayout.CENTER);
        button.addActionListener(this);
        button2 = new JButton("Click Me");
        button2.setPreferredSize(new Dimension(200, 80));
        add(button2, BorderLayout.NORTH);
        button2.addActionListener(this);
        button3 = new JButton("Click Me");
        button3.setPreferredSize(new Dimension(200, 80));
        add(button3, BorderLayout.SOUTH);
        button3.addActionListener(this);
        button4 = new JButton("Click Me");
        button4.setPreferredSize(new Dimension(200, 80));
        add(button4, BorderLayout.EAST);
        button4.addActionListener(this);
        button5 = new JButton("Click Me");
        button5.setPreferredSize(new Dimension(200, 80));
        add(button5, BorderLayout.WEST);
        button5.addActionListener(this);
    }

    public void actionPerformed(ActionEvent e) {
    	if(e.getSource()==button)
    		System.exit(0);
    	else if(e.getSource()==button3)
    		Toolkit.getDefaultToolkit().beep();
    	else if(e.getSource()==button2){
    		Toolkit.getDefaultToolkit().beep();
    		try {
				Thread.sleep(100);
			} catch (InterruptedException e1) {}
    		Toolkit.getDefaultToolkit().beep();
    	}
    	else if(e.getSource()==button4) {
        		Toolkit.getDefaultToolkit().beep();
        		for(int i=0; i<20; i++) {
        			try {
    				Thread.sleep(50);
    			} catch (InterruptedException e1) {
    			}
        		Toolkit.getDefaultToolkit().beep();
        		}
    	}
    }

    private static void createAndShowGUI() {
        JFrame.setDefaultLookAndFeelDecorated(true);
        JFrame frame = new JFrame("Beeper");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        //Create and set up the content pane.
        JComponent newContentPane = new LeBeeper();
        newContentPane.setOpaque(true); //content panes must be opaque
        frame.setContentPane(newContentPane);

        frame.pack();
        frame.setVisible(true);
    }

    public static void main(String[] args) {
        javax.swing.SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                createAndShowGUI();
            }
        });
        createAndShowGUI();
        createAndShowGUI();
        createAndShowGUI();
        createAndShowGUI();
        
    }
}