diff dwtx/jface/viewers/TreeSelection.d @ 104:04b47443bb01

Reworked the collection uses to make use of a wrapper collection that is compatible to the Java Collections. These new wrappers now use the tango.util.containers instead of the tango.util.collections.
author Frank Benoit <benoit@tionex.de>
date Thu, 07 Aug 2008 15:01:33 +0200
parents ea8ff534f622
children
line wrap: on
line diff
--- a/dwtx/jface/viewers/TreeSelection.d	Sun Aug 03 17:01:51 2008 +0200
+++ b/dwtx/jface/viewers/TreeSelection.d	Thu Aug 07 15:01:33 2008 +0200
@@ -18,12 +18,11 @@
 import dwtx.jface.viewers.TreePath;
 import dwtx.jface.viewers.IElementComparer;
 
-import tango.util.collection.ArraySeq;
-import tango.util.collection.model.Seq;
 
 import dwtx.core.runtime.Assert;
 
 import dwt.dwthelper.utils;
+import dwtx.dwtxhelper.Collection;
 
 /**
  * A concrete implementation of the <code>ITreeSelection</code> interface,
@@ -58,7 +57,7 @@
     }
 
     private static class InitializeData {
-        Seq!(Object) selection;
+        List selection;
         TreePath[] paths;
         CustomHashtable element2TreePaths;
 
@@ -67,21 +66,19 @@
             System.arraycopy(paths, 0, this.paths, 0, paths.length);
             element2TreePaths = new CustomHashtable(comparer);
             int size = paths.length;
-            auto s = new ArraySeq!(Object);
-            s.capacity(size);
-            selection = s;
+            selection = new ArrayList(size);
             for (int i = 0; i < size; i++) {
                 Object lastSegment= paths[i].getLastSegment();
                 Object mapped= element2TreePaths.get(lastSegment);
                 if (mapped is null) {
-                    selection.append(lastSegment);
+                    selection.add(lastSegment);
                     element2TreePaths.put(lastSegment, paths[i]);
-                } else if ( cast(Seq!(Object))mapped ) {
-                    (cast(Seq!(Object))mapped).append(paths[i]);
+                } else if ( cast(List)mapped ) {
+                    (cast(List)mapped).add( cast(Object)paths[i]);
                 } else {
-                    Seq!(Object) newMapped= new ArraySeq!(Object);
-                    newMapped.append(mapped);
-                    newMapped.append(paths[i]);
+                    List newMapped= new ArrayList();
+                    newMapped.add(mapped);
+                    newMapped.add(paths[i]);
                     element2TreePaths.put(lastSegment, cast(Object) newMapped);
                 }
             }
@@ -217,9 +214,9 @@
             return EMPTY_TREE_PATHS;
         } else if (cast(TreePath)value ) {
             return [ cast(TreePath)value ];
-        } else if (cast(Seq!(Object))value ) {
-            auto l= cast(Seq!(Object))value;
-            return cast(TreePath[]) l.toArray();
+        } else if (cast(List)value ) {
+            auto l= cast(List)value;
+            return arraycast!(TreePath)( l.toArray() );
         } else {
             // should not happen:
             Assert.isTrue(false, "Unhandled case"); //$NON-NLS-1$