protected boolean validate(StringBuffer error) {
    	boolean ret = true;
    	String value;
    	String colName;
    	
    	// Throttle Angle
    	value = thrtlAngleName.getText().trim();
    	colName = thrtlAngleLabelText;
    	if (value.isEmpty()) {
    		ret = false;
    		error.append("\"").append(colName).append("\" column must be specified\n");
    	}
    	else
    		Config.setThrottleAngleColumnName(value);
    	
    	// Engine Speed
    	value = rpmName.getText().trim();
    	colName = rpmLabelText;
    	if (value.isEmpty()) {
    		ret = false;
    		error.append("\"").append(colName).append("\" column must be specified\n");
    	}
    	else
    		Config.setRpmColumnName(value);
    	
    	// VVT System 1
    	value = vvt1Name.getText().trim();
    	colName = vvt1LabelText;
    	if (value.isEmpty()) {
    		ret = false;
    		error.append("\"").append(colName).append("\" column must be specified\n");
    	}
    	else
    		Config.setVvt1ColumnName(value);
    	
    	// VVT System 2
    	value = vvt2Name.getText().trim();
    	colName = vvt2LabelText;
    	if (value.isEmpty())
    		Config.setVvt2ColumnName(Config.NO_NAME);
    	else
    		Config.setVvt2ColumnName(value);
    	
    	// Intake Air Temperature
    	value = iatName.getText().trim();
    	colName = iatLabelText;
    	if (value.isEmpty()) {
    		ret = false;
    		error.append("\"").append(colName).append("\" column must be specified\n");
    	}
    	else
    		Config.setIatColumnName(value);

    	// MAP
    	value = mapName.getText().trim();
    	colName = mapLabelText;
    	if (value.isEmpty()) {
    		ret = false;
    		error.append("\"").append(colName).append("\" column must be specified\n");
    	}
    	else
    		Config.setMapColumnName(value);

    	// MAF
    	value = mafName.getText().trim();
    	colName = mafLabelText;
    	if (value.isEmpty()) {
    		ret = false;
    		error.append("\"").append(colName).append("\" column must be specified\n");
    	}
    	else
    		Config.setMassAirflowColumnName(value);
    	
    	// WOT Stationary point
    	Config.setWOTStationaryPointValue(Integer.valueOf(wotStationaryPointFilter.getValue().toString()));
    	
    	// OL/CL Transition Skip Rows
    	Config.setOLCLTransitionSkipRows(Integer.valueOf(olClTransitionSkipRowsField.getText()));
    	
    	// Temperature Scale
    	Config.setTemperatureScale(temperatureScaleField.getSelectedItem().toString().charAt(0));
    	
    	// Manifold Absolute Pressure Unit
    	Config.setMapUnit(Character.toUpperCase(mapUnitField.getSelectedItem().toString().charAt(0)));
    	
    	return ret;
    }