Bug 171027 Emtpy space created when calling setEnabled on encoding field editor
I20070116-1510 FieldEditor.setEnabled(boolean) is implemented in a pretty strange way: it creates the label if not yet created. This has side effects for clients that do not need/create that label but later call setEnabled(...). An example for such a subclass is AbstractEncodingFieldEditor. Now, fixing this in FieldEditor.setEnabled(...) might be problematic because currently for some clients the label might only appear as a side-effect of calling setEnabled(...) during initialization. A safer fix might be to simply not call super.setEnabled(...) in AbstractEncodingFieldEditor.setEnabled(...).
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/ide/dialogs/AbstractEncodingFieldEditor.java
if (otherEncodingButton != null)
			otherEncodingButton.setEnabled(enabled);
		if (encodingCombo != null)
			encodingCombo.setEnabled(enabled);
	}
	/**
	 * Returns the default encoding for the object being shown.
	 * 
	 * @return the default encoding for the object being shown
	 */
	protected String findDefaultEncoding() {
		return WorkbenchEncoding.getWorkbenchDefaultEncoding();
	}
	/**
	 * Returns the text for the default encoding button.
	 * 
	 * @return the text for the default encoding button
	 */
	protected String defaultButtonText() {
		return NLS.bind(
				IDEWorkbenchMessages.WorkbenchPreference_defaultEncoding,
				defaultEnc);
	}
	/**
	 * Populates the encodings combo. Sets the text based on the selected
	 * encoding. If there is no selected encoding, the text is set to the
	 * default encoding.
	 * 
	 * @param encodings
	 *            the list of encodings (list of String)