private void doLoad() { if (fc.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) { try { SerGrid sg = LoadSaver.load(fc.getSelectedFile().getAbsolutePath()); sGrid.setSerGrid(sg, gg.getGrid()); } catch (Exception e) { e.printStackTrace(); JOptionPane.showMessageDialog( this, "Sudoku game have not been saved!", "Error", JOptionPane.ERROR_MESSAGE); } } sGrid.repaint(); }
private void generateNewSud() { System.out.println("Inside generate sudoku"); // ObjectInputStream ois = null; /* * switch(diff) { case GV.DIFF_EASY : jTextDiff.setText("Easy"); break; * case GV.DIFF_NORMAL : jTextDiff.setText("Normal"); break; case * GV.DIFF_HARD : jTextDiff.setText("Hard"); break; default : * jTextDiff.setText("Custom"); } */ /* * try { System.out.println("Before new object stream"); * * ois = new ObjectInputStream(socket.getInputStream()); * * System.out.println("Before read object"); * * gg = (GridGenerator) ois.readObject(); * System.out.println("After read object"); * * // gg.getGrid().resetGrid(); // gg.generate(diff, nD); //gg= } * catch(IOException e) { System.out.println("IO Exception"); * * } catch (ClassNotFoundException e) { * System.out.println("Class not found Exception"); } */ sinchronizeGrids(); sGrid.repaint(); }
private void doSolve() { try { gg.solve(); sinchronizeGrids(); setGridToFinished(); sGrid.repaint(); } catch (NullPointerException e) { e.printStackTrace(); JOptionPane.showMessageDialog( this, "Sudoku seems to be solved.", "Solved", JOptionPane.INFORMATION_MESSAGE); } }
// ---------------------------------------------------------------------------------- private void doOtherPersonWon() { JOptionPane.showMessageDialog( this, "Somebody else won!! :)", "Oops", JOptionPane.INFORMATION_MESSAGE); setGridToFinished(); sGrid.repaint(); // -------------------------------- /* * //Send data over socket String text = "ClientWon"; out.println(text); * // textField.setText(new String("")); */ // ---------------------------------- }
// ---------------------------------------------------------------------------------- private void doNotSolved() { JOptionPane.showMessageDialog( this, "Sudoku not solved :)", "Damn", JOptionPane.INFORMATION_MESSAGE); setGridToFinished(); sGrid.repaint(); // -------------------------------- /* * //Send data over socket String text = "ClientWon"; out.println(text); * // textField.setText(new String("")); */ // ---------------------------------- }
private void doSave() { if (fc.showSaveDialog(this) == JFileChooser.APPROVE_OPTION) { try { SerGrid sg = sGrid.getSerGrid(); File file = fc.getSelectedFile(); String aPath = file.getAbsolutePath(); if (!aPath.toLowerCase().endsWith(".ssud")) { aPath = aPath + ".ssud"; file = new File(aPath); } LoadSaver.save(sg, file); fc.setSelectedFile(file); } catch (Exception e) { e.printStackTrace(); JOptionPane.showMessageDialog( this, "Sudoku game have not been saved!", "Error", JOptionPane.ERROR_MESSAGE); } } }
private void doClear() { gg.getGrid().clearNoDefaultFields(); sinchronizeGrids(); sGrid.repaint(); }
private void doCreate() { gg.getGrid().resetGrid(); sinchronizeGrids(); sGrid.repaint(); }
private void initGUI() { all = new JPanel(); all.setLayout(new BorderLayout()); all.setBackground(GV.BORDER_COLOR); all.setBorder(BorderFactory.createTitledBorder("")); // BUTTONS UP butUp = new JPanel(); BoxLayout bUpLayout = new BoxLayout(butUp, BoxLayout.X_AXIS); butUp.setLayout(bUpLayout); butUp.setBorder(new EtchedBorder()); bUp = new JButton[10]; { Dimension butUpDim = new Dimension(24, 24); bUp[0] = createButUp("star1.png", "star2.png", "Generate new Sudoku", butUpDim); butUp.add(bUp[0]); bUp[1] = createButUp("board1.png", "board2.png", "Create new Sudoku", butUpDim); butUp.add(bUp[1]); bUp[2] = createButUp("open1.png", "open2.png", "Open Sudoku", butUpDim); butUp.add(bUp[2]); bUp[3] = createButUp("disk1.png", "disk2.png", "Save Sudoku As", butUpDim); butUp.add(bUp[3]); // SEPARATOR createButUpSeparator(); bUp[4] = createButUp("redo1.png", "redo2.png", "Redo", butUpDim); butUp.add(bUp[4]); setKeyAcceleratorButton(bUp[4], actButUp, "redo", 'Y', Event.CTRL_MASK); bUp[5] = createButUp("undo1.png", "undo2.png", "Undo", butUpDim); butUp.add(bUp[5]); setKeyAcceleratorButton(bUp[5], actButUp, "undo", 'Z', Event.CTRL_MASK); // SEPARATOR createButUpSeparator(); bUp[6] = createButUp("bin1.png", "bin2.png", "Clear Sudoku", butUpDim); butUp.add(bUp[6]); bUp[7] = createButUp("help1.png", "help2.png", "Hint", butUpDim); butUp.add(bUp[7]); System.out.println("***********************************"); bUp[8] = createButUp("tick1.png", "tick2.png", "Solve", butUpDim); butUp.add(bUp[8]); // SEPARATOR createButUpSeparator(); // Difficulty butUp.add(Box.createRigidArea(GV.DIM_RA)); JLabel diffLabel = new JLabel("Difficulty : "); butUp.add(diffLabel); jTextDiff = new JTextField(); jTextDiff.setEditable(false); jTextDiff.setText("Normal "); jTextDiff.setMaximumSize(new Dimension(60, 18)); butUp.add(jTextDiff); butUp.add(Box.createRigidArea(new Dimension(85, 1))); bUp[9] = createButUp("cross1.png", "cross2.png", "<HTML>Close</HTML>", butUpDim); butUp.add(bUp[9]); setKeyAcceleratorButton(bUp[9], actButUp, "close", Event.ESCAPE, 0); } all.add(butUp, BorderLayout.NORTH); // GRID sGrid = new SudGrid(this); sGrid.setBorder(new LineBorder(new Color(238, 238, 238), 4, false)); all.add(sGrid, BorderLayout.CENTER); // BUTONS DOWN butDown = new JPanel(); BoxLayout butLayout = new BoxLayout(butDown, BoxLayout.X_AXIS); butDown.setLayout(butLayout); butDown.setBorder(new LineBorder(GV.BORDER_COLOR, 2, false)); butDown.setBackground(GV.BORDER_COLOR); bDown = new JButton[9]; { butDown.add(Box.createRigidArea(GV.DIM_RA)); for (int i = 0; i < bDown.length; i++) { bDown[i] = new JButton(); butDown.add(bDown[i]); bDown[i].setText("" + (i + 1)); bDown[i].addActionListener(bHDown); butDown.add(Box.createRigidArea(GV.DIM_RA)); bDown[i].setToolTipText("<HTML>Press" + (i + 1) + "<HTML>"); setKeyAcceleratorButton(bDown[i], actButDown, "press" + (i + 1), 49 + i, 0); // bDown[i].setBackground(GlobalVars.BORDER_COLOR); } delBut = new JButton(); delBut.addActionListener(bHDown); butDown.add(delBut); delBut.setText("Delete"); delBut.setToolTipText("<HTML>Press D <HTML>"); setKeyAcceleratorButton(delBut, actButDown, "delBut", 'D', 0); // delBut.setBackground(GlobalVars.BORDER_COLOR); lastBut = bDown[0]; lastBut.setForeground(Color.BLUE); lastBut.requestFocus(); } // FileChooser fc = new JFileChooser(); fc.addChoosableFileFilter( new FileFilter() { public boolean accept(File f) { if (f.isDirectory()) return true; return f.getName().toLowerCase().endsWith(".ssud"); } public String getDescription() { return GV.NAME + "Save File (*.ssud)"; } }); fc.setMultiSelectionEnabled(false); all.add(butDown, BorderLayout.SOUTH); }