protected void OnMouseMove(MouseMoveEvent e)
 {
     if (this.m_Active && !this.m_Dragging && this.selectionContainer != null)
     {
         List <ISelectable> list = this.selectionContainer.selection.ToList <ISelectable>();
         if (list.Count > 0)
         {
             GraphElement graphElement = list[0] as GraphElement;
             bool         flag         = graphElement != null && graphElement.IsDroppable();
             if (flag && this.m_DragAndDropDelay.CanStartDrag(e.localMousePosition))
             {
                 DragAndDrop.PrepareStartDrag();
                 DragAndDrop.objectReferences = new UnityEngine.Object[0];
                 DragAndDrop.SetGenericData("DragSelection", list);
                 this.m_Dragging = true;
                 DragAndDrop.StartDrag("");
                 DragAndDrop.visualMode = ((!e.ctrlKey) ? DragAndDropVisualMode.Move : DragAndDropVisualMode.Copy);
             }
             e.StopPropagation();
         }
     }
 }