Public feed #380254

rake

public text v1 · immutable
Raw Edit
·published 2007-03-03 22:24 UTC
rendered paste body
import java.awt.*; 
import java.awt.event.*; 
import java.util.EventListener;
import javax.swing.*;

public class ui extends JFrame implements ActionListener{
	
	// panels
	JPanel panel = new JPanel(); 
	
	// labels
	JLabel lTrain = new JLabel("Enter value to train: ");
	
	// fields
	JTextField tTrainValue = new JTextField ("", 5); // constrain length
	
    // buttons
	JButton bTrain = new JButton("Train");
	JButton bClear = new JButton("Clear");
	JButton bCalculate = new JButton("Calculate");
	
	// image canvas
	protected ImageCanvas canvas; 
	protected EventListener listener;
	
	public ui(){
		super("Science Fair 2007"); setBounds(100,100,700,500);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);	setVisible(true);		
	    Container mainContainer = this.getContentPane();
	    mainContainer.add(panel);
	    
	    /* TODO: hotkeys:   mybutton.setMnemonic('P'); // P is key */
	    
	    panel.add(lTrain);
	    panel.add(tTrainValue);
	    panel.add(bTrain);
	    panel.add(bClear);
	    panel.add(bCalculate);
	    tTrainValue.requestFocus();
	    bTrain.addActionListener(this);
	    bClear.addActionListener(this);
	    bCalculate.addActionListener(this);
	    
	    // Canvas
	 
	    JFrame frame = new JFrame();
	    frame.setSize(30,30);
	    frame.setBackground(Color.white);
	    frame.getContentPane().setLayout(new BorderLayout());
	    frame.getContentPane().add(makeCanvas(), BorderLayout.CENTER);
	    panel.add(frame);
	}
	
	protected EventListener makeCanvasListener(ImageCanvas canvas) {
		return new ImageCanvasListener(canvas); 
	}
	
	protected Component makeCanvas() {
		canvas = new ImageCanvas(); 
		canvas.setBackground(Color.white); 
	    getContentPane().setLayout(new BorderLayout()); 
	    getContentPane().add(makeCanvas(), BorderLayout.CENTER);
	    listener = makeCanvasListener(canvas);     
	    canvas.addMouseListener((MouseListener) listener); 
	    canvas.addMouseMotionListener((MouseMotionListener) listener); 
	    return canvas;
	}
	
	public void actionPerformed(ActionEvent event)
	{
		Object source = event.getSource();
		if (source == bTrain) 
		{
			tTrainValue.setText("You pressed this!");
		}
	}	
}