Bug 163360 [Field Assist] - API - Provide ControlDecoration constructor without specifying decoration
Currently you can only create a ControlDecoration by specifying the control and the decoration in the constructor. This works nicely when the decoration is static (ie, always content assist). But there are use cases where the decoration changes depending on the state of the field, and at creation time, it's not clear which decoration will be set. Having a constructor that doesn't require a decoration would be nice.
bundles/org.eclipse.jface/src/org/eclipse/jface/fieldassist/ControlDecoration.java
* Add any listeners needed on the target control.
	 */
	private void addControlListeners() {
		disposeListener = new DisposeListener() {
			public void widgetDisposed(DisposeEvent event) {
				dispose();
			}
		};
		printAddListener(control, "DISPOSE"); 
		control.addDisposeListener(disposeListener);
		focusListener = new FocusListener() {
			public void focusGained(FocusEvent event) {
				hasFocus = true;
				if (showOnlyOnFocus) {
					update();
				}
			}
			public void focusLost(FocusEvent event) {
				hasFocus = false;
				if (showOnlyOnFocus) {
					update();
				}
			}
		};
		printAddListener(control, "FOCUS"); 
		control.addFocusListener(focusListener);
		
		paintListener = new PaintListener() {
			public void paintControl(PaintEvent event) {
				Control control = (Control) event.widget;