diff options
author | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-03-02 14:24:48 +0000 |
---|---|---|
committer | mkoch <mkoch@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-03-02 14:24:48 +0000 |
commit | 3bf632b2e03981d132f36b7837dcef152095a700 (patch) | |
tree | 43e0188013ec61445b1395a9275af27bbb9149b4 /libjava/java/awt/dnd/DragSourceContext.java | |
parent | 6f60f11885ab15018379c953d41f01cebcefa7e8 (diff) | |
download | ppe42-gcc-3bf632b2e03981d132f36b7837dcef152095a700.tar.gz ppe42-gcc-3bf632b2e03981d132f36b7837dcef152095a700.zip |
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@63665 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/java/awt/dnd/DragSourceContext.java')
-rw-r--r-- | libjava/java/awt/dnd/DragSourceContext.java | 81 |
1 files changed, 69 insertions, 12 deletions
diff --git a/libjava/java/awt/dnd/DragSourceContext.java b/libjava/java/awt/dnd/DragSourceContext.java index 45191d24365..1760cd02065 100644 --- a/libjava/java/awt/dnd/DragSourceContext.java +++ b/libjava/java/awt/dnd/DragSourceContext.java @@ -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) |