/* 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 Sudoku extends SudokuBase { // Member definitions // /** The file IO tool. */ private StringableFileIO fileIO = new StringableFileIO(model, "sudoku"); /** The action to read from a file. */ private final SimpleAction readFromFile = new SimpleAction("Read Sudoku From File") { public void perform() { if (fileIO.readDataFromFile()) { thawAll(); freeze(); updateAll(); } } }; /** The action to save to a file. */ private final SimpleAction saveToFile = new SimpleAction("Save Sudoku To File") { public void perform() { fileIO.saveDataToFile(); } }; /** The IO stuff. */ private Object[] IOStuff = { readFromFile, saveToFile }; /** The IO panel. */ private TablePanel IOPanel = new TablePanel (IOStuff, VERTICAL, gapsmall, gapsmall, CENTER); // Constructor // /** The constructor. */ public Sudoku() { initializeSudoku(); } // Methods // /** The constructor initialize method. */ protected void initializeSudoku() { controlsPanel.addObject(IOPanel); } /** The main method. */ public static void main(String[] args) { Sudoku sudoku = new Sudoku(); sudoku.frame("Sudoku Puzzle"); } }