Exemplo n.º 1
0
        public TabPage Create(VrfGuiContext vrfGuiContext, byte[] input)
        {
            var tab     = new TabPage();
            var package = new SteamDatabase.ValvePak.Package();

            if (input != null)
            {
                package.SetFileName(vrfGuiContext.FileName);
                package.Read(new MemoryStream(input));
            }
            else
            {
                package.Read(vrfGuiContext.FileName);
            }

            // create a TreeView with search capabilities, register its events, and add it to the tab
            var treeViewWithSearch = new TreeViewWithSearchResults(ImageList);

            treeViewWithSearch.InitializeTreeViewFromPackage(vrfGuiContext.FileName, new TreeViewWithSearchResults.TreeViewPackageTag
            {
                Package          = package,
                ParentFileLoader = vrfGuiContext.FileLoader,
            });
            treeViewWithSearch.TreeNodeMouseDoubleClick += VPK_OpenFile;
            treeViewWithSearch.TreeNodeRightClick       += VPK_OnClick;
            treeViewWithSearch.ListViewItemDoubleClick  += VPK_OpenFile;
            treeViewWithSearch.ListViewItemRightClick   += VPK_OnClick;
            treeViewWithSearch.Disposed += VPK_Disposed;
            tab.Controls.Add(treeViewWithSearch);

            return(tab);
        }