@Override
	public void update(Observable arg0, Object arg1) {
		int digit = model.getDigitAt(row, col);
		SudokuPart constraint = model.getCurrentConstraint();
		if (constraint != null && constraint.getRow() == row
				&& constraint.getCol() == col) {
			setBackground(Color.GREEN);
		} else {
			SudokuPart popped = model.getPopped();
			if (popped != null && popped.getRow() == row
					&& popped.getCol() == col) {
				setBackground(Color.RED);
			} else {
				setBackground(Color.WHITE);
			}
		}

		setText(digit > 0 ? Integer.toString(digit) : "");
	}