Package com.smartgwt.client.docs

# Interface TreeGridDrop

public interface TreeGridDrop

### TreeGrid drag and drop

TreeGrids support drag and drop interactions to reorder or reparent nodes within the data tree, or to add new data to the tree.

As with listGrid, drag and drop capabilities may be enabled via properties such as `TreeGrid.canAcceptDroppedRecords`, `TreeGrid.canReorderRecords` and `TreeGrid.canDragRecordsOut`.

For an overview of how the data is added or moved when a drop event occurs see `TreeGrid.folderDrop()`.
For details of how data transfer to another DataBoundComponent is handled, see `TreeGrid.transferDragData()` and `ListGrid.getDragData()`.

The `TreeGrid.showDropIcons` and `ListGrid.showDropLines` enable customization of the grid appearance during drag interactions.

By default users may drop data after the last node in the grid. The `TreeGrid.canDropSiblingAfterLastNode` feature allows data to be added as either a sibling of the last node, or to the tree's root node. The `TreeGrid.showDropEndSpace` causes a spacer to be written out after the last node during drag, so there is space available to accept the drop even if the data fills the TreeGrid viewport. To entirely disable this behavior, set `ListGrid.canDropInEmptyArea` to false

See Also:
  - `TreeGrid.willAcceptDrop()`
  - `FolderDropEvent`
  - `com.smartgwt.client.widgets.tree.TreeGrid#folderDrop`
  - `TreeGrid.transferNodes(com.smartgwt.client.widgets.tree.TreeNode[], com.smartgwt.client.widgets.tree.TreeNode, java.lang.Integer, com.smartgwt.client.widgets.Canvas, com.smartgwt.client.widgets.tree.TransferNodesCallback)`
  - `TreeGrid.getCanDragRecordsOut()`
  - `TreeGrid.getCanAcceptDroppedRecords()`
  - `TreeGrid.getCanReorderRecords()`
  - `TreeGrid.getCanDropOnLeaves()`
  - `TreeGrid.getCanReparentNodes()`
  - `ListGrid.getDragDataAction()`
  - `TreeGrid.getShowDropEndSpace()`