BExplorer.Shell.ShellView.Drag_SetEffect C# (CSharp) Method

Drag_SetEffect() static private method

static private Drag_SetEffect ( System.Windows.Forms e ) : void
e System.Windows.Forms
return void
    internal static void Drag_SetEffect(F.DragEventArgs e) {
      if ((e.KeyState & (8 + 32)) == (8 + 32) && (e.AllowedEffect & F.DragDropEffects.Link) == F.DragDropEffects.Link)
        e.Effect = F.DragDropEffects.Link;  // Link drag-and-drop effect.// KeyState 8 + 32 = CTL + ALT
      else if ((e.KeyState & 32) == 32 && (e.AllowedEffect & F.DragDropEffects.Link) == F.DragDropEffects.Link)
        e.Effect = F.DragDropEffects.Link;  // ALT KeyState for link.
      else if ((e.KeyState & 4) == 4 && (e.AllowedEffect & F.DragDropEffects.Move) == F.DragDropEffects.Move)
        e.Effect = F.DragDropEffects.Move;  // SHIFT KeyState for move
      else if ((e.KeyState & 8) == 8 && (e.AllowedEffect & F.DragDropEffects.Copy) == F.DragDropEffects.Copy)
        e.Effect = F.DragDropEffects.Copy;  // CTL KeyState for copy.
      else if ((e.AllowedEffect & F.DragDropEffects.Move) == F.DragDropEffects.Move)
        e.Effect = F.DragDropEffects.Move;  // By default, the drop action should be move, if allowed.
      else
        e.Effect = F.DragDropEffects.Copy;
    }
ShellView