public void draw(Graphics2D g2)
    {
        Rectangle r = new Rectangle(col*Puzzle.drawSize, row*Puzzle.drawSize, Puzzle.drawSize, Puzzle.drawSize);
        g2.setStroke(new BasicStroke(3));
        if(!selected)
        {   g2.setColor(Color.BLACK);   }
        else
        {   g2.setColor(Puzzle.stateColor);   }
        
        g2.fill(r);
        g2.setColor(Puzzle.stateColor);
        g2.draw(r);
        
        if(!selected)
        {   g2.setColor(Puzzle.stateColor);   }
        else
        {   g2.setColor(Color.BLACK);   }
        if(value>0)
        {
            //Digit III
            Font font = new Font("Helvetica", 0, 100);
            g2.setFont(font);
            FontMetrics fm = g2.getFontMetrics();
            g2.drawString(""+value, col*Puzzle.drawSize+25, row*Puzzle.drawSize+85);
        }
        if(value==0)
        {
            Font font = new Font("Helvetica", 0, 10);
            g2.setFont(font);
            FontMetrics fm = g2.getFontMetrics();
            String vals = posNumsToString();
            g2.drawString(vals, col*Puzzle.drawSize+9, row*Puzzle.drawSize+15);
        }
    }