Mercurial > projects > dwt2
diff org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet001NestedSelectionWithCombo.d @ 99:5d5bd660917f
build some databind snippets
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Wed, 22 Apr 2009 18:59:26 +0200 |
parents | 18a80add24ac |
children | 6373fd739945 |
line wrap: on
line diff
--- a/org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet001NestedSelectionWithCombo.d Wed Apr 22 07:30:21 2009 +0200 +++ b/org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet001NestedSelectionWithCombo.d Wed Apr 22 18:59:26 2009 +0200 @@ -39,6 +39,7 @@ import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Text; +import org.eclipse.jface.viewers.Viewer; /** * Demonstrates nested selection.<br> * At the first level, user may select a person.<br> @@ -61,8 +62,11 @@ // Minimal JavaBeans support public static abstract class AbstractModelObject { - private PropertyChangeSupport propertyChangeSupport = new PropertyChangeSupport( + private PropertyChangeSupport propertyChangeSupport; + this(){ + propertyChangeSupport = new PropertyChangeSupport( this); + } public void addPropertyChangeListener(PropertyChangeListener listener) { propertyChangeSupport.addPropertyChangeListener(listener); @@ -114,7 +118,7 @@ public void setName(String name) { String oldValue = this.name; this.name = name; - firePropertyChange("name", oldValue, name); + firePropertyChange("name", stringcast(oldValue), stringcast(name)); } public String getCity() { @@ -124,7 +128,7 @@ public void setCity(String city) { String oldValue = this.city; this.city = city; - firePropertyChange("city", oldValue, city); + firePropertyChange("city", stringcast(oldValue), stringcast(city)); } } @@ -190,27 +194,27 @@ ListViewer peopleListViewer = new ListViewer(peopleList); IObservableMap attributeMap = BeansObservables.observeMap( Observables.staticObservableSet(realm, new HashSet( - viewModel.getPeople())), Class.formType!(Person), "name"); + viewModel.getPeople())), Class.fromType!(Person), "name"); peopleListViewer.setLabelProvider(new ObservableMapLabelProvider( attributeMap)); - peopleListViewer.setContentProvider(new ArrayContentProvider()); + peopleListViewer.setContentProvider(new ArrayContentProvider!(Object)()); peopleListViewer.setInput(viewModel.getPeople()); DataBindingContext dbc = new DataBindingContext(realm); IObservableValue selectedPerson = ViewersObservables - .observeSingleSelection(peopleListViewer); + .observeSingleSelection(cast(Viewer)peopleListViewer); dbc.bindValue(SWTObservables.observeText(name, SWT.Modify), - BeansObservables.observeDetailValue(selectedPerson, - "name", Class.fromType!(String))); + BeansObservables.observeDetailValue(realm, selectedPerson, + "name", Class.fromType!(String)), null, null); ComboViewer cityViewer = new ComboViewer(city); - cityViewer.setContentProvider(new ArrayContentProvider()); + cityViewer.setContentProvider(new ArrayContentProvider!(Object)()); cityViewer.setInput(viewModel.getCities()); IObservableValue citySelection = ViewersObservables - .observeSingleSelection(cityViewer); - dbc.bindValue(citySelection, BeansObservables.observeDetailValue( - selectedPerson, "city", Class.fromType!(String))); + .observeSingleSelection(cast(Viewer)cityViewer); + dbc.bindValue( citySelection, BeansObservables.observeDetailValue( realm, + selectedPerson, "city", Class.fromType!(String)), null, null); GridLayoutFactory.swtDefaults().applyTo(shell); // Open and return the Shell