Пример #1
0
        // populate the Import Functions tab given the list of Imports
        private void PopulateImports(List <ImportFunctionObject> imports)
        {
            treeViewImports.Nodes.Clear();

            if (imports.Count == 0)
            {
                treeViewImports.Hide();
                labelNoImports.Text = "No Imports";
                labelNoImports.Show();
            }
            else
            {
                treeViewImports.Show();
                labelNoImports.Hide();

                Dictionary <string, List <ImportFunctionObject> > ImportsDependecyMap = new Dictionary <string, List <ImportFunctionObject> >();

                foreach (ImportFunctionObject import in imports)
                {
                    String nameOfDependecy = import.Dependency;
                    List <ImportFunctionObject> ImportsList;
                    if (ImportsDependecyMap.ContainsKey(nameOfDependecy))
                    {
                        ImportsList = ImportsDependecyMap[nameOfDependecy];
                    }
                    else
                    {
                        ImportsList = new List <ImportFunctionObject>();
                        ImportsDependecyMap[nameOfDependecy] = ImportsList;
                    }
                    ImportsList.Add(import);
                }

                foreach (string Dependecy in ImportsDependecyMap.Keys)
                {
                    TreeNode treeNode = treeViewImports.Nodes.Add(Dependecy);
                    List <ImportFunctionObject> ImportsList = ImportsDependecyMap[Dependecy];

                    foreach (ImportFunctionObject import in ImportsList)
                    {
                        TreeNode ChildNode = treeNode.Nodes.Add(import.Function);
                        ChildNode.Tag = import;
                    }
                }

                /*    foreach (ImportFunctionObject import in imports)
                 * {
                 * //  string[] row = { import.function, import.baseAddress.ToString() };
                 *  TreeNode treeNode = treeViewImports.Nodes.Add(import.function);
                 *  treeNode.Tag = import;
                 *  treeNode.Nodes.Add(import.dependency);
                 * }
                 */
            }
        }
Пример #2
0
        public void PopulateImports(List <ImportFunctionObject> imports)
        {
            treeViewImports.Items.Clear();
            if (imports.Count == 0)
            {
                treeViewImports.Visibility = Visibility.Hidden;
                // labelNoImports.Text = "No Imports";
                // labelNoImports.Show();
            }
            else
            {
                treeViewImports.Visibility = Visibility.Visible;
                // labelNoImports.Hide();

                Dictionary <string, List <ImportFunctionObject> > ImportsDependecyMap = new Dictionary <string, List <ImportFunctionObject> >();

                foreach (ImportFunctionObject import in imports)
                {
                    String nameOfDependecy = import.Dependency;
                    List <ImportFunctionObject> ImportsList;
                    if (ImportsDependecyMap.ContainsKey(nameOfDependecy))
                    {
                        ImportsList = ImportsDependecyMap[nameOfDependecy];
                    }
                    else
                    {
                        ImportsList = new List <ImportFunctionObject>();
                        ImportsDependecyMap[nameOfDependecy] = ImportsList;
                    }
                    ImportsList.Add(import);
                }

                foreach (string Dependecy in ImportsDependecyMap.Keys)
                {
                    TreeViewItem treeViewItem = CreateImportsTreeLibrary(Dependecy);
                    treeViewImports.Items.Add(treeViewItem);
                    List <ImportFunctionObject> ImportsList = ImportsDependecyMap[Dependecy];
                    foreach (ImportFunctionObject import in ImportsList)
                    {
                        TreeViewItem childTreeViewItem = CreateImportsTreeFunction(import.Function);
                        treeViewItem.Items.Add(childTreeViewItem);
                        childTreeViewItem.Tag = import;
                    }
                }
            }
        }