Bug 17229 Java prefs - build preferences should be merged back with compiler ones
Build 20020521 Unless people understand our implementation, it is counter-intuitive for them to look under the 'builder' section for concerns which are still roughly compiler related... Here are some options (from Erich): 1) make builder a subnode of compiler - easy to do - not consistent with existing tab approach 2) squeeze it onto the first tab and rename it - dialog might get higher - need another title 3) add another tab "Building" (need a better name) - we would have the space to do so
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/CompilerPreferencePage.java
}
		
		
		if (hasChanges) {
			String title= JavaUIMessages.getString("CompilerPreferencePage.needsbuild.title"); 
			String message= JavaUIMessages.getString("CompilerPreferencePage.needsbuild.message"); 
			
			MessageDialog dialog= new MessageDialog(getShell(), title, null, message, MessageDialog.QUESTION, new String[] { IDialogConstants.YES_LABEL, IDialogConstants.NO_LABEL, IDialogConstants.CANCEL_LABEL }, 2);
			int res= dialog.open();
			if (res != 0 && res != 1) {
				JavaPlugin.getDefault().savePluginPreferences();
				return false;
			}
			
			JavaCore.setOptions(actualOptions);
			if (res == 0) {
				doFullBuild();
			}
		}
		JavaPlugin.getDefault().savePluginPreferences();
		return super.performOk();
	}
	
	public static boolean openQuestion(Shell parent, String title, String message) {
		MessageDialog dialog= new MessageDialog(parent, title, null, message, MessageDialog.QUESTION, new String[] { IDialogConstants.YES_LABEL, IDialogConstants.NO_LABEL, IDialogConstants.CANCEL_LABEL }, 2);
		return dialog.open() == 0;
	}
	
	private void doFullBuild() {
		ProgressMonitorDialog dialog= new ProgressMonitorDialog(getShell());