Commit b4822ade by Michael Koch Committed by Michael Koch

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
parent 8a035a6b
2003-03-02 Michael Koch <konqueror@gmx.de> 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.
2003-03-02 Michael Koch <konqueror@gmx.de>
* java/awt/Component.java * java/awt/Component.java
(eventTypeEnabled): New method. (eventTypeEnabled): New method.
(dispatchEventImpl): Moved checks for event to eventTypeEnabled. (dispatchEventImpl): Moved checks for event to eventTypeEnabled.
......
...@@ -1037,6 +1037,7 @@ java/awt/dnd/peer/DragSourceContextPeer.java \ ...@@ -1037,6 +1037,7 @@ java/awt/dnd/peer/DragSourceContextPeer.java \
java/awt/dnd/peer/DropTargetContextPeer.java \ java/awt/dnd/peer/DropTargetContextPeer.java \
java/awt/dnd/peer/DropTargetPeer.java \ java/awt/dnd/peer/DropTargetPeer.java \
java/awt/dnd/DnDConstants.java \ java/awt/dnd/DnDConstants.java \
java/awt/dnd/DnDEventMulticaster.java \
java/awt/dnd/DragGestureEvent.java \ java/awt/dnd/DragGestureEvent.java \
java/awt/dnd/DragGestureListener.java \ java/awt/dnd/DragGestureListener.java \
java/awt/dnd/DragGestureRecognizer.java \ java/awt/dnd/DragGestureRecognizer.java \
......
...@@ -805,6 +805,7 @@ java/awt/dnd/peer/DragSourceContextPeer.java \ ...@@ -805,6 +805,7 @@ java/awt/dnd/peer/DragSourceContextPeer.java \
java/awt/dnd/peer/DropTargetContextPeer.java \ java/awt/dnd/peer/DropTargetContextPeer.java \
java/awt/dnd/peer/DropTargetPeer.java \ java/awt/dnd/peer/DropTargetPeer.java \
java/awt/dnd/DnDConstants.java \ java/awt/dnd/DnDConstants.java \
java/awt/dnd/DnDEventMulticaster.java \
java/awt/dnd/DragGestureEvent.java \ java/awt/dnd/DragGestureEvent.java \
java/awt/dnd/DragGestureListener.java \ java/awt/dnd/DragGestureListener.java \
java/awt/dnd/DragGestureRecognizer.java \ java/awt/dnd/DragGestureRecognizer.java \
...@@ -3042,6 +3043,7 @@ DEP_FILES = .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \ ...@@ -3042,6 +3043,7 @@ DEP_FILES = .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \
.deps/java/awt/datatransfer/Transferable.P \ .deps/java/awt/datatransfer/Transferable.P \
.deps/java/awt/datatransfer/UnsupportedFlavorException.P \ .deps/java/awt/datatransfer/UnsupportedFlavorException.P \
.deps/java/awt/dnd/Autoscroll.P .deps/java/awt/dnd/DnDConstants.P \ .deps/java/awt/dnd/Autoscroll.P .deps/java/awt/dnd/DnDConstants.P \
.deps/java/awt/dnd/DnDEventMulticaster.P \
.deps/java/awt/dnd/DragGestureEvent.P \ .deps/java/awt/dnd/DragGestureEvent.P \
.deps/java/awt/dnd/DragGestureListener.P \ .deps/java/awt/dnd/DragGestureListener.P \
.deps/java/awt/dnd/DragGestureRecognizer.P \ .deps/java/awt/dnd/DragGestureRecognizer.P \
......
/* DnDEventMulticaster.java -- helper class for listener chains in java.awt.dnd
Copyright (C) 2003 Free Software Foundation, Inc.
This file is part of GNU Classpath.
GNU Classpath is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Classpath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Classpath; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA.
Linking this library statically or dynamically with other modules is
making a combined work based on this library. Thus, the terms and
conditions of the GNU General Public License cover the whole
combination.
As a special exception, the copyright holders of this library give you
permission to link this library with independent modules to produce an
executable, regardless of the license terms of these independent
modules, and to copy and distribute the resulting executable under
terms of your choice, provided that you also meet, for each linked
independent module, the terms and conditions of the license of that
module. An independent module is a module which is not derived from
or based on this library. If you modify this library, you may extend
this exception to your version of the library, but you are not
obligated to do so. If you do not wish to do so, delete this
exception statement from your version. */
package java.awt.dnd;
import java.awt.AWTEventMulticaster;
import java.util.EventListener;
class DnDEventMulticaster extends AWTEventMulticaster
{
protected DnDEventMulticaster (EventListener a, EventListener b)
{
super (a, b);
}
public static DragSourceListener add (DragSourceListener a,
DragSourceListener b)
{
return (DragSourceListener) addInternal (a, b);
}
public static DragSourceMotionListener add (DragSourceMotionListener a,
DragSourceMotionListener b)
{
return (DragSourceMotionListener) addInternal (a, b);
}
public static DragSourceListener remove (DragSourceListener a,
DragSourceListener b)
{
return (DragSourceListener) removeInternal (a, b);
}
public static DragSourceMotionListener remove (DragSourceMotionListener a,
DragSourceMotionListener b)
{
return (DragSourceMotionListener) removeInternal (a, b);
}
}
...@@ -44,12 +44,20 @@ import java.awt.GraphicsEnvironment; ...@@ -44,12 +44,20 @@ import java.awt.GraphicsEnvironment;
import java.awt.HeadlessException; import java.awt.HeadlessException;
import java.awt.Image; import java.awt.Image;
import java.awt.Point; import java.awt.Point;
import java.awt.Toolkit;
import java.awt.datatransfer.FlavorMap; import java.awt.datatransfer.FlavorMap;
import java.awt.datatransfer.SystemFlavorMap;
import java.awt.datatransfer.Transferable; import java.awt.datatransfer.Transferable;
import java.awt.dnd.peer.DragSourceContextPeer; import java.awt.dnd.peer.DragSourceContextPeer;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable; import java.io.Serializable;
import java.util.EventListener; import java.util.EventListener;
/**
* @since 1.2
*/
public class DragSource implements Serializable public class DragSource implements Serializable
{ {
/** /**
...@@ -64,6 +72,11 @@ public class DragSource implements Serializable ...@@ -64,6 +72,11 @@ public class DragSource implements Serializable
public static final Cursor DefaultMoveNoDrop = null; public static final Cursor DefaultMoveNoDrop = null;
public static final Cursor DefaultLinkNoDrop = null; public static final Cursor DefaultLinkNoDrop = null;
private transient FlavorMap flavorMap = SystemFlavorMap.getDefaultFlavorMap ();
private transient DragSourceListener dragSourceListener;
private transient DragSourceMotionListener dragSourceMotionListener;
/** /**
* Initializes the drag source. * Initializes the drag source.
* *
...@@ -159,51 +172,89 @@ public class DragSource implements Serializable ...@@ -159,51 +172,89 @@ public class DragSource implements Serializable
public FlavorMap getFlavorMap() public FlavorMap getFlavorMap()
{ {
return null; return flavorMap;
} }
public DragGestureRecognizer public DragGestureRecognizer
createDragGestureRecognizer(Class recognizer, Component c, int actions, createDragGestureRecognizer(Class recognizer, Component c, int actions,
DragGestureListener dgl) DragGestureListener dgl)
{ {
return null; return Toolkit.getDefaultToolkit ()
.createDragGestureRecognizer (recognizer, this, c, actions,
dgl);
} }
public DragGestureRecognizer public DragGestureRecognizer
createDefaultDragGestureRecognizer(Component c, int actions, createDefaultDragGestureRecognizer(Component c, int actions,
DragGestureListener dgl) DragGestureListener dgl)
{ {
return null; return createDragGestureRecognizer (MouseDragGestureRecognizer.class, c,
actions, dgl);
} }
/**
* @since 1.4
*/
public void addDragSourceListener(DragSourceListener l) public void addDragSourceListener(DragSourceListener l)
{ {
DnDEventMulticaster.add (dragSourceListener, l);
} }
/**
* @since 1.4
*/
public void removeDragSourceListener(DragSourceListener l) public void removeDragSourceListener(DragSourceListener l)
{ {
DnDEventMulticaster.remove (dragSourceListener, l);
} }
/**
* @since 1.4
*/
public DragSourceListener[] getDragSourceListeners() public DragSourceListener[] getDragSourceListeners()
{ {
return null; return (DragSourceListener[]) getListeners (DragSourceListener.class);
} }
/**
* @since 1.4
*/
public void addDragSourceMotionListener(DragSourceMotionListener l) public void addDragSourceMotionListener(DragSourceMotionListener l)
{ {
DnDEventMulticaster.add (dragSourceMotionListener, l);
} }
/**
* @since 1.4
*/
public void removeDragSourceMotionListener(DragSourceMotionListener l) public void removeDragSourceMotionListener(DragSourceMotionListener l)
{ {
DnDEventMulticaster.remove (dragSourceMotionListener, l);
} }
public DragSourceMotionListener[] getDragSourceMotionListeners() /**
* @since 1.4
*/
public DragSourceMotionListener[] getDragSourceMotionListeners ()
{ {
return null; return (DragSourceMotionListener[]) getListeners
(DragSourceMotionListener.class);
} }
public EventListener[] getListeners(Class type) /**
* @since 1.4
*/
public EventListener[] getListeners (Class listenerType)
{ {
return null; if (listenerType == DragSourceListener.class)
return DnDEventMulticaster.getListeners (dragSourceListener,
listenerType);
if (listenerType == DragSourceMotionListener.class)
return DnDEventMulticaster.getListeners (dragSourceMotionListener,
listenerType);
// Return an empty EventListener array.
return new EventListener [0];
} }
} // class DragSource } // class DragSource
...@@ -44,12 +44,21 @@ import java.awt.Image; ...@@ -44,12 +44,21 @@ import java.awt.Image;
import java.awt.Point; import java.awt.Point;
import java.awt.datatransfer.Transferable; import java.awt.datatransfer.Transferable;
import java.awt.dnd.peer.DragSourceContextPeer; import java.awt.dnd.peer.DragSourceContextPeer;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable; import java.io.Serializable;
import java.util.TooManyListenersException; import java.util.TooManyListenersException;
/**
* @since 1.2
*/
public class DragSourceContext public class DragSourceContext
implements DragSourceListener, DragSourceMotionListener, Serializable implements DragSourceListener, DragSourceMotionListener, Serializable
{ {
/**
* Compatible with JDK 1.2+
*/
static final long serialVersionUID = -115407898692194719L; static final long serialVersionUID = -115407898692194719L;
protected static final int DEFAULT = 0; protected static final int DEFAULT = 0;
...@@ -57,39 +66,81 @@ public class DragSourceContext ...@@ -57,39 +66,81 @@ public class DragSourceContext
protected static final int OVER = 2; protected static final int OVER = 2;
protected static final int CHANGED = 3; protected static final int CHANGED = 3;
public DragSourceContext(DragSourceContextPeer peer, DragGestureEvent dge, private DragSourceContextPeer peer;
Cursor cursor, Image image, Point offset, private Cursor cursor;
Transferable trans, DragSourceListener dsl) 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() public DragSource getDragSource()
{ {
return null; return trigger.getDragSource ();
} }
public Component getComponent() public Component getComponent()
{ {
return null; return trigger.getComponent ();
} }
public DragGestureEvent getTrigger() public DragGestureEvent getTrigger()
{ {
return null; return trigger;
} }
public int getSourceActions() 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() public Cursor getCursor()
{ {
return null; return cursor;
} }
/** /**
...@@ -101,10 +152,16 @@ public class DragSourceContext ...@@ -101,10 +152,16 @@ public class DragSourceContext
public void addDragSourceListener (DragSourceListener dsl) public void addDragSourceListener (DragSourceListener dsl)
throws TooManyListenersException 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() public void transferablesFlavorsChanged()
...@@ -137,7 +194,7 @@ public class DragSourceContext ...@@ -137,7 +194,7 @@ public class DragSourceContext
public Transferable getTransferable() public Transferable getTransferable()
{ {
return null; return transferable;
} }
protected void updateCurrentCursor(int dropOp, int targetAct, int status) protected void updateCurrentCursor(int dropOp, int targetAct, int status)
......
...@@ -39,6 +39,8 @@ package java.awt.dnd; ...@@ -39,6 +39,8 @@ package java.awt.dnd;
import java.awt.Point; import java.awt.Point;
import java.awt.Component; import java.awt.Component;
import java.awt.GraphicsEnvironment;
import java.awt.HeadlessException;
import java.awt.datatransfer.FlavorMap; import java.awt.datatransfer.FlavorMap;
import java.awt.event.ActionEvent; import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; import java.awt.event.ActionListener;
...@@ -46,7 +48,10 @@ import java.io.Serializable; ...@@ -46,7 +48,10 @@ import java.io.Serializable;
import java.util.EventListener; import java.util.EventListener;
import java.util.TooManyListenersException; import java.util.TooManyListenersException;
/** STUB CLASS ONLY */ /**
* @author Michael Koch
* @since 1.2
*/
public class DropTarget public class DropTarget
implements DropTargetListener, EventListener, Serializable implements DropTargetListener, EventListener, Serializable
{ {
...@@ -58,12 +63,18 @@ public class DropTarget ...@@ -58,12 +63,18 @@ public class DropTarget
protected static class DropTargetAutoScroller protected static class DropTargetAutoScroller
implements ActionListener implements ActionListener
{ {
private Component component;
private Point point;
protected DropTargetAutoScroller (Component c, Point p) protected DropTargetAutoScroller (Component c, Point p)
{ {
component = c;
point = p;
} }
protected void updateLocation (Point newLocn) protected void updateLocation (Point newLocn)
{ {
point = newLocn;
} }
protected void stop () protected void stop ()
...@@ -74,9 +85,13 @@ public class DropTarget ...@@ -74,9 +85,13 @@ public class DropTarget
{ {
} }
} }
// FIXME: check the correctness of default value. private Component component;
private boolean isActive = false; private FlavorMap flavorMap;
private int actions;
private DropTargetContext dropTargetContext;
private DropTargetListener dropTargetListener;
private boolean active = true;
/** /**
* Creates a <code>DropTarget</code> object. * Creates a <code>DropTarget</code> object.
...@@ -131,6 +146,15 @@ public class DropTarget ...@@ -131,6 +146,15 @@ public class DropTarget
public DropTarget (Component c, int i, DropTargetListener dtl, boolean b, public DropTarget (Component c, int i, DropTargetListener dtl, boolean b,
FlavorMap fm) FlavorMap fm)
{ {
if (GraphicsEnvironment.isHeadless ())
throw new HeadlessException ();
component = c;
actions = i;
dropTargetListener = dtl;
flavorMap = fm;
setActive (b);
} }
/** /**
...@@ -138,6 +162,7 @@ public class DropTarget ...@@ -138,6 +162,7 @@ public class DropTarget
*/ */
public void setComponent (Component c) public void setComponent (Component c)
{ {
component = c;
} }
/** /**
...@@ -145,7 +170,7 @@ public class DropTarget ...@@ -145,7 +170,7 @@ public class DropTarget
*/ */
public Component getComponent () public Component getComponent ()
{ {
return null; return component;
} }
/** /**
...@@ -153,6 +178,7 @@ public class DropTarget ...@@ -153,6 +178,7 @@ public class DropTarget
*/ */
public void setDefaultActions (int ops) public void setDefaultActions (int ops)
{ {
actions = ops;
} }
/** /**
...@@ -160,17 +186,17 @@ public class DropTarget ...@@ -160,17 +186,17 @@ public class DropTarget
*/ */
public int getDefaultActions () public int getDefaultActions ()
{ {
return 0; return actions;
} }
public void setActive(boolean isActive) public void setActive (boolean active)
{ {
this.isActive = isActive; this.active = active;
} }
public boolean isActive() public boolean isActive()
{ {
return this.isActive; return active;
} }
/** /**
...@@ -182,10 +208,16 @@ public class DropTarget ...@@ -182,10 +208,16 @@ public class DropTarget
public void addDropTargetListener (DropTargetListener dtl) public void addDropTargetListener (DropTargetListener dtl)
throws TooManyListenersException throws TooManyListenersException
{ {
if (dtl != null)
throw new TooManyListenersException ();
dropTargetListener = dtl;
} }
public void removeDropTargetListener(DropTargetListener dtl) public void removeDropTargetListener(DropTargetListener dtl)
{ {
// FIXME: Do we need to do something with dtl ?
dropTargetListener = null;
} }
public void dragEnter(DropTargetDragEvent dtde) public void dragEnter(DropTargetDragEvent dtde)
...@@ -210,11 +242,12 @@ public class DropTarget ...@@ -210,11 +242,12 @@ public class DropTarget
public FlavorMap getFlavorMap() public FlavorMap getFlavorMap()
{ {
return null; return flavorMap;
} }
public void setFlavorMap(FlavorMap fm) public void setFlavorMap(FlavorMap fm)
{ {
flavorMap = fm;
} }
public void addNotify(java.awt.peer.ComponentPeer peer) public void addNotify(java.awt.peer.ComponentPeer peer)
...@@ -227,18 +260,21 @@ public class DropTarget ...@@ -227,18 +260,21 @@ public class DropTarget
public DropTargetContext getDropTargetContext() public DropTargetContext getDropTargetContext()
{ {
return null; if (dropTargetContext == null)
dropTargetContext = createDropTargetContext ();
return dropTargetContext;
} }
protected DropTargetContext createDropTargetContext() protected DropTargetContext createDropTargetContext()
{ {
return null; return new DropTargetContext (this);
} }
protected DropTarget.DropTargetAutoScroller createDropTargetAutoScroller protected DropTarget.DropTargetAutoScroller createDropTargetAutoScroller
(Component c, Point p) (Component c, Point p)
{ {
return null; return new DropTarget.DropTargetAutoScroller (c, p);
} }
protected void initializeAutoscrolling(Point p) protected void initializeAutoscrolling(Point p)
......
...@@ -67,46 +67,49 @@ public class DropTargetContext implements Serializable ...@@ -67,46 +67,49 @@ public class DropTargetContext implements Serializable
public DataFlavor[] getTransferDataFlavors () public DataFlavor[] getTransferDataFlavors ()
{ {
// FIXME: implement this return transferable.getTransferDataFlavors ();
return null;
} }
public boolean isDataFlavorSupported (DataFlavor flavor) public boolean isDataFlavorSupported (DataFlavor flavor)
{ {
// FIXME: implement this return transferable.isDataFlavorSupported (flavor);
return false;
} }
public Object getTransferData (DataFlavor flavor) public Object getTransferData (DataFlavor flavor)
throws UnsupportedFlavorException, IOException throws UnsupportedFlavorException, IOException
{ {
// FIXME: implement this return transferable.getTransferData (flavor);
return null;
} }
} }
private DropTarget dropTarget;
private int targetActions; private int targetActions;
private java.awt.dnd.peer.DropTargetContextPeer dtcp;
// package private
DropTargetContext (DropTarget dropTarget)
{
this.dropTarget = dropTarget;
}
public DropTarget getDropTarget () public DropTarget getDropTarget ()
{ {
// FIXME: implement this return dropTarget;
return null;
} }
public Component getComponent () public Component getComponent ()
{ {
// FIXME: implement this return dropTarget.getComponent ();
return null;
} }
public void addNotify (java.awt.dnd.peer.DropTargetContextPeer dtcp) public void addNotify (java.awt.dnd.peer.DropTargetContextPeer dtcp)
{ {
// FIXME: implement this this.dtcp = dtcp;
} }
public void removeNotify () public void removeNotify ()
{ {
// FIXME: implement this this.dtcp = null;
} }
protected void setTargetActions (int actions) protected void setTargetActions (int actions)
...@@ -157,14 +160,12 @@ public class DropTargetContext implements Serializable ...@@ -157,14 +160,12 @@ public class DropTargetContext implements Serializable
protected List getCurrentDataFlavorsAsList () protected List getCurrentDataFlavorsAsList ()
{ {
// FIXME: implement this return Arrays.asList (getCurrentDataFlavors ());
return null;
} }
protected boolean isDataFlavorSupported (DataFlavor flavor) protected boolean isDataFlavorSupported (DataFlavor flavor)
{ {
// FIXME: implement this return getCurrentDataFlavorsAsList ().contains (flavor);
return false;
} }
/** /**
......
...@@ -84,12 +84,14 @@ public abstract class MouseDragGestureRecognizer ...@@ -84,12 +84,14 @@ public abstract class MouseDragGestureRecognizer
protected void registerListeners () protected void registerListeners ()
{ {
// FIXME: implement this component.addMouseListener (this);
component.addMouseMotionListener (this);
} }
protected void unregisterListeners () protected void unregisterListeners ()
{ {
// FIXME: implement this component.removeMouseListener (this);
component.removeMouseMotionListener (this);
} }
public void mouseClicked (MouseEvent e) public void mouseClicked (MouseEvent e)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment