Ejemplo n.º 1
0
 internal override void Add(FileTreeEntry e)
 {
     e.Parent = this;
     if (e.IsDirectory)
     {
         m_Folders.Add(e as FileTreeFolder);
     }
     else
     {
         m_Files.Add(e);
     }
 }
Ejemplo n.º 2
0
        private FileTreeEntry GetEntry(Dictionary <Entry, FileTreeEntry> mapping, Entry x)
        {
            if (x == null)
            {
                return(Root);
            }
            FileTreeEntry parentEntry;

            if (mapping.TryGetValue(x, out parentEntry))
            {
                return(parentEntry);
            }
            FileTreeEntry fte = x.IsDirectory ? new FileTreeFolder(x) : new FileTreeEntry(x);

            mapping.Add(x, fte);
            GetEntry(mapping, x.Parent).Add(fte);
            return(fte);
        }
Ejemplo n.º 3
0
        private void BuildTree()
        {
            Root = new FileTreeFolder();
            Dictionary <Entry, FileTreeEntry> mapping = new Dictionary <Entry, FileTreeEntry>();
            int files = 0;

            foreach (var x in Entries)
            {
                var fte = GetEntry(mapping, x);
                if (!fte.IsDirectory)
                {
                    files++;
                }
            }
            foreach (var x in mapping)
            {
                x.Value.Initialize();
            }
            Printer.PrintDiagnostics("Current working directory has {0} file{1} in {2} director{3}.", files, files == 1 ? "" : "s", Entries.Count - files, (Entries.Count - files) == 1 ? "y" : "ies");
        }
Ejemplo n.º 4
0
 internal virtual void Add(FileTreeEntry e)
 {
     throw new NotImplementedException();
 }