Bug 124202 [Field Assist] - decorated fields should not size the created control
The philosophy of DecoratedField is that the client creates the target control and accesses it with normal SWT coding. The decorated field manages the decorations but otherwise statys out of the way. This philosophy is violated when DecoratedField sets the width of the field to IDialogConstants.ENTRY_WIDTH. Sizing decisions should be made by the client of the decorated field, not the field itself.
bundles/org.eclipse.jface/src/org/eclipse/jface/fieldassist/DecoratedField.java
if (decDatas[i] == null) {
			formData = createFormDataForIndex(i);
			label = new Label(form, SWT.HORIZONTAL | SWT.VERTICAL | SWT.CENTER);
			label.addMouseTrackListener(new MouseTrackListener() {
				public void mouseHover(MouseEvent event) {
					FieldDecorationData decData = (FieldDecorationData) event.widget
							.getData();
					String desc = decData.decoration.getDescription();
					if (desc != null) {
						showHoverText(desc, label);
					}
				}
				public void mouseEnter(MouseEvent event) {
				}
				public void mouseExit(MouseEvent event) {
					hideHover();
				}
			});
			decDatas[i] = new FieldDecorationData(decoration, label, formData,
					showOnFocus);
		} else {
			label = decDatas[i].label;
			formData = decDatas[i].data;
			decDatas[i].decoration = decoration;
			decDatas[i].showOnFocus = showOnFocus;
		}
		/*
		 * Layout data reserved width and height depend on whether
		 * there is an image or this is a blank decoration.  Always
		 * set both values since we may be reusing a form data.