/// <summary>
        /// Initializes the TreeView in the control with the contents of the passed Package. Contents are sorted and expanded by default.
        /// </summary>
        /// <param name="fileName">File path to the package.</param>
        /// <param name="package">Package object.</param>
        internal void InitializeTreeViewFromPackage(string fileName, TreeViewPackageTag package)
        {
            mainListView.Tag = package;

            var control = mainTreeView;

            control.BeginUpdate();
            control.PathSeparator = Package.DirectorySeparatorChar.ToString();
            control.Name          = "treeViewVpk";
            control.Tag           = package; //so we can access it later
            control.Dock          = DockStyle.Fill;
            control.ImageList     = imageList;
            control.ShowRootLines = false;

            control.GenerateIconList(package.Package.Entries.Keys.ToList());

            var name = Path.GetFileName(fileName);
            var root = control.Nodes.Add("root", name, "vpk", "vpk");

            root.Tag = new TreeViewFolder(package.Package.Entries.Count);
            root.Expand();

            var vpkName = Path.GetFileName(package.Package.FileName);

            foreach (var fileType in package.Package.Entries)
            {
                foreach (var file in fileType.Value)
                {
                    control.AddFileNode(root, file, vpkName);
                }
            }

            control.TreeViewNodeSorter = new TreeViewFileSorter();
            control.EndUpdate();
        }
Esempio n. 2
0
        /// <summary>
        /// Initializes the TreeView in the control with the contents of the passed Package. Contents are sorted and expanded by default.
        /// </summary>
        /// <param name="package">Package object.</param>
        internal void InitializeTreeViewFromPackage(TreeViewPackageTag package)
        {
            mainListView.Tag = package;

            var control = mainTreeView;

            control.BeginUpdate();
            control.TreeViewNodeSorter = new TreeViewFileSorter();
            control.PathSeparator      = Package.DirectorySeparatorChar.ToString();
            control.Name      = "treeViewVpk";
            control.Tag       = package; //so we can access it later
            control.Dock      = DockStyle.Fill;
            control.ImageList = imageList;

            control.GenerateIconList(package.Package.Entries.Keys.ToList());

            foreach (var fileType in package.Package.Entries)
            {
                foreach (var file in fileType.Value)
                {
                    control.AddFileNode(file);
                }
            }

            control.EndUpdate();
        }
Esempio n. 3
0
        /// <summary>
        /// Initializes the TreeView in the control with the contents of the passed Package. Contents are sorted and expanded by default.
        /// </summary>
        /// <param name="fileName">File path to the package.</param>
        /// <param name="package">Package object.</param>
        internal void InitializeTreeViewFromPackage(string fileName, TreeViewPackageTag package)
        {
            mainListView.Tag = package;

            var control = mainTreeView;

            control.BeginUpdate();
            control.TreeViewNodeSorter = new TreeViewFileSorter();
            control.PathSeparator      = Package.DirectorySeparatorChar.ToString();
            control.Name          = "treeViewVpk";
            control.Tag           = package; //so we can access it later
            control.Dock          = DockStyle.Fill;
            control.ImageList     = imageList;
            control.ShowRootLines = false;

            // TODO: Disabled for now
            // When opening a map or model the tooltip remains visible without a way to remove it
            //control.ShowNodeToolTips = true;

            control.GenerateIconList(package.Package.Entries.Keys.ToList());

            var name = Path.GetFileName(fileName);
            var root = control.Nodes.Add("root", name, @"vpk", @"vpk");

            root.Tag = new TreeViewFolder(name, package.Package.Entries.Count);
            root.Expand();

            var vpkName = Path.GetFileName(package.Package.FileName);

            foreach (var fileType in package.Package.Entries)
            {
                foreach (var file in fileType.Value)
                {
                    control.AddFileNode(root, file, vpkName);
                }
            }

            control.EndUpdate();
        }