private static int RunRenameAndReturnExitCode(RenameOption opts) { var nameDictionary = ReadDictionary(DictionaryFilePath); if (string.IsNullOrEmpty(opts.OutputDirectory)) { opts.OutputDirectory = opts.InputDirectory + "_renamed"; } if (!Directory.Exists(opts.OutputDirectory)) { Directory.CreateDirectory(opts.OutputDirectory); } var inputFilePaths = Directory.GetFiles(opts.InputDirectory); int i = 1; foreach (var inputFilePath in inputFilePaths) { var fileName = Path.GetFileNameWithoutExtension(inputFilePath); var extension = Path.GetExtension(inputFilePath); WriteLine( string.Format("Renaming file {0}/{1}", i, inputFilePaths.Length), opts.Verbose); ulong hash; string name; if (ulong.TryParse(fileName, NumberStyles.HexNumber, CultureInfo.InvariantCulture, out hash) && nameDictionary.TryGetValue(hash, out name)) { string outputFileName = name + extension; WriteLine( string.Format("Renamed {0} to {1}", fileName, outputFileName), opts.Verbose); var outputFilePath = Path.Combine(opts.OutputDirectory, outputFileName); var outputDirectory = Path.GetDirectoryName(outputFilePath); if (!Directory.Exists(outputDirectory)) { Directory.CreateDirectory(outputDirectory); } File.Copy(inputFilePath, outputFilePath, true); } else { string outputFileName = fileName + extension; Debug.WriteLine(string.Format("Missing name '{0}'", outputFileName)); WriteLine( string.Format("Unable to renamed {0}. Unknown ID", outputFileName), opts.Verbose); var outputFilePath = Path.Combine(opts.OutputDirectory, outputFileName); File.Copy(inputFilePath, outputFilePath, true); } i++; } return(0); }
public async void RenamePlaylist(string oldName, string newName, RenameOption option, object data = null) { switch (option) { case RenameOption.New: Playlist playlist = new Playlist(newName); if (data != null) { playlist.Add(data); } await playlist.SetDisplayItemAsync(); Playlists.Add(playlist); PlaylistsPage.Playlists.Add(playlist); foreach (var listener in PlaylistAddedListeners) { listener.Invoke(playlist); } break; case RenameOption.Rename: if (oldName == newName) { break; } int index = Playlists.FindIndex(p => p.Name == oldName); Playlists[index].Name = newName; PlaylistsPage.Playlists[index].Name = newName; break; } }
private void Constructor(Func <string, string, bool> confirm, RenameOption option, string defaultName) { this.InitializeComponent(); Confirm = confirm; Option = option; DefaultName = defaultName; string dialogTitle = "", confirmContent = ""; switch (option) { case RenameOption.New: dialogTitle = "Create New Playlist"; confirmContent = "Confirm"; break; case RenameOption.Rename: dialogTitle = "Rename Playlist"; confirmContent = "Rename"; break; } TitleTextBlock.Text = Helper.Localize(dialogTitle); ConfirmButton.Content = Helper.Localize(confirmContent); NewPlaylistNameTextBox.Text = defaultName; NewPlaylistNameTextBox.SelectAll(); }
private static int RunRenameAndReturnExitCode(RenameOption opts) { var nameDictionary = ReadDictionary(DictionaryFilePath); if (string.IsNullOrEmpty(opts.OutputDirectory)) { opts.OutputDirectory = opts.InputDirectory + "_renamed"; } if (!Directory.Exists(opts.OutputDirectory)) { Directory.CreateDirectory(opts.OutputDirectory); } var inputFilePaths = Directory.GetFiles(opts.InputDirectory); int i = 1; foreach (var inputFilePath in inputFilePaths) { var fileName = Path.GetFileName(inputFilePath); var extension = Path.GetExtension(inputFilePath); WriteLine( string.Format("Renaming file {0}/{1}", i, inputFilePaths.Length), opts.Verbose); ulong hash; string name; if (ulong.TryParse(fileName, NumberStyles.HexNumber, CultureInfo.InvariantCulture, out hash) && nameDictionary.TryGetValue(hash, out name)) { string outputFileName = name + extension; WriteLine( string.Format("Renamed {0} to {1}", fileName, outputFileName), opts.Verbose); var outputFilePath = Path.Combine(opts.OutputDirectory, outputFileName); var outputDirectory = Path.GetDirectoryName(outputFilePath); if (!Directory.Exists(outputDirectory)) { Directory.CreateDirectory(outputDirectory); } File.Copy(inputFilePath, outputFilePath, true); } else { WriteLine( string.Format("Unable to renamed {0}. Unknown ID", fileName), opts.Verbose); var outputFilePath = Path.Combine(opts.OutputDirectory, fileName); File.Copy(inputFilePath, outputFilePath, true); } i++; } return 0; }
public RenameDialog(IRenameActionListener listener, RenameOption option, string defaultName) { Constructor(listener.Confirm, option, defaultName); }
public RenameDialog(Func <string, string, bool> confirm, RenameOption option, string defaultName) { Constructor(confirm, option, defaultName); }