public long OpenDirectory(string name, int filterFlags, out IDirectory directoryInterface) { RomfsDir directory = _romFs.Directories.Find(x => x.Name == name); if (directory != null) { directoryInterface = new IDirectory(name, filterFlags, this); return(0); } directoryInterface = null; return(MakeError(ErrorModule.Fs, FsErr.PathDoesNotExist)); }
public long OpenDirectory(string Name, int FilterFlags, out IDirectory DirectoryInterface) { RomfsDir Directory = RomFs.Directories.Find(x => x.Name == Name); if (Directory != null) { DirectoryInterface = new IDirectory(Name, FilterFlags, this); return(0); } DirectoryInterface = null; return(MakeError(ErrorModule.Fs, FsErr.PathDoesNotExist)); }
// Thanks to Alex Barney for providing this code! public static void PopulateTreeView(TreeNodeCollection nodes, RomfsDir root) { RomfsFile fileNode = root.FirstFile; while (fileNode != null) { nodes.Add(fileNode.FullPath, fileNode.Name); fileNode = fileNode.NextSibling; } RomfsDir dirNode = root.FirstChild; while (dirNode != null) { TreeNode newNode = nodes.Add(dirNode.FullPath, dirNode.Name); PopulateTreeView(newNode.Nodes, dirNode); dirNode = dirNode.NextSibling; } }
public void FillTreeNodes(TreeNodeCollection nodes, RomfsDir romfsDir) { RomfsFile fileNode = romfsDir.FirstFile; while (fileNode != null) { var node = new FileNode(fileNode.FullPath, fileNode.Name); node.romfs = romfs; nodes.Add(node); fileNode = fileNode.NextSibling; } RomfsDir dirNode = romfsDir.FirstChild; while (dirNode != null) { TreeNode newNode = nodes.Add(dirNode.FullPath, dirNode.Name); FillTreeNodes(newNode.Nodes, dirNode); dirNode = dirNode.NextSibling; } }