Bug 198906 [DataBinding] SelectionProviderSingleSelectionObservableValue doesn't remove selectionChangedListener on dispose
bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/internal/databinding/internal/viewers/SelectionProviderSingleSelectionObservableValue.java
}
	/**
	 * Retrieves the current selection.
	 * <p>
	 * If a subclass overrides this method it must not depend upon the subclass
	 * to have been fully initialized before this method is invoked.
	 * <code>doGetValue()</code> is invoked by the
	 * {@link #SelectionProviderSingleSelectionObservableValue(Realm, ISelectionProvider) constructor}
	 * which means the subclass's constructor will not have fully executed
	 * before this method is invoked.
	 * </p>
	 * 
	 * @return selection will be an instance of
	 *         <code>IStructuredSelection</code> if a selection exists,
	 *         <code>null</code> if no selection
	 * @see #SelectionProviderSingleSelectionObservableValue(Realm, ISelectionProvider)
	 */
	protected Object doGetValue() {
		ISelection selection = selectionProvider.getSelection();
		if (selection instanceof IStructuredSelection) {
			IStructuredSelection sel = (IStructuredSelection) selection;
			return sel.getFirstElement();
		}
		return null;
	}
	public Object getValueType() {
		return null;
	}
}