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
examples/org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/contentprovider/test/StructuredContentProviderTest.java
ListViewer listOfInts = new ListViewer(addRemoveComposite,
					SWT.BORDER);
			listOfInts.setContentProvider(new ObservableSetContentProvider());
			listOfInts.setLabelProvider(new ViewerLabelProvider());
			listOfInts.setInput(inputSet);
			final IObservableValue selectedInt = ViewersObservables.observeSingleSelection(listOfInts);
			GridData listData = new GridData(GridData.FILL_BOTH);
			listData.minimumHeight = 1;
			listData.minimumWidth = 1;
			listData.widthHint = 150;
			listData.heightHint = 150;
			listOfInts.getControl().setLayoutData(listData);
			Composite buttonBar = new Composite(addRemoveComposite, SWT.NONE);
			{ 
				Button add = new Button(buttonBar, SWT.PUSH);
				add.setText("Add"); 
				add.addSelectionListener(new SelectionAdapter() {
					public void widgetSelected(SelectionEvent e) {
						inputSet.add(new Double(random.nextDouble() * 100.0));
						super.widgetSelected(e);
					}
				});
				add.setLayoutData(new GridData(GridData.HORIZONTAL_ALIGN_FILL
						| GridData.VERTICAL_ALIGN_FILL));
				final Button remove = new Button(buttonBar, SWT.PUSH);
				remove.setText("Remove"); 
				
				
				new ControlUpdater(remove) {
					protected void updateControl() {