Fiddle with databinding snippets
Change-Id: I2df57936d3f245129ff54f0e4e5780e183b10191
diff --git a/examples/org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet007ColorLabelProvider.java b/examples/org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet007ColorLabelProvider.java
index a5a8ada..194acf0 100644
--- a/examples/org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet007ColorLabelProvider.java
+++ b/examples/org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet007ColorLabelProvider.java
@@ -195,8 +195,7 @@
if (index == 0) {
return null;
}
- Person person = (Person) element;
- return person.getGender() == Gender.MALE ? maleColor : femaleColor;
+ return ((Person) element).getGender() == Gender.MALE ? maleColor : femaleColor;
}
@Override
diff --git a/examples/org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet018CheckboxTableViewerCheckedSelection.java b/examples/org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet018CheckboxTableViewerCheckedSelection.java
index 0634ab2..dbf27ad 100644
--- a/examples/org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet018CheckboxTableViewerCheckedSelection.java
+++ b/examples/org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet018CheckboxTableViewerCheckedSelection.java
@@ -86,15 +86,14 @@
Person wendy = createPerson("Wendy");
Person butters = createPerson("Butters");
- setFriends(stan, new Person[] { kyle, eric, kenny, wendy });
- setFriends(kyle, new Person[] { stan, eric, kenny });
- setFriends(eric, new Person[] { eric });
- setFriends(kenny, new Person[] { stan, kyle, eric });
- setFriends(wendy, new Person[] { stan });
- setFriends(butters, new Person[0]);
+ stan.setFriends(kyle, eric, kenny, wendy);
+ kyle.setFriends(stan, eric, kenny);
+ eric.setFriends(eric);
+ kenny.setFriends(stan, kyle, eric);
+ wendy.setFriends(stan);
+ butters.setFriends();
- Person[] people = new Person[] { stan, kyle, eric, kenny, wendy, butters };
- viewModel.setPeople(Arrays.asList(people));
+ viewModel.setPeople(Arrays.asList(stan, kyle, eric, kenny, wendy, butters));
return viewModel;
}
@@ -104,10 +103,6 @@
return person;
}
- private static void setFriends(Person person, Person[] friends) {
- person.setFriends(new HashSet<>(Arrays.asList(friends)));
- }
-
/** Helper class for implementing JavaBeans support. */
public static abstract class AbstractModelObject {
private PropertyChangeSupport propertyChangeSupport = new PropertyChangeSupport(this);
@@ -155,6 +150,10 @@
return new HashSet<>(friends);
}
+ public void setFriends(Person... friends) {
+ setFriends(new HashSet<>(Arrays.asList(friends)));
+ }
+
public void setFriends(Set<Person> friends) {
firePropertyChange("friends", this.friends, this.friends = new HashSet<>(friends));
}
@@ -163,6 +162,7 @@
public String toString() {
return name;
}
+
}
/**
diff --git a/examples/org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet034ComboViewerAndEnum.java b/examples/org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet034ComboViewerAndEnum.java
index 57f5c4a..0248f30 100644
--- a/examples/org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet034ComboViewerAndEnum.java
+++ b/examples/org.eclipse.jface.examples.databinding/src/org/eclipse/jface/examples/databinding/snippets/Snippet034ComboViewerAndEnum.java
@@ -18,7 +18,6 @@
import org.eclipse.core.databinding.DataBindingContext;
import org.eclipse.core.databinding.beans.typed.PojoProperties;
import org.eclipse.core.databinding.observable.Realm;
-import org.eclipse.core.databinding.observable.value.IObservableValue;
import org.eclipse.jface.databinding.swt.DisplayRealm;
import org.eclipse.jface.databinding.swt.typed.WidgetProperties;
import org.eclipse.jface.databinding.viewers.typed.ViewerProperties;
@@ -34,7 +33,7 @@
public static void main(String[] args) {
final Display display = new Display();
- final Person model = new Person("Pat", Gender.Unknown);
+ final Person model = new Person("Pat", Gender.UNKNOWN);
Realm.runWithDefault(DisplayRealm.getRealm(display), () -> {
Shell shell = new View(model).createShell();
@@ -51,7 +50,18 @@
}
enum Gender {
- Male, Female, Unknown;
+ MALE("Male"), FEMALE("Female"), UNKNOWN("Unknown"), OTHER("Other");
+
+ private String displayName;
+
+ private Gender(String displayName) {
+ this.displayName = displayName;
+ }
+
+ @Override
+ public String toString() {
+ return displayName;
+ }
}
/**
@@ -120,13 +130,13 @@
// Bind the fields
DataBindingContext bindingContext = new DataBindingContext();
- IObservableValue<String> nameObservable = WidgetProperties.text(SWT.Modify).observe(name);
- bindingContext.bindValue(nameObservable, PojoProperties.value(Person.class, "name").observe(viewModel));
+ bindingContext.bindValue(WidgetProperties.text(SWT.Modify).observe(name),
+ PojoProperties.value(Person.class, "name").observe(viewModel));
// The second key to binding a combo to an Enum is to use a
// selection observable from the ComboViewer:
- IObservableValue<Gender> genderObservable = ViewerProperties.singleSelection(Gender.class).observe(gender);
- bindingContext.bindValue(genderObservable, PojoProperties.value(Person.class, "gender").observe(viewModel));
+ bindingContext.bindValue(ViewerProperties.singleSelection(Gender.class).observe(gender),
+ PojoProperties.value(Person.class, "gender").observe(viewModel));
shell.pack();
shell.open();