DnDEventMulticaster.java: New file.

2003-03-02  Michael Koch  <konqueror@gmx.de>

	* java/awt/dnd/DnDEventMulticaster.java: New file.
	* java/awt/dnd/DragSource.java
	(flavorMap): New member variable.
	(dragSourceListener): New member variable.
	(dragSourceMotionListener): New member variable.
	(getFlavorMap): Implemented.
	(createDragGestureRecognizer): Implemented.
	(addDragSourceListener): Implemented.
	(removeDragSourceListener): Implemented.
	(getDragSourceListeners): Implemented.
	(addDragSourceMotionListener): Implemented.
	(removeDragSourceMotionListener): Implemented.
	(getDragSourceMotionListeners): Implemented.
	(getListeners): Implemented.
	* java/awt/dnd/DragSourceContext.java
	(peer): New member variable.
	(cursor): New member variable.
	(transferable): New member variable.
	(trigger): New member variable.
	(dragSourceListener): New member variable.
	(image): New member variable.
	(offset): New member variable.
	(DragSourceContext): Implemented.
	(getDragSource): Implemented.
	(getComponent): Implemented.
	(getTrigger): Implemented.
	(getSourceActions): Implemented.
	(setCursor): Implemented.
	(getCursor): Implemented.
	(addDragSourceListener): Implemented.
	(removeDragSourceListener): Implemented.
	(getTransferable): Implemented.
	* java/awt/dnd/DropTarget.java
	(DropTargetAutoScroller.component): New member variable.
	(DropTargetAutoScroller.point): New member variable.
	(DropTargetAutoScroller.DropTargetAutoScroller): Implemented.
	(DropTargetAutoScroller.updateLocation): Implemented.
	(active): Renamed from isActive, defaults to true now.
	(component): New member variable.
	(flavorMap): New member variable.
	(actions): New member variable.
	(dropTargetContext): New member variable.
	(dropTargetListener): New member variable.
	(DropTarget): Implemented.
	(getComponent): Implemented.
	(setComponent): Implemented.
	(setDefaultActions): Implemented.
	(getDefaultActions): Implemented.
	(setActive): Use active instead of isActive.
	(isActive): Use active instead of isActive.
	(addDropTargetListener): Implemented.
	(removeDropTargetListener): Implemented.
	(getFlavorMap): Implemented.
	(setFlavorMap): Implemented.
	(getDropTargetContext): Implemented.
	(createDropTargetContext): Implemented.
	(createDropTargetAutoScroller): Implemented.
	* java/awt/dnd/DropTargetContext.java
	(TransferableProxy.getTransferDataFlavors): Implemented.
	(TransferableProxy.isDataFlavorSupported): Implemented.
	(TransferableProxy.getTransferData): Implemented.
	(dropTarget):  New member variable.
	(dtcp): New member variable.
	(DropTargetContext): New package private constructor.
	(getDropTarget): Implemented.
	(getComponent): Implemented.
	(addNotify): Implemented.
	(removeNotify): Implemented.
	(getCurrentDataFlavorsAsList): Implemented.
	(isDataFlavorSupported): Implemented.
	* java/awt/dnd/MouseDragGestureRecognizer.java
	(registerListeners): Implemented.
	(unregisterListeners): Implemented.
	* Makefile.am
	(awt_java_source_files): Added java/awt/dnd/DnDEventMulticaster.java.
	* Makefile.in: Regenerated.

From-SVN: r63665
This commit is contained in:
Michael Koch
2003-03-02 14:24:48 +00:00
committed by Michael Koch
parent 8a035a6bf6
commit b4822ade38
9 changed files with 353 additions and 50 deletions
+68 -11
View File
@@ -44,12 +44,21 @@ import java.awt.Image;
import java.awt.Point;
import java.awt.datatransfer.Transferable;
import java.awt.dnd.peer.DragSourceContextPeer;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.TooManyListenersException;
/**
* @since 1.2
*/
public class DragSourceContext
implements DragSourceListener, DragSourceMotionListener, Serializable
{
/**
* Compatible with JDK 1.2+
*/
static final long serialVersionUID = -115407898692194719L;
protected static final int DEFAULT = 0;
@@ -57,39 +66,81 @@ public class DragSourceContext
protected static final int OVER = 2;
protected static final int CHANGED = 3;
public DragSourceContext(DragSourceContextPeer peer, DragGestureEvent dge,
Cursor cursor, Image image, Point offset,
Transferable trans, DragSourceListener dsl)
private DragSourceContextPeer peer;
private Cursor cursor;
private Transferable transferable;
private DragGestureEvent trigger;
private DragSourceListener dragSourceListener;
private boolean useCustomCursor; // FIXME: currently unused but needed for serialization.
private int sourceActions; // FIXME: currently unused but needed for serialization.
private Image image;
private Point offset;
/**
* Initializes a drag source context.
*
* @exception IllegalArgumentException If Component or DragSource of trigger
* are null, the drag action for the trigger event is DnDConstants.ACTION_NONE
* or if the source actions for the DragGestureRecognizer associated with the
* trigger event are equal to DnDConstants.ACTION_NONE.
* @exception NullPointerException If peer or trigger is null.
*/
public DragSourceContext (DragSourceContextPeer peer,
DragGestureEvent trigger, Cursor cursor,
Image image, Point offset, Transferable trans,
DragSourceListener dsl)
{
if (peer == null
|| trigger == null)
throw new NullPointerException ();
if (trigger.getComponent () == null
|| trigger.getDragSource () == null
|| trigger.getDragAction () == DnDConstants.ACTION_NONE
|| trigger.getSourceAsDragGestureRecognizer ()
.getSourceActions () == DnDConstants.ACTION_NONE)
throw new IllegalArgumentException ();
this.peer = peer;
this.trigger = trigger;
this.cursor = cursor;
this.image = image;
this.offset = offset;
this.transferable = trans;
this.dragSourceListener = dsl;
throw new Error ("not implemented");
}
public DragSource getDragSource()
{
return null;
return trigger.getDragSource ();
}
public Component getComponent()
{
return null;
return trigger.getComponent ();
}
public DragGestureEvent getTrigger()
{
return null;
return trigger;
}
public int getSourceActions()
{
return 0;
return trigger.getSourceAsDragGestureRecognizer ().getSourceActions ();
}
public void setCursor(Cursor c)
public void setCursor (Cursor cursor)
{
this.cursor = cursor;
// FIXME: Check if we need to do more here
}
public Cursor getCursor()
{
return null;
return cursor;
}
/**
@@ -101,10 +152,16 @@ public class DragSourceContext
public void addDragSourceListener (DragSourceListener dsl)
throws TooManyListenersException
{
if (dragSourceListener != null)
throw new TooManyListenersException ();
dragSourceListener = dsl;
}
public void removeDragSourceListener(DragSourceListener l)
public void removeDragSourceListener (DragSourceListener dsl)
{
if (dragSourceListener == dsl)
dragSourceListener = null;
}
public void transferablesFlavorsChanged()
@@ -137,7 +194,7 @@ public class DragSourceContext
public Transferable getTransferable()
{
return null;
return transferable;
}
protected void updateCurrentCursor(int dropOp, int targetAct, int status)