BExplorer.Shell.ShellTreeViewEx.ShellTreeView_DragDrop C# (CSharp) Method

ShellTreeView_DragDrop() private method

private ShellTreeView_DragDrop ( object sender, DragEventArgs e ) : void
sender object
e System.Windows.Forms.DragEventArgs
return void
		private void ShellTreeView_DragDrop(object sender, DragEventArgs e) {
			var hittestInfo = this.ShellTreeView.HitTest(PointToClient(new Point(e.X, e.Y)));
			IListItemEx destination = null;
			if (hittestInfo.Node == null)
				e.Effect = DragDropEffects.None;
			else
				destination = hittestInfo.Node.Tag as IListItemEx;

			switch (e.Effect) {
				case DragDropEffects.Copy:
					//this.DoCopy(e.Data, destination);
					break;

				case DragDropEffects.Link:
					System.Windows.MessageBox.Show("link");
					break;

				case DragDropEffects.Move:
					this.DoMove(e.Data, destination);
					break;

				case DragDropEffects.All:
				case DragDropEffects.None:
				case DragDropEffects.Scroll:
					break;

				default:
					break;
			}

			var wp = new DataObject.Win32Point() { X = e.X, Y = e.Y };

			if (e.Data.GetDataPresent("DragImageBits"))
				DropTargetHelper.DropTarget.Create.Drop((System.Runtime.InteropServices.ComTypes.IDataObject)e.Data, ref wp, (int)e.Effect);
			else
				base.OnDragDrop(e);
		}