Exemplo n.º 1
0
        private void treeFiles_AfterNodeDrop(object sender, TreeDragDropEventArgs e)
        {
            TagInfo      ti = (TagInfo)e.Node.Tag;
            OutputFolder oldParentFolder = Project.Instance.FindFolder(((TagInfo)e.OldParentNode.Tag).Id);
            OutputFolder newParentFolder = Project.Instance.FindFolder(((TagInfo)e.NewParentNode.Tag).Id);
            Node         prevNode        = e.Node.PrevNode;

            if (prevNode != null && ((TagInfo)prevNode.Tag).FileType == TagInfo.FileTypes.Folder)
            {
                // The user dropped just below a folder, so meant to add to that folder, so we must make the dragged node a child node, not a sibling.
                e.Node.PrevNode.Nodes.Add(e.Node);
                newParentFolder = Project.Instance.FindFolder(((TagInfo)prevNode.Tag).Id);
            }
            switch (ti.FileType)
            {
            case TagInfo.FileTypes.Folder:
                OutputFolder folder = Project.Instance.FindFolder(((TagInfo)e.Node.Tag).Id);
                oldParentFolder.Folders.Remove(folder);
                newParentFolder.Folders.Add(folder);
                break;

            case TagInfo.FileTypes.NormalFile:
            case TagInfo.FileTypes.ScriptFile:
                OutputFile normalFile = Project.Instance.FindFile(((TagInfo)e.Node.Tag).Id);
                oldParentFolder.RemoveFile(normalFile);
                newParentFolder.Files.Add(normalFile);
                break;

            default:
                throw new NotImplementedException("Not coded yet: " + ti.FileType);
            }
            Project.Instance.IsDirty = true;
        }
Exemplo n.º 2
0
 private void advTreeSel_AfterNodeDrop(object sender, TreeDragDropEventArgs e)
 {
     foreach (Node item in e.Nodes)
     {
         SearchItemV3_1 si = item.Tag as SearchItemV3_1;
         if (si != null)
         {
             m_viewModel.AddSelectedItem(si);
         }
     }
     InitTree(advTreeUnSel, m_viewModel.UnSelectedItems);
     InitTree(advTreeSel, m_viewModel.SelectedItems);
     labelSelectedCount.Text = "已经选择" + m_viewModel.SelectedItems.Count + "项";
 }
Exemplo n.º 3
0
 private void _decisionTree_BeforeNodeDrop(object sender, TreeDragDropEventArgs e)
 {
     if (e.NewParentNode != null)
     {
         if (e.NewParentNode.Tag is NaryItemContext context)
         {
             if (context.BooleanType == null)
             {
                 e.Cancel = true;
             }
             else
             {
                 if (typeof(UnaryRuleNode).IsAssignableFrom(context.BooleanType) &&
                     e.NewParentNode.HasChildNodes)
                 {
                     e.Cancel = true;
                 }
             }
         }
         else
         {
             e.Cancel = true;
         }
     }
     else
     {
         if (_decisionTree.Nodes.Count > 0)
         {
             e.Cancel = true;
         }
         else
         {
             _decisionTree.DisplayRootNode = e.Node;
         }
     }
 }
 private void advTree1_AfterNodeDrop(object sender, TreeDragDropEventArgs e)
 {
     CheckChanged();
 }
Exemplo n.º 5
0
 private void _diagrams_BeforeNodeDrop(object sender, TreeDragDropEventArgs e)
 {
     e.Cancel = e.NewParentNode != null;
 }
Exemplo n.º 6
0
 private void _decisionTree_AfterNodeDrop(object sender, TreeDragDropEventArgs e)
 {
     CompleteNode(e.Node);
 }