Bug 147530 [DataBinding] Provide event objects for change listeners
Before data binding goes 1.0 it would be wise to provide EventObjects for the following listeners to ensure that the API doesn't preclude future expansion of the values supplied to listeners. Interfaces that would be affected: * IValueChangeListener * IValueChangingListener * IListChangeListener * ISetChangeListener * IMappingChangeListener
bundles/org.eclipse.core.databinding/src/org/eclipse/core/databinding/observable/value/AbstractObservableValue.java
listeners[i].handleValueChange(this, diff);
			}
		}
	}
	public final Object getValue() {
		ObservableTracker.getterCalled(this);
		return doGetValue();
	}
	abstract protected Object doGetValue();
	public boolean isStale() {
		return false;
	}
	protected synchronized boolean hasListeners() {
		return super.hasListeners() || valueChangeListeners != null;
	}
	protected void fireChange() {
		throw new RuntimeException(
				"fireChange should not be called, use fireValueChange() instead"); 
	}
	/*
	 * (non-Javadoc)
	 * 
	 * @see org.eclipse.jface.provisional.databinding.observable.AbstractObservable#dispose()
	 */
	public synchronized void dispose() {
		valueChangeListeners = null;
		super.dispose();
	}
}