Bug 126839 [DataBinding] IObservable refactoring
bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/internal/databinding/swt/ComboUpdatableValue.java
fireChangeEvent(ChangeEvent.CHANGE, oldValue, combo.getText());
			}
		};
		runnable.runOn(combo.getDisplay());
	}
	public Object computeValue() {
		SyncRunnable runnable = new SyncRunnable() {
			public Object run() {
				if (attribute.equals(SWTProperties.TEXT)) {
					return combo.getText();
				}
				Assert.isTrue(attribute.equals(SWTProperties.SELECTION),
						"unexpected attribute" + attribute); 
				int index = combo.getSelectionIndex();
				if (index >= 0) {
					return combo.getItem(index);
				}
				return null;
			}
		};
		return runnable.run();
	}
	public Class getValueType() {
		Assert.isTrue(attribute.equals(SWTProperties.TEXT)
				|| attribute.equals(SWTProperties.SELECTION),
				"unexpected attribute" + attribute); 
		return String.class;
	}
}