X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/ui/dnd/DelegatingDropAdapter.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/ui/dnd/DelegatingDropAdapter.java deleted file mode 100644 index 4424f34..0000000 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/ui/dnd/DelegatingDropAdapter.java +++ /dev/null @@ -1,123 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2000, 2003 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Common Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/cpl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package net.sourceforge.phpdt.internal.ui.dnd; - -import org.eclipse.jface.util.Assert; -import org.eclipse.swt.dnd.DropTargetEvent; -import org.eclipse.swt.dnd.DropTargetListener; -import org.eclipse.swt.dnd.TransferData; - -/** - * A delegating drop adapter negotiates between a set of - * TransferDropTargetListeners On dragEnter the - * adapter determines the listener to be used for any further drag* - * callback. - */ -public class DelegatingDropAdapter implements DropTargetListener { - - private TransferDropTargetListener[] fListeners; - - private TransferDropTargetListener fChosenListener; - - /** - * Creates a new delegating drop adapter. - * - * @param listeners - * an array of potential listeners - */ - public DelegatingDropAdapter(TransferDropTargetListener[] listeners) { - fListeners = listeners; - Assert.isNotNull(listeners); - } - - /* - * non Java-doc - * - * @see DropTargetListener - */ - public void dragEnter(DropTargetEvent event) { - fChosenListener = null; - event.currentDataType = selectPreferredListener(event.dataTypes); - if (fChosenListener != null) - fChosenListener.dragEnter(event); - } - - /* - * non Java-doc - * - * @see DropTargetListener - */ - public void dragLeave(DropTargetEvent event) { - if (fChosenListener != null) - fChosenListener.dragLeave(event); - } - - /* - * non Java-doc - * - * @see DropTargetListener - */ - public void dragOperationChanged(DropTargetEvent event) { - if (fChosenListener != null) - fChosenListener.dragOperationChanged(event); - } - - /* - * non Java-doc - * - * @see DropTargetListener - */ - public void dragOver(DropTargetEvent event) { - if (fChosenListener != null) - fChosenListener.dragOver(event); - } - - /* - * non Java-doc - * - * @see DropTargetListener - */ - public void drop(DropTargetEvent event) { - if (fChosenListener != null) - fChosenListener.drop(event); - fChosenListener = null; - } - - /* - * non Java-doc - * - * @see DropTargetListener - */ - public void dropAccept(DropTargetEvent event) { - if (fChosenListener != null) - fChosenListener.dropAccept(event); - } - - private TransferData selectPreferredListener(TransferData[] dataTypes) { - for (int i = 0; i < fListeners.length; i++) { - TransferData data = computeTransferData(dataTypes, fListeners[i]); - if (data != null) - return data; - } - return null; - } - - private TransferData computeTransferData(TransferData[] dataTypes, - TransferDropTargetListener listener) { - for (int i = 0; i < dataTypes.length; i++) { - if (listener.getTransfer().isSupportedType(dataTypes[i])) { - fChosenListener = listener; - return dataTypes[i]; - } - } - return null; - } -}