Exemple #1
0
        private void btnOpenProject_Click(object sender, EventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();

            ofd.Filter = Properties.Resources.Vb6ProjectFileFilter;
            if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                FileInfo fileToParse = new FileInfo(ofd.FileName);

                IVbProjectReader parser = new Vb6ProjectReader();
                using (Stream stream = fileToParse.OpenRead())
                {
                    _project = parser.Read(fileToParse, stream);
                }

                Dictionary <string, IEnumerable <ElementBase> > map = new Dictionary <string, IEnumerable <ElementBase> >();
                map["REFERENCES"] = _project.References;
                map["MODULES"]    = _project.Modules;
                map["CLASSES"]    = _project.Classes;
                map["FORMS"]      = _project.Forms;
                map["OBJECTS"]    = _project.Objects;

                foreach (var mapItem in map)
                {
                    TreeNode node = trvProject.Nodes[0].Nodes[mapItem.Key];
                    node.Nodes.Clear();

                    foreach (var item in mapItem.Value.OrderBy(_ => _.Name))
                    {
                        TreeNode itemNode = new TreeNode();
                        if (!string.IsNullOrWhiteSpace(item.Name))
                        {
                            itemNode.Text = item.Name;
                        }
                        else
                        {
                            itemNode.Text = item.FileName;
                        }

                        itemNode.Tag = item;
                        ExtendNode(item, itemNode);
                        node.Nodes.Add(itemNode);
                    }
                }

                trvProject.Nodes[0].Nodes["MODULES"].Expand();
                trvProject.Nodes[0].Nodes["CLASSES"].Expand();
                trvProject.Nodes[0].Nodes["FORMS"].Expand();
            }
        }
Exemple #2
0
        private void btnOpenProject_Click(object sender, EventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();
            ofd.Filter = Properties.Resources.Vb6ProjectFileFilter;
            if (ofd.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                FileInfo fileToParse = new FileInfo(ofd.FileName);

                IVbProjectReader parser = new Vb6ProjectReader();
                using (Stream stream = fileToParse.OpenRead())
                {
                    _project = parser.Read(fileToParse, stream);
                }

                Dictionary<string, IEnumerable<ElementBase>> map = new Dictionary<string, IEnumerable<ElementBase>>();
                map["REFERENCES"] = _project.References;
                map["MODULES"] = _project.Modules;
                map["CLASSES"] = _project.Classes;
                map["FORMS"] = _project.Forms;
                map["OBJECTS"] = _project.Objects;

                foreach (var mapItem in map)
                {
                    TreeNode node = trvProject.Nodes[0].Nodes[mapItem.Key];
                    node.Nodes.Clear();

                    foreach (var item in mapItem.Value.OrderBy(_ => _.Name))
                    {
                        TreeNode itemNode = new TreeNode();
                        if (!string.IsNullOrWhiteSpace(item.Name))
                        {
                            itemNode.Text = item.Name;
                        }
                        else
                        {
                            itemNode.Text = item.FileName;
                        }

                        itemNode.Tag = item;
                        ExtendNode(item, itemNode);
                        node.Nodes.Add(itemNode);
                    }
                }

                trvProject.Nodes[0].Nodes["MODULES"].Expand();
                trvProject.Nodes[0].Nodes["CLASSES"].Expand();
                trvProject.Nodes[0].Nodes["FORMS"].Expand();
            }
        }