コード例 #1
0
ファイル: FolderItem.cs プロジェクト: simon-wh/DieselToolbox
        public void AddFileEntry(FileEntry entry)
        {
            int[] path_parts = entry._path.UnHashedParts;
            if (path_parts != null && path_parts.Length > (this.folderLevel + 1))
            {
                string initial_folder = HashIndex.LookupString(path_parts[this.folderLevel]);
                if (!this._children.ContainsKey(initial_folder))
                {
                    FolderItem folder = new FolderItem(entry, this.folderLevel + 1)
                    {
                        Parent = this
                    };

                    folder.Path = "assets";
                    for (int i = 0; i <= this.folderLevel; i++)
                    {
                        System.IO.Path.Combine(folder.Path, HashIndex.LookupString(path_parts[i]));
                    }
                    folder.Name = initial_folder;
                    this._children.Add(initial_folder, folder);
                }
                else
                {
                    ((FolderItem)this._children[initial_folder]).AddFileEntry(entry);
                }
            }
            else
            {
                entry.Parent = this;
                this._children.Add(entry.Name, entry);
            }
        }