public virtual void OnDropDraggedElementsAtIndex(List <TreeViewItem> draggedRows, T parent, int insertIndex) { if (beforeDroppingDraggedItems != null) { beforeDroppingDraggedItems(draggedRows); } var draggedElements = new List <TreeElement> (); foreach (var x in draggedRows) { draggedElements.Add(((TreeViewItem <T>)x).data); } var selectedIDs = draggedElements.Select(x => x.id).ToArray(); m_TreeModel.MoveElements(parent, insertIndex, draggedElements); SetSelection(selectedIDs, TreeViewSelectionOptions.RevealAndFrame); }
public virtual void OnDropDraggedElementsAtIndex(List <TreeViewItem> draggedRows, T parent, int insertIndex) { if (e_BeforeDroppingDraggedItems != null) { e_BeforeDroppingDraggedItems(draggedRows); } var draggedElements = new List <BehaviorTreeNode>(); for (int i = 0; i < draggedRows.Count; ++i) { draggedElements.Add(((TreeViewItem <T>)draggedRows[i]).data); } var selectedIDs = draggedElements.Select(x => x.ID).ToArray(); TreeModel.MoveElements(parent, insertIndex, draggedElements); SetSelection(selectedIDs, TreeViewSelectionOptions.RevealAndFrame); }