Issue 348: Add ability to set drag and drop hit modes.
Status:  Done
Owner: ----
Closed:  Aug 2012
Reported by xavie...@gmail.com, Aug 16, 2012
What new or enhanced feature are you proposing?
Allow setting of drag and drop hit modes.

What goal would this enhancement help you achieve?
I need to turn off the ability for a user to drag a node before or after another node. It is not needed in my use case, and is causing users heartburn when dragging and dropping nodes.
Aug 16, 2012
Project Member #1 moo...@wwwendt.de
That is already possible. See this example:

http://wwwendt.de/tech/dynatree/doc/sample-dnd.html#

    dnd: {
      preventVoidMoves: true, // Prevent dropping nodes 'before self', etc.
      onDragStart: function(node) {
        /** This function MUST be defined to enable dragging for the tree.
         *  Return false to cancel dragging of node.
         */
        return true;
      },
      onDragEnter: function(node, sourceNode) {
        /** sourceNode may be null for non-dynatree droppables.
         *  Return false to disallow dropping on node. In this case
         *  onDragOver and onDragLeave are not called.
         *  Return 'over', 'before, or 'after' to force a hitMode.
         *  Return ['before', 'after'] to restrict available hitModes.
         *  Any other return value will calc the hitMode from the cursor position.
         */
        // Prevent dropping a parent below another parent (only sort
        // nodes under the same parent)
        if(node.parent !== sourceNode.parent){
          return false;
        }
        // Don't allow dropping *over* a node (would create a child)
        return ["before", "after"];
      },
  
Status: Done
Aug 20, 2012
#2 xavie...@gmail.com
Thanks, thats exactly what I needed. Next time I'll RTFM.
Jan 26, 2013
Project Member #3 moo...@wwwendt.de
(No comment was entered for this change.)
Labels: Milestone-Release0.0