comparison org.eclipse.core.databinding/src/org/eclipse/core/databinding/observable/set/ListToSetAdapter.d @ 85:6be48cf9f95c

Work on databinding
author Frank Benoit <benoit@tionex.de>
date Sat, 18 Apr 2009 13:54:50 +0200
parents 383ce7bd736b
children
comparison
equal deleted inserted replaced
84:fcf926c91ca4 85:6be48cf9f95c
39 */ 39 */
40 public class ListToSetAdapter : ObservableSet { 40 public class ListToSetAdapter : ObservableSet {
41 41
42 private final IObservableList list; 42 private final IObservableList list;
43 43
44 private IListChangeListener listener = new class() IListChangeListener { 44 private IListChangeListener listener;
45 class Listener_ : IListChangeListener {
45 46
46 public void handleListChange(ListChangeEvent event) { 47 public void handleListChange(ListChangeEvent event) {
47 Set added = new HashSet(); 48 Set added = new HashSet();
48 Set removed = new HashSet(); 49 Set removed = new HashSet();
49 ListDiffEntry[] differences = event.diff.getDifferences(); 50 ListDiffEntry[] differences = event.diff.getDifferences();
68 69
69 /** 70 /**
70 * @param list 71 * @param list
71 */ 72 */
72 public this(IObservableList list) { 73 public this(IObservableList list) {
74 listener = new Listener_();
73 super(list.getRealm(), new HashSet(), list.getElementType()); 75 super(list.getRealm(), new HashSet(), list.getElementType());
74 this.list = list; 76 this.list = list;
75 wrappedSet.addAll(list); 77 wrappedSet.addAll(list);
76 this.list.addListChangeListener(listener); 78 this.list.addListChangeListener(listener);
77 } 79 }