/* @(#)Scullane_Panel.java   22 September 2005 */
 
/* Useful imports */
 
import edu.neu.ccs.*;
import edu.neu.ccs.gui.*;
import edu.neu.ccs.codec.*;
import edu.neu.ccs.console.*;
import edu.neu.ccs.filter.*;
import edu.neu.ccs.jpf.*;
import edu.neu.ccs.parser.*;
import edu.neu.ccs.pedagogy.*;
import edu.neu.ccs.quick.*;
import edu.neu.ccs.util.*;
 
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import java.awt.font.*;
import java.awt.image.*;
import javax.swing.*;
import javax.swing.border.*;
import java.io.*;
import java.util.*;
import java.math.*;
import java.beans.*;
import java.lang.reflect.*;
import java.net.URL;
import java.util.regex.*;
import java.text.ParseException;
 
public class Costa_Panel extends TablePanel {
	private static int random = (int)(Math.random() * 100 + 1);
	
	private static int count = 0;
	
    private static int width =
        TextFieldView.getSampleWidth(8, '2');
    
    private TextFieldView guess =
        new TextFieldView(" ", width);
   
    private TextFieldView view_answer =
        new TextFieldView("Clue   ", width);
    
    private TextFieldView view_guesses =
        new TextFieldView("0", width);
    
    private SimpleAction guessAction =
        new SimpleAction("Between 1 - 100.") {
            public void perform() { Guess(); }
        
    };
    
    private Object[][] dataStuff =
        new Object[][] {
            { "Guess", guess },
            { "Answer", view_answer },
            { "# Guesses", view_guesses}
    };
    
    private TablePanel data =
        new TablePanel(
            dataStuff, 25, 25, WEST);
    
    private Object[] main =
        new Object[] { data, guessAction };
    
    private TablePanel mainPanel =
        new TablePanel(
            main, VERTICAL, 25, 25, CENTER);
    
    
    public Costa_Panel() {
        add(new Halo(mainPanel, 10, 10));
        addListeners();
        
        frame("Guess!");
    }
    
    
    private void Guess() {
        double x = guess.demandDouble();
        
        String clue = "";
        
        if (x == random) clue = "Correct!"; 
        else if (x > random) clue = "Lower";
        else clue = "Higher";
        
        count++;
        view_guesses.setViewState(count + "");
        view_answer.setViewState(clue);
    }
    
    private void addListeners() {
        guess.addActionListener(guessAction);
        ;
    }
    
    public static void main(String[] args) {
     new Costa_Panel();
    }
}

