private void OnDeleted(object source, FileSystemEventArgs e) { FlatCopyApplicationContext.SetWorkIcon(); Console.WriteLine($"file deleted {e.FullPath}"); var counterPart = GetCounterFullPath(e.FullPath); Console.WriteLine($"del-> {counterPart}"); if (!IsDirectory(e.FullPath)) { try { File.Delete(counterPart); } catch (Exception) { } } else { var files = Directory.EnumerateFiles(e.FullPath, "*.*", SearchOption.AllDirectories); string pathPart; foreach (var file in files) { var tmp = file.Replace(e.FullPath, ""); pathPart = e.FullPath + tmp; pathPart = pathPart.Replace(sourceDir, ""); pathPart = pathPart.Replace(@"\", "."); var oldCounterFile = destinationDir + pathPart; File.Delete(oldCounterFile); } } FlatCopyApplicationContext.UnsetWorkicon(); }
private void OnCreated(object source, FileSystemEventArgs e) { FlatCopyApplicationContext.SetWorkIcon(); Console.WriteLine($"file created {e.FullPath}"); var counterPart = GetCounterFullPath(e.FullPath); Console.WriteLine($"overwrite-> {counterPart}"); if (!IsDirectory(e.FullPath)) { try { File.Copy(e.FullPath, counterPart); } catch (Exception) { } } FlatCopyApplicationContext.UnsetWorkicon(); }
private void OnRenamed(object source, RenamedEventArgs e) { FlatCopyApplicationContext.SetWorkIcon(); Console.WriteLine($"file renamed {e.OldFullPath} to {e.FullPath} "); var oldCounterPart = GetCounterFullPath(e.OldFullPath); var newCounterPart = GetCounterFullPath(e.FullPath); Console.WriteLine($"rename-> {oldCounterPart} to {newCounterPart}"); try { if (!IsDirectory(e.FullPath)) { File.Move(oldCounterPart, newCounterPart); } else { var files = Directory.EnumerateFiles(e.FullPath, "*.*", SearchOption.AllDirectories); string pathPart; foreach (var file in files) { var tmp = file.Replace(e.FullPath, ""); pathPart = e.OldFullPath + tmp; pathPart = pathPart.Replace(sourceDir, ""); pathPart = pathPart.Replace(@"\", "."); var oldCounterFile = destinationDir + pathPart; pathPart = file.Replace(sourceDir, ""); pathPart = pathPart.Replace(@"\", "."); var newCounterFile = destinationDir + pathPart; File.Move(oldCounterFile, newCounterFile); } } } catch (Exception) { } FlatCopyApplicationContext.UnsetWorkicon(); }