import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;
public class ButtonLeft extends JButton implements ActionListener {
private Square square; //*2 Keep pointer to square we control
public ButtonLeft (Square square) {
this.square = square; //*2
setIcon (new ImageIcon ("leftArrow.gif")); //*1 Handle our own properties setup
setBorder (new LineBorder(Color.GREEN, 2)); //*1
addActionListener (this); //*3 Handle our own callback
}
public void actionPerformed (ActionEvent e) { //*3
square.doAction (Square.ButtonAction.LEFT); //*4 Call square to do the job
}
}