comparison org.eclipse.core.databinding/src/org/eclipse/core/databinding/observable/map/ObservableMap.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
20 20
21 import java.util.Collection; 21 import java.util.Collection;
22 import java.util.Map; 22 import java.util.Map;
23 import java.util.Set; 23 import java.util.Set;
24 24
25 import org.eclipse.core.databinding.observable.IChangeListener;
26 import org.eclipse.core.databinding.observable.IStaleListener;
25 import org.eclipse.core.databinding.observable.AbstractObservable; 27 import org.eclipse.core.databinding.observable.AbstractObservable;
26 import org.eclipse.core.databinding.observable.ObservableTracker; 28 import org.eclipse.core.databinding.observable.ObservableTracker;
27 import org.eclipse.core.databinding.observable.Realm; 29 import org.eclipse.core.databinding.observable.Realm;
28 30
29 /** 31 /**
34 * listeners may be invoked from any thread. 36 * listeners may be invoked from any thread.
35 * </p> 37 * </p>
36 * @since 1.0 38 * @since 1.0
37 */ 39 */
38 public class ObservableMap : AbstractObservable , IObservableMap { 40 public class ObservableMap : AbstractObservable , IObservableMap {
41 // DWT start: java.util.Map additional methods
42 public bool containsKey(String key) {
43 return containsKey(stringcast(key));
44 }
45 public Object get(String key){
46 return get(stringcast(key));
47 }
48 public Object put(String key, Object value){
49 return put(stringcast(key), value);
50 }
51 public Object put(Object key, String value){
52 return put(key, stringcast(value));
53 }
54 public Object put(String key, String value){
55 return put(stringcast(key), stringcast(value));
56 }
57 public Object remove(String key){
58 return remove(stringcast(key));
59 }
60 public int opApply (int delegate(ref Object value) dg){
61 foreach( entry; entrySet() ){
62 auto me = cast(Map.Entry)entry;
63 auto v = me.getValue();
64 int res = dg( v );
65 if( res ) return res;
66 }
67 return 0;
68 }
69 public int opApply (int delegate(ref Object key, ref Object value) dg){
70 foreach( entry; entrySet() ){
71 auto me = cast(Map.Entry)entry;
72 auto k = me.getKey();
73 auto v = me.getValue();
74 int res = dg( k, v );
75 if( res ) return res;
76 }
77 return 0;
78 }
79 // DWT end: java.util.Map additional methods
80 // DWT start reimpl super meths
81 public override Realm getRealm() {
82 return super.getRealm();
83 }
84 public override void addChangeListener(IChangeListener listener) {
85 super.addChangeListener(listener);
86 }
87 public override void addStaleListener(IStaleListener listener) {
88 super.addStaleListener(listener);
89 }
90 public override void removeChangeListener(IChangeListener listener) {
91 super.removeChangeListener(listener);
92 }
93 public override void removeStaleListener(IStaleListener listener) {
94 super.removeStaleListener(listener);
95 }
96 public override hash_t toHash(){
97 return super.toHash();
98 }
99 public equals_t opEquals( Object o){
100 if( ObservableMap other = cast(ObservableMap)o){
101 return cast(equals_t)entrySet().opEquals( cast(Object) other.entrySet() );
102 }
103 return false;
104 }
105 // DWT end reimpl super meths
39 106
40 protected Map wrappedMap; 107 protected Map wrappedMap;
41 108
42 private bool stale = false; 109 private bool stale = false;
43 110