Mercurial > projects > dwt-addons
diff dwtx/jface/util/DelegatingDragAdapter.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/DelegatingDragAdapter.d Sun Aug 03 17:01:51 2008 +0200 +++ b/dwtx/jface/util/DelegatingDragAdapter.d Thu Aug 07 15:01:33 2008 +0200 @@ -15,7 +15,6 @@ import dwtx.jface.util.TransferDragSourceListener; import dwtx.jface.util.SafeRunnable; -import tango.util.collection.ArraySeq; import dwt.dnd.DragSource; import dwt.dnd.DragSourceEvent; @@ -24,6 +23,7 @@ import dwt.dnd.TransferData; import dwt.dwthelper.utils; +import dwtx.dwtxhelper.Collection; /** * A <code>DelegatingDragAdapter</code> is a <code>DragSourceListener</code> that @@ -93,15 +93,15 @@ * @since 3.0 */ public class DelegatingDragAdapter : DragSourceListener { - private ArraySeq!(Object) listeners; + private List listeners; - private ArraySeq!(Object) activeListeners; + private List activeListeners; private TransferDragSourceListener currentListener; this(){ - listeners = new ArraySeq!(Object); - activeListeners = new ArraySeq!(Object); + listeners = new ArrayList(); + activeListeners = new ArrayList(); } /** @@ -110,7 +110,7 @@ * @param listener the new listener */ public void addDragSourceListener(TransferDragSourceListener listener) { - listeners.append(cast(Object)listener); + listeners.add(cast(Object)listener); } /** @@ -137,8 +137,9 @@ } else { // The drag was canceled and currentListener was never set, so send the // dragFinished event to all the active listeners. - foreach( e; activeListeners ){ - (cast(TransferDragSourceListener) e) + Iterator iterator = activeListeners.iterator(); + while (iterator.hasNext()) { + (cast(TransferDragSourceListener) iterator.next()) .dragFinished(event); } } @@ -187,8 +188,7 @@ // if (Policy.DEBUG_DRAG_DROP) // System.out.println("Drag Start: " + toString()); //$NON-NLS-1$ bool doit = false; // true if any one of the listeners can handle the drag - auto transfers = new ArraySeq!(Object); - transfers.capacity(listeners.size()); + List transfers = new ArrayList(listeners.size()); activeListeners.clear(); for (int i = 0; i < listeners.size(); i++) { @@ -207,8 +207,8 @@ } }); if (event.doit) { // the listener can handle this drag - transfers.append(listener.getTransfer()); - activeListeners.append(cast(Object)listener); + transfers.add(listener.getTransfer()); + activeListeners.add(cast(Object)listener); } doit |= event.doit; } @@ -243,7 +243,7 @@ * <code>false</code> otherwise. */ public bool isEmpty() { - return listeners.drained(); + return listeners.isEmpty(); } /** @@ -275,8 +275,10 @@ if (event.dataType is null) { return; } - foreach( e; activeListeners ){ - TransferDragSourceListener listener = cast(TransferDragSourceListener)e; + Iterator iterator = activeListeners.iterator(); + while (iterator.hasNext()) { + TransferDragSourceListener listener = cast(TransferDragSourceListener) iterator + .next(); if (listener.getTransfer().isSupportedType(event.dataType)) { // if (Policy.DEBUG_DRAG_DROP)