Exemple #1
0
 private void TreeView1_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
 {
     if (!(TreeView1.SelectedNode.GetNodeCount(true) > 0))
     {
         TreeView1.DoDragDrop(TreeView1.SelectedNode.Text, DragDropEffects.Copy | DragDropEffects.Move);
     }
 }
Exemple #2
0
        private void tv1_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            //Primary (internal) data type
            ArrayList toDrag = new ArrayList();
            CShItem   csi    = ((TreeNode)e.Item).Tag as CShItem;

            toDrag.Add(csi);
            //also need Shell IDList Array
            System.IO.MemoryStream MS;
            MS = CProcDataObject.MakeShellIDArray(toDrag);
            //Fairly universal data type (must be an array)
            string[] strD = new string[1];
            strD[0] = csi.Path;
            //Build data to drag
            DataObject dataObj = new DataObject();

            dataObj.SetData(toDrag);
            if (MS != null)
            {
                dataObj.SetData("Shell IDList Array", true, MS);
            }
            dataObj.SetData("FileDrop", true, strD);
            //Do drag, allowing Copy and Move
            DragDropEffects ddeff;

            ddeff = tv1.DoDragDrop(dataObj, DragDropEffects.Copy | DragDropEffects.Move);
            //the following line commented out, since we can't depend on ddeff
            //If ddeff = DragDropEffects.None Then Exit Sub 'nothing happened
            RefreshNode(FindAncestorNode(csi));
        }
Exemple #3
0
        private void tCat_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
        {
            tCat.SelectedNode = tCat.GetNodeAt(e.X, e.Y);

            if (tCat.SelectedNode == null)
            {
                return;
            }

            string cat  = null;
            string sub  = null;
            string data = null;

            if (tCat.SelectedNode.Parent != null)
            {
                sub  = tCat.SelectedNode.Text;
                cat  = tCat.SelectedNode.Parent.Text;
                data = cat + "|" + sub;
            }
            else
            {
                cat  = tCat.SelectedNode.Text;
                data = cat;
            }

            tCat.DoDragDrop(data, DragDropEffects.Copy);
            tCat.Focus();
        }
Exemple #4
0
        private void treeSchema_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            TreeNode node = (TreeNode)e.Item;

            if (node != null)
            {
                treeSchema.DoDragDrop(node.Text, DragDropEffects.Copy | DragDropEffects.Move);
            }
        }
        private void TreeMouseMove(object sender, MouseEventArgs e)
        {
            const int diff = 10;

            if (_dragNode != null && !_isDragging && ((Math.Abs(_lastLocation.X - e.Location.X) >= diff) || (Math.Abs(_lastLocation.Y - e.Location.Y) >= diff)))
            {
                _isDragging = true;
                _tree.DoDragDrop(_dragNode.Tag, DragDropEffects.Copy);
                _dragNode = null;
            }
        }
Exemple #6
0
        private void treeView1_ItemDrag(object sender, ItemDragEventArgs e)
        {
            var node      = (TreeNode)e.Item;
            var hierarchy = GetHierarchy(node);

            if (hierarchy.Count == 1)
            {
                return;
            }

            _tree.DoDragDrop(e.Item, DragDropEffects.Move);
        }
Exemple #7
0
        private void contactList_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            TreeNode node = e.Item as TreeNode;

            if (node != null)
            {
                Contact contact = node.Tag as Contact;
                if (contact != null)
                {
                    draggingContact   = contact;
                    draggingFromGroup = node.Parent.Tag as ContactGroup;
                    contactList.DoDragDrop("", DragDropEffects.Copy | DragDropEffects.Move);
                }
            }
        }
Exemple #8
0
        private void tImg_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
        {
            if (e.Button != MouseButtons.Left || tImg.SelectedNode == null)
            {
                return;
            }

            int dx = Math.Abs(e.X - m_DragStart.X);
            int dy = Math.Abs(e.Y - m_DragStart.Y);

            if (dx > 5 || dy > 5)
            {
                tImg.DoDragDrop(tImg.SelectedNode.Tag as ImageInfo, DragDropEffects.Move);
            }
        }
Exemple #9
0
        /// <summary>
        /// Mouse move, if away from the start dragging point, do drag and drop
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void tDeco_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
        {
            if (e.Button == MouseButtons.None)
            {
                return;
            }

            if (Math.Abs(e.X - m_DragPoint.X) > 5 || Math.Abs(e.Y - m_DragPoint.Y) > 5)
            {
                tDeco.SelectedNode = tDeco.GetNodeAt(m_DragPoint);

                if (SelectedDeco != null)
                {
                    tDeco.DoDragDrop(SelectedDeco, DragDropEffects.Copy);
                }
                m_DragPoint = Point.Empty;
            }
        }
Exemple #10
0
 private void treeView1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
 {
     if ((e.Button & MouseButtons.Left) == MouseButtons.Left && bMouseDown)
     {
         bMouseDown = false;
         //start drag group for re-grouping
         System.Drawing.Point pt = new System.Drawing.Point(e.X, e.Y);
         TableNode            nd = (TableNode)treeView1.GetNodeAt(pt);
         if (nd != null)
         {
             treeView1.SelectedNode = nd;
             dragData         = new clsDragTableData();
             dragData.objNode = nd;
             System.Windows.Forms.DragDropEffects ret = treeView1.DoDragDrop(dragData, System.Windows.Forms.DragDropEffects.All);
             if (ret == System.Windows.Forms.DragDropEffects.Move)
             {
             }
         }
     }
 }
Exemple #11
0
        /// <summary>
        /// This method handles the <see cref="TreeView.ItemDrag"/> event for a <see cref="TreeViewControl"/>.
        /// </summary>
        /// <param name="treeView">The <see cref="TreeView"/> of the <see cref="TreeViewControl"/>.</param>
        /// <param name="e">The arguments of the <see cref="TreeView.ItemDrag"/> event.</param>
        /// <param name="getTreeNodeInfoForData">A function for obtaining the <see cref="TreeNodeInfo"/> object corresponding to a provided data object.</param>
        public void HandleItemDrag(FormsTreeView treeView, ItemDragEventArgs e, Func <object, TreeNodeInfo> getTreeNodeInfoForData)
        {
            var draggedNode = (TreeNode)e.Item;

            treeView.SelectedNode = draggedNode;
            TreeNodeInfo treeNodeInfo = getTreeNodeInfoForData(draggedNode.Tag);
            object       parentTag    = draggedNode.Parent?.Tag;

            if (treeNodeInfo.CanDrag == null || !treeNodeInfo.CanDrag(draggedNode.Tag, parentTag))
            {
                return;
            }

            // Provide the drag drop operation with a data object containing the dragged tree node
            var dataObject = new DataObject();

            dataObject.SetData(typeof(TreeNode), draggedNode);

            treeView.DoDragDrop(dataObject, DragDropEffects.Move);
        }
Exemple #12
0
        //Tree view drapdrop
        private void treeView1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
        {
            if (((e.Button & MouseButtons.Left) == MouseButtons.Left) && !IsDragDroping)
            {
                TreeNode treeNode = treeView1.SelectedNode;
                if (treeNode == null)
                {
                    return;
                }

                AIONode    node  = (AIONode)treeNode.Tag;
                AIONode [] nodes = new AIONode[] { node };

                IsDragDroping = true;
                //ddType = DragDropType.TREE;

                previousSelected = treeView1.SelectedNode;

                //Copy or Move
                treeView1.DoDragDrop(nodes, DragDropEffects.Copy | DragDropEffects.Move);
            }
        }
        private void NodesTV_MouseDown(object sender, MouseEventArgs e)
        {
            try
            {
                // selects the item that was right clicked on.
                TreeNode clickedNode = NodesTV.SelectedNode = NodesTV.GetNodeAt(e.X, e.Y);

                // no item clicked on - do nothing.
                if (clickedNode == null)
                {
                    return;
                }

                // start drag operation.
                if (e.Button == MouseButtons.Left)
                {
                    if (m_enableDragging)
                    {
                        object data = GetDataToDrag(clickedNode);

                        if (data != null)
                        {
                            NodesTV.DoDragDrop(data, DragDropEffects.Copy);
                        }
                    }

                    return;
                }

                // disable everything.
                if (NodesTV.ContextMenuStrip != null)
                {
                    foreach (ToolStripItem item in NodesTV.ContextMenuStrip.Items)
                    {
                        ToolStripMenuItem menuItem = item as ToolStripMenuItem;

                        if (menuItem == null)
                        {
                            continue;
                        }

                        menuItem.Enabled = false;

                        if (menuItem.DropDown != null)
                        {
                            foreach (ToolStripItem subItem in menuItem.DropDown.Items)
                            {
                                ToolStripMenuItem subMenuItem = subItem as ToolStripMenuItem;

                                if (subMenuItem != null)
                                {
                                    subMenuItem.Enabled = false;
                                }
                            }
                        }
                    }
                }

                // enable menu items according to context.
                if (e.Button == MouseButtons.Right)
                {
                    EnableMenuItems(clickedNode);
                }
            }
            catch (Exception exception)
            {
                GuiUtils.HandleException(this.Text, MethodBase.GetCurrentMethod(), exception);
            }
        }
 private void treeView1_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
 {
     // Start drag and drop operation
     treeView1.DoDragDrop(e.Item, DragDropEffects.Move);
 }