コード例 #1
0
        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);
        }
コード例 #2
0
 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));
     }
 }
コード例 #3
0
 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));
     }
 }