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/internal/databinding/ValidationStatusMap.java
/**
	 * @param realm
	 * @param bindings
	 * @param usePartialErrors
	 */
	public ValidationStatusMap(Realm realm, WritableList bindings,
			boolean usePartialErrors) {
		super(realm, new HashMap());
		this.bindings = bindings;
		this.usePartialErrors = usePartialErrors;
		bindings.addChangeListener(markDirtyChangeListener);
	}
	protected void getterCalled() {
		recompute();
		super.getterCalled();
	}
	private void markDirty() {
		
		removeElementChangeListener();
		final Map oldMap = wrappedMap;
		
		MapDiff mapDiff = new MapDiff() {
			private MapDiff cachedDiff = null;
			private void ensureCached() {
				if (cachedDiff == null) {
					recompute();
					cachedDiff = Diffs.computeMapDiff(oldMap, wrappedMap);
				}
			}
			public Set getAddedKeys() {