Added callback in DragSource so that the source can reject the target

before the target even gets a chance to ask if the drop is ok with it.


git-svn-id: https://samskivert.googlecode.com/svn/trunk@1134 6335cc39-0255-0410-8fd6-9bcaacd3b74c
This commit is contained in:
ray
2003-05-20 17:35:51 +00:00
parent 8aa1d804fe
commit f3327b480b
2 changed files with 9 additions and 2 deletions
@@ -1,5 +1,5 @@
// //
// $Id: DnDManager.java,v 1.18 2003/05/15 22:02:11 mdb Exp $ // $Id: DnDManager.java,v 1.19 2003/05/20 17:35:51 ray Exp $
package com.samskivert.swing.dnd; package com.samskivert.swing.dnd;
@@ -228,6 +228,7 @@ public class DnDManager
target = (comp == _sourceComp) ? null target = (comp == _sourceComp) ? null
: (DropTarget) _droppers.get(comp); : (DropTarget) _droppers.get(comp);
if ((target != null) && comp.isEnabled() && if ((target != null) && comp.isEnabled() &&
_source.checkDrop(target) &&
target.checkDrop(_source, _data[0])) { target.checkDrop(_source, _data[0])) {
return target; return target;
} }
@@ -1,5 +1,5 @@
// //
// $Id: DragSource.java,v 1.1 2002/08/20 02:49:19 ray Exp $ // $Id: DragSource.java,v 1.2 2003/05/20 17:35:51 ray Exp $
package com.samskivert.swing.dnd; package com.samskivert.swing.dnd;
@@ -24,6 +24,12 @@ public interface DragSource
*/ */
public boolean startDrag (Cursor[] cursors, Object[] data); public boolean startDrag (Cursor[] cursors, Object[] data);
/**
* Is the drop target an acceptable one?
* @param a potential DropTarget
*/
public boolean checkDrop (DropTarget target);
/** /**
* A callback to let the source know that the drop completed successfully. * A callback to let the source know that the drop completed successfully.
*/ */