From what I can see the Tree widget is 'all or nothing' when it comes to drag and drop, i.e. you specify a dndController at the Tree level, when specified, the Tree has dnd capabilities.
Is it possible/planned to allow different dnd behaviours at the node level?
To explain:
I specify a label attr on my tree to create a single root node. Because this is a node that has no data.store backing I want to create this node as a dndTarget rather then a dndSource (to disallow dragging of the root, but allow dropping onto it). However, since the dndController is a Tree property, every node is created with default dnd attributes of which the dndController.isSource defaults to true.
As a second best solution I check the drag node's 'root' property in checkAcceptance and maintain a reference to the dragged node (to prevent dropping of the root node onto other nodes) by subscribing to the dnd/start:
source.dragNode = dijit.getEnclosingWidget(nodes[0]);
});
and check the dragNode's 'root' property in the checkItemAcceptance handler.
If specifying dnd behaviour at the node level is possible, then pointers would be appreciated, including writing my own dndController..
