Bug 17885 Preference Pages don't resize well
Build: 20020521 The Java preference pages don't look very good when the user makes the preference page dialog narrower or shorter by manually resizing it. Here is a breakdown of problems by page: Builder: "Filtered resources" text field should shrink to fit the dialog width more. Classpath Variables: List box should shrink to fit and should scroll if necessary. Code Formatter: Text box should shrink to fit and should scroll if necessary (the scroll bars are there, why aren't they used?). Step Filtering: List box should shrink horizontally to fit and should scroll if necessary (compare vertical and horizontal behaviour when shrinking the preference page dialog). Editor: In the Syntax tab page, the "Preview" text box should shrink to fit and scroll if necessary. Installed JREs: The table viewer should shrink to fit and scroll if necessary. Javadoc: The "Javadoc command" text field should shrink to fit more. Organize Imports: The list box should shrink to fit and scroll if necessary. Templates: The table viewer should shrink to fit and scroll if necessary.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/JavadocPreferencePage.java
LayoutUtil.setWidthHint(fJavadocSelection.getTextControl(null), convertWidthInCharsToPixels(50));
		initFields();
		return fComposite;
	}
	/*
	 * @see IWorkbenchPreferencePage#init(IWorkbench)
	 */
	public void init(IWorkbench workbench) {
	}
	public static void initDefaults(IPreferenceStore store) {
		File file= findJavaDocCommand();
		if (file != null)
			store.setDefault(PREF_JAVADOC_COMMAND, file.getPath());
		else
			store.setDefault(PREF_JAVADOC_COMMAND, ""); 
	}
	private static File findJavaDocCommand() {
		IVMInstallType[] jreTypes= JavaRuntime.getVMInstallTypes();
		for (int i= 0; i < jreTypes.length; i++) {
			IVMInstallType jreType= jreTypes[i];
			IVMInstall[] installs= jreType.getVMInstalls();
			for (int k= 0; k < installs.length; k++) {
				File installLocation= installs[k].getInstallLocation();
				if (installLocation != null) {
					File javaDocCommand= new File(installLocation, "bin/javadoc"); 
					if (javaDocCommand.isFile()) {
						return javaDocCommand;
					}
					javaDocCommand= new File(installLocation, "bin/javadoc.exe"); 
					if (javaDocCommand.isFile()) {