internal void InsertNode([NotNull] string path, [NotNull] FileSystemNode node) { var parts = IoHelpers.SplitPath(path); if (parts.Length != 2) { return; } var parentNode = GetOrCreateChild(parts[0]); node.name = parts[1]; node.parent = parentNode; parentNode.children.TryAdd(parts[1], node); var t = parentNode; while (t != null) { t.UpdateCounters(node.Size, node.CountDirectories, CountFiles); t = t.parent; } }
private void OnCollectionChanged(NotifyCollectionChangedAction action, FileSystemNode node = null) { CollectionChanged?.Invoke(this, new NotifyCollectionChangedEventArgs(action, node)); }