Beispiel #1
0
        private void ElementRenamedHandler(object source, RenamedEventArgs e)
        {
            if (!ChildrenInitialized)
            {
                return;
            }

            IFileSystemElement element = FileSystemFacade.Instance.GetElementFromPath(e.FullPath);

            IFileSystemElement oldElement;

            if (element.ElementType == FileSystemFacade.ElementType.Directory)
            {
                oldElement = new SFMDirectory(e.OldFullPath);
            }
            else
            {
                oldElement = new SFMFile(e.OldFullPath);
            }

            App.Current.Dispatcher.Invoke(() => RemoveChildFromNode(oldElement));
            App.Current.Dispatcher.Invoke(() => AddChildToNode(element));

            Console.WriteLine("File was renamed: " + e.FullPath);
        }
Beispiel #2
0
        public void PasteFromClipboardToDirectory(SFMDirectory targetDirectory)
        {
            string targetPath = targetDirectory.ElementPath;
            var    dataObject = Clipboard.GetDataObject();

            if (!dataObject.GetDataPresent(DataFormats.FileDrop))
            {
                return;
            }
            string[] sourcePathes = (string[])dataObject.GetData(DataFormats.FileDrop);

            var targetDirectoryCopy = new SFMDirectory(targetDirectory.ElementPath);

            Task.Run(() => {
                List <(string, string)> exeptionLogs = new List <(string, string)>();
                foreach (var path in sourcePathes)
                {
                    CopyPathToSource(path, targetDirectoryCopy, exeptionLogs);
                }
                ShowPastSummery(exeptionLogs);
            });
        }
Beispiel #3
0
 internal DynamicFileSystemTree(SFMDirectory root)
 {
     Root = new FileTreeNode(this, null, root);
 }
Beispiel #4
0
 public DynamicFileSystemTree CreateFileSystemTree(SFMDirectory rootDirectory)
 {
     return(new DynamicFileSystemTree(rootDirectory));
 }
Beispiel #5
0
 private void CopyPathToSource(string path, SFMDirectory targetDirectory, List <(string, string)> exeptionLogs)