Dropping a node to another tree doesn't work (which is fine IMHO), the tree's member "Dragged" holds the information about the node to be dropped, and for the second tree it's empty so the tree can't insert anything.
I see what you mean with inserting a node at a certain position, but at the moment I just can't find a good way to show to the user when a node is inserted after the hovered node instead of added as a child. In some apps I know it shows the node completely highlighted when the dropped node as added as a child, and a line blow or above if it's inserted there.
I think the idea of changing the "setDraggingAllowed" to a bitfield is a good idea. I have now defined an enum "EGUI_TREE_DROP_FLAGS" which has bitflags (0 == EGTDF_CANNOT_DROP, 1 == EGTDF_ADD_AS_CHILD, 2 == EGTDF_ADD_AFTER, 4 == EGTDF_ADD_BEFORE). The method then gets a u32 parameter built from these values.
I am trying to get something done, but today I can't really think straight forward
Btw: in my editor I always add the root scene node as child (which cannot be moved), so it's possible to get a node up there



