/** Enables/disables dropping support. * @param state true means drops into view are allowed, * false forbids any drops into this view. */ public void setDropTarget (boolean state) { // create drop support if needed if (dropActive && (dropSupport == null)) dropSupport = new TreeViewDropSupport(this, tree, dropTargetPopupAllowed); // activate / deactivate support according to the state dropActive = state; if (dropSupport != null) { dropSupport.activate(dropActive); } }
/** User is starting to drag over us */ public void dragEnter (DropTargetDragEvent dtde) { checkStoredGlassPane (); // set a status and cursor of dnd action doDragOver (dtde); }
TreePath tp = getTreePath(dtde); if (tp == null) { dtde.rejectDrag(); removeDropLine (); return ; Node dropNode = getNodeForDrop (p); removeDropLine (); return ; if (indexCookie!=null) { if (pointAt==DragDropUtilities.NODE_UP) { lowerNodeIdx = indexCookie.indexOf (getNodeForDrop (p)); upperNodeIdx = lowerNodeIdx - 1; } else if (pointAt==DragDropUtilities.NODE_DOWN) { upperNodeIdx = indexCookie.indexOf (getNodeForDrop (p)); lowerNodeIdx = upperNodeIdx + 1; removeTimer (); Line2D line = new Double (nodeArea.x-SHIFT_LEFT, nodeArea.y+SHIFT_DOWN, endPointX, nodeArea.y+SHIFT_DOWN); convertBoundsAndSetDropLine (line); nodeArea.y+nodeArea.height+SHIFT_DOWN, endPointX, nodeArea.y+nodeArea.height+SHIFT_DOWN); convertBoundsAndSetDropLine (line);
stopDragging (); Node dropNode = getNodeForDrop (dtde.getLocation ()); Node [] dragNodes = ExplorerDnDManager.getDefault ().getDraggedNodes (); TreePath tp = tree.getPathForLocation (dtde.getLocation ().x, dtde.getLocation ().y); if (!canDrop (dropNode, dtde.getDropAction ())) { if (canReorder (dropNode, dragNodes)) { performReorder (dropNode, dragNodes, lowerNodeIdx, upperNodeIdx); dtde.acceptDrop (dtde.getDropAction ()); } else { if (canReorder (dropNode, dragNodes)) { final Node tempDropNode = dropNode; final int tmpUpper = upperNodeIdx; if (canReorder(dropNode, diffNodes)) { performReorder(dropNode, diffNodes, lowerNodeIdx, upperNodeIdx);
TreePath tp = getTreePath(dtde, dropAction); Node dropNode; if (canDrop(dropNode, dropAction, dtde.getTransferable())) { dropNode = getNodeForDrop(p); dropIndex = -1; dtde.rejectDrag(); removeDropLine(); lowerNodeIdx = indexCookie.indexOf(getNodeForDrop(p)); upperNodeIdx = lowerNodeIdx - 1; } else if (pointAt == DragDropUtilities.NODE_DOWN) { upperNodeIdx = indexCookie.indexOf(getNodeForDrop(p)); lowerNodeIdx = upperNodeIdx + 1; if( dropNode == getNodeForDrop(p) ) dropIndex = -1; removeTimer(); nodeArea.x - SHIFT_LEFT, nodeArea.y + SHIFT_DOWN, endPointX, nodeArea.y + SHIFT_DOWN ); convertBoundsAndSetDropLine(line); nodeArea.y + nodeArea.height + SHIFT_DOWN ); convertBoundsAndSetDropLine(line);
/** Activates or deactivates Drag support on asociated JTree * component * @param active true if the support should be active, false * otherwise */ public void activate(boolean active) { if (this.active == active) { return; } this.active = active; getDropTarget().setActive(active); }
if (!containsNumber(indexes, indexesLength, i)) { perm[i] = k++; if (!containsNumber(indexes, indexesLength, i)) { perm[i] = k++;
private boolean canReorderWhenMoving(Node folder, Node[] dragNodes) { if ((ExplorerDnDManager.getDefault().getNodeAllowedActions() & DnDConstants.ACTION_MOVE) == 0) { return false; } return canReorder( folder, dragNodes ); }
TreePath tp = getTreePath(dtde); if (tp == null) { dtde.rejectDrag(); removeDropLine (); return ; Node dropNode = getNodeForDrop (p); removeDropLine (); return ; if (indexCookie!=null) { if (pointAt==DragDropUtilities.NODE_UP) { lowerNodeIdx = indexCookie.indexOf (getNodeForDrop (p)); upperNodeIdx = lowerNodeIdx - 1; } else if (pointAt==DragDropUtilities.NODE_DOWN) { upperNodeIdx = indexCookie.indexOf (getNodeForDrop (p)); lowerNodeIdx = upperNodeIdx + 1; removeTimer (); Line2D line = new Double (nodeArea.x-SHIFT_LEFT, nodeArea.y+SHIFT_DOWN, endPointX, nodeArea.y+SHIFT_DOWN); convertBoundsAndSetDropLine (line); nodeArea.y+nodeArea.height+SHIFT_DOWN, endPointX, nodeArea.y+nodeArea.height+SHIFT_DOWN); convertBoundsAndSetDropLine (line);
stopDragging (); Node dropNode = getNodeForDrop (dtde.getLocation ()); Node [] dragNodes = ExplorerDnDManager.getDefault ().getDraggedNodes (); TreePath tp = tree.getPathForLocation (dtde.getLocation ().x, dtde.getLocation ().y); if (!canDrop (dropNode, dtde.getDropAction ())) { if (canReorder (dropNode, dragNodes)) { performReorder (dropNode, dragNodes, lowerNodeIdx, upperNodeIdx); dtde.acceptDrop (dtde.getDropAction ()); } else { if (canReorder (dropNode, dragNodes)) { final Node tempDropNode = dropNode; final int tmpUpper = upperNodeIdx; if (canReorder(dropNode, diffNodes)) { performReorder(dropNode, diffNodes, lowerNodeIdx, upperNodeIdx);
/** Activates or deactivates Drag support on asociated JTree * component * @param active true if the support should be active, false * otherwise */ public void activate (boolean active) { if (this.active == active) return; this.active = active; getDropTarget().setActive(active); }
for (int i = 0; i < perm.length; i++) { if (i <= uNode) { if (!containsNumber(indexes, indexesLength, i)) { perm[i] = k++; if (!containsNumber(indexes, indexesLength, i)) { perm[i] = k++;
boolean dropResult = true; try { stopDragging(); Node dropNode = getNodeForDrop(dtde.getLocation()); if (!canDrop(dropNode, dropAction, dtde.getTransferable())) { if( null != dragNodes && canReorderWhenMoving(dropNode, dragNodes)) { performReorder(dropNode, dragNodes, lowerNodeIdx, upperNodeIdx); } else { dropResult = false; if (canReorder(dropNode, dragNodes)) { final Node tempDropNode = dropNode; final int tmpUpper = upperNodeIdx;
/** User is starting to drag over us */ public void dragEnter (DropTargetDragEvent dtde) { checkStoredGlassPane (); // set a status and cursor of dnd action doDragOver (dtde); }
/** Enables/disables dropping support. * @param state true means drops into view are allowed, * false forbids any drops into this view. */ public void setDropTarget (boolean state) { // create drop support if needed if (dropActive && (dropSupport == null)) dropSupport = new TreeViewDropSupport(this, tree, dropTargetPopupAllowed); // activate / deactivate support according to the state dropActive = state; if (dropSupport != null) { dropSupport.activate(dropActive); } }
/** Activates or deactivates Drag support on asociated JTree * component * @param active true if the support should be active, false * otherwise */ public void activate (boolean active) { if (this.active == active) return; this.active = active; getDropTarget().setActive(active); }
for (int i = 0; i < perm.length; i++) { if (i <= uNode) { if (!containsNumber(indexes, indexesLength, i)) { perm[i] = k++; if (!containsNumber(indexes, indexesLength, i)) { perm[i] = k++;
/** User is starting to drag over us */ public void dragEnter(DropTargetDragEvent dtde) { checkStoredGlassPane(); dropIndex = -1; // set a status and cursor of dnd action doDragOver(dtde); }
/** Enables/disables dropping support. * @param state true means drops into view are allowed, * false forbids any drops into this view. */ public void setDropTarget(boolean state) { // create drop support if needed if (dropActive && (dropSupport == null)) { dropSupport = new TreeViewDropSupport(this, tree, dropTargetPopupAllowed); } // activate / deactivate support according to the state dropActive = state; if (dropSupport != null && !GraphicsEnvironment.isHeadless()) { dropSupport.activate(dropActive); } }
/** User drags over us */ public void dragOver(DropTargetDragEvent dtde) { // bugfix #34483; jdk1.4.1 on w2k could calls dragOver() before dragEnter() // (jkdbug fixed in 1.4.2) // this check make dragOver/Enter more robust checkStoredGlassPane(); // set a status and cursor of dnd action doDragOver(dtde); }