@Override
	public void setValueAt(Object value, int rowIndex, int columnIndex) {
		Problem problem = problems.get(rowIndex);

		switch (columnIndex) {
		case COLUMN_TITLE:
			problem.setProblemName(value.toString());
			break;
		case COLUMN_FILE_NAME:
			problem.setFileName(value.toString());
			break;
		case COLUMN_INPUT:
			problem.setInput(value.toString());
			break;
		case COLUMN_OUTPUT:
			problem.setOutput(value.toString());
			break;
		}

		DbAdapter.updateProblem(problem);
		this.fireTableDataChanged(); // update JTable
	}