diff dwtx/jface/util/DelegatingDropAdapter.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 644f1334b451
children
line wrap: on
line diff
--- a/dwtx/jface/util/DelegatingDropAdapter.d	Sun Aug 03 17:01:51 2008 +0200
+++ b/dwtx/jface/util/DelegatingDropAdapter.d	Thu Aug 07 15:01:33 2008 +0200
@@ -15,7 +15,6 @@
 import dwtx.jface.util.TransferDropTargetListener;
 import dwtx.jface.util.SafeRunnable;
 
-import tango.util.collection.ArraySeq;
 
 import dwt.dnd.DND;
 import dwt.dnd.DropTargetEvent;
@@ -24,6 +23,7 @@
 import dwt.dnd.TransferData;
 
 import dwt.dwthelper.utils;
+import dwtx.dwtxhelper.Collection;
 
 /**
  * A <code>DelegatingDropAdapter</code> is a <code>DropTargetListener</code> that
@@ -104,14 +104,14 @@
  * @since 3.0
  */
 public class DelegatingDropAdapter : DropTargetListener {
-    private ArraySeq!(Object) listeners;
+    private List listeners;
 
     private TransferDropTargetListener currentListener;
 
     private int originalDropType;
 
     this(){
-        listeners = new ArraySeq!(Object);
+        listeners = new ArrayList();
     }
 
     /**
@@ -120,7 +120,7 @@
      * @param listener the new listener
      */
     public void addDropTargetListener(TransferDropTargetListener listener) {
-        listeners.append(cast(Object)listener);
+        listeners.add(cast(Object)listener);
     }
 
     /**
@@ -312,7 +312,7 @@
      *  <code>false</code> otherwise
      */
     public bool isEmpty() {
-        return listeners.drained();
+        return listeners.isEmpty();
     }
 
     /**
@@ -381,8 +381,10 @@
         // to something other than what the user indicated.
         event.detail = originalDropType;
 
-        foreach( e; listeners ){
-            TransferDropTargetListener listener = cast(TransferDropTargetListener)e;
+        Iterator iter = listeners.iterator();
+        while (iter.hasNext()) {
+            TransferDropTargetListener listener = cast(TransferDropTargetListener) iter
+                    .next();
             TransferData dataType = getSupportedTransferType(event.dataTypes,
                     listener);
             if (dataType !is null) {