Bug 60506 Workbench preference wording
I20040428 The responsive UI dynamic team (and Julian) have flagged the workbench background execution preference wording as unclear. Julian recommended a simpler message, possibly with a tool-tip to give further explanation. As MVM and I discussed previously, we may want to revisit all of the central workbench preferences to make them less wordy (and possibly augment with a tooltip). I will write an initial set of suggestions here and we can discuss. 1) Perform build automaticaly on resource modification. -> Title: "Build automatically" (to match toggle command name in projet menu) -> Tooltip: "Perform build automaticaly on resource modification" 2) Save all modified resources automatically prior to manual build -> Title: "Save automatically before build" -> Tooltip: "Save all modified resources automatically prior to manual build" 3) Keep next/previous part dialog open - Julian mentioned this was particularly confusing. Perhaps it should be moved to the "Appearance" preference page? It doesn't seem to deserve a prominent place. 4) Prompt for actions requiring activity enablement -> Title: "Prompt when enabling new activities" -> Tooltip: "Prompt when a feature is first used that requires enablement of an activity" 5) Run user actions in background where possible -> Title: "Always run in background" (to match "Run in Background" button on dialog) -> Tooltip: "Run long operations in the background where possible" 6) Refresh Workspace automatically in the background -> Title: "Refresh Workspace automatically" -> Tooltip: "Detect and automatically refresh changes made to the workspace externally" While we're at it, I also recommend shuffling the order. I propose: "Always run in background" "Build automatically" "Refresh Workspace automatically" "Save automatically before build" "Prompt when enabling new activities"
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/dialogs/CleanDialog.java
if (cleanAll)
			ResourcesPlugin.getWorkspace().build(IncrementalProjectBuilder.CLEAN_BUILD, null);
		else
			for (int i = 0; i < selection.length; i++)
				((IProject)selection[i]).build(IncrementalProjectBuilder.CLEAN_BUILD, null);
	}
	/**
	 * Fills in the name of the project in the text area.
	 */
	private void setProjectName() {
		if (selection.length == 0)
			projectName.setText(IDEWorkbenchMessages.getString("CleanDialog.noSelection")); 
		else {
			StringBuffer names = new StringBuffer(((IProject)selection[0]).getName());
			for (int i = 1; i < selection.length; i++) {
				names.append(',');
				names.append(((IProject)selection[i]).getName());
			}
			projectName.setText(names.toString());
		}
	}
	/**
	 * Updates the enablement of the dialog's ok button based
	 * on the current choices in the dialog.
	 */
	protected void updateEnablement() {
		boolean enabled = allButton.getSelection() || selection.length > 0;
		getButton(OK).setEnabled(enabled);
	}
}