public static IList <NexonArchiveFileEntry> GetFilesRecursive(TreeNode node, IList <NexonArchiveFileEntry> files) { if (node == null) { throw new ArgumentNullException("node"); } if (files == null) { throw new ArgumentNullException("files"); } if (node.Tag is IList <NexonArchiveFileEntry> directoryFiles) { foreach (NexonArchiveFileEntry file in directoryFiles) { files.Add(file); } } foreach (object obj in node.Nodes) { TreeNode childNode = (TreeNode)obj; FolderTreeView.GetFilesRecursive(childNode, files); } return(files); }
private void Extract_Click(object sender, EventArgs e) { if (SelectedNode != null) { List <NexonArchiveFileEntry> file = new List <NexonArchiveFileEntry>(); FolderTreeView.GetFilesRecursive(base.SelectedNode, file); OnExtractFolder(new FilesEventArgs(FolderTreeView.GetFullPath(base.SelectedNode), file)); } }
private void VerifyStrip_Click(object sender, EventArgs e) { if (Nar != null && FolderTree.TopNode != null) { List <NexonArchiveFileEntry> files = new List <NexonArchiveFileEntry>(); FolderTreeView.GetFilesRecursive(FolderTree.TopNode, files); VerifyFiles(this, new FilesEventArgs(FolderTreeView.GetFullPath(FolderTree.TopNode), files)); } }