HeaderToTree() 공개 메소드

public HeaderToTree ( ) : TreeNode
리턴 System.Windows.Forms.TreeNode
예제 #1
0
        private void FaceFXRefresh(int n)
        {
            IEnumerable <string> expandedNodes = null;
            string topNodeName = null;

            if (FaceFX != null && n == FaceFX.export.Index)
            {
                List <TreeNode> allNodes = treeView2.Nodes.Cast <TreeNode>().ToList();
                //flatten tree of nodes into list.
                for (int j = 0; j < allNodes.Count(); j++)
                {
                    allNodes.AddRange(allNodes[j].Nodes.Cast <TreeNode>());
                }
                expandedNodes = allNodes.Where(x => x.IsExpanded).Select(x => x.Name);
                topNodeName   = treeView2.TopNode.Name;
            }
            IExportEntry exportEntry = pcc.Exports[n];

            FaceFX           = new ME3FaceFXAnimSet(pcc, exportEntry);
            hb1.ByteProvider = new DynamicByteProvider(exportEntry.Data);
            treeView1.Nodes.Clear();
            treeView1.Nodes.Add(FaceFX.HeaderToTree());
            nameAllNodes(treeView1.Nodes);
            treeView2.Nodes.Clear();
            treeView2.Nodes.Add(FaceFX.DataToTree());
            nameAllNodes(treeView2.Nodes);
            TreeNode[] nodes;
            if (expandedNodes != null)
            {
                foreach (string item in expandedNodes)
                {
                    nodes = treeView2.Nodes.Find(item, true);
                    if (nodes.Length > 0)
                    {
                        foreach (var node in nodes)
                        {
                            node.Expand();
                        }
                    }
                }
            }
            nodes = treeView2.Nodes.Find(topNodeName, true);
            if (nodes.Length > 0)
            {
                treeView2.TopNode = nodes[0];
            }
        }
        private void FaceFXRefresh(int n)
        {
            IEnumerable<string> expandedNodes = null;
            string topNodeName = null;
            if (FaceFX != null && n == FaceFX.export.Index)
            {
                List<TreeNode> allNodes = treeView2.Nodes.Cast<TreeNode>().ToList();
                //flatten tree of nodes into list.
                for (int j = 0; j < allNodes.Count(); j++)
                {
                    allNodes.AddRange(allNodes[j].Nodes.Cast<TreeNode>());
                }
                expandedNodes = allNodes.Where(x => x.IsExpanded).Select(x => x.Name);
                topNodeName = treeView2.TopNode.Name;

            }
            IExportEntry exportEntry = pcc.Exports[n];
            FaceFX = new ME3FaceFXAnimSet(pcc, exportEntry);
            hb1.ByteProvider = new DynamicByteProvider(exportEntry.Data);
            treeView1.Nodes.Clear();
            treeView1.Nodes.Add(FaceFX.HeaderToTree());
            nameAllNodes(treeView1.Nodes);
            treeView2.Nodes.Clear();
            treeView2.Nodes.Add(FaceFX.DataToTree());
            nameAllNodes(treeView2.Nodes);
            TreeNode[] nodes;
            if (expandedNodes != null)
            {
                foreach (string item in expandedNodes)
                {
                    nodes = treeView2.Nodes.Find(item, true);
                    if (nodes.Length > 0)
                    {
                        foreach (var node in nodes)
                        {
                            node.Expand();
                        }
                    }
                }
            }
            nodes = treeView2.Nodes.Find(topNodeName, true);
            if (nodes.Length > 0)
            {
                treeView2.TopNode = nodes[0];
            }
        }