public static string GetFilterForType(ReleaseAdditionalFileType type) { switch (type) { case ReleaseAdditionalFileType.Cue: return "Cue Files (*.cue)|*.cue|" + Utility.AllFilesFilter; case ReleaseAdditionalFileType.Other: return Utility.AllFilesFilter; case ReleaseAdditionalFileType.RipLog: return "Log Files (*.log)|*.log|" + Utility.AllFilesFilter; case ReleaseAdditionalFileType.Torrent: return "Torrent Files (*.torrent)|*.torrent|" + Utility.AllFilesFilter; default: throw new NotSupportedException(); } }
private void UserControl_Drop(object sender, DragEventArgs e) { if (!e.Data.GetDataPresent(DataFormats.FileDrop)) { return; } string[] droppedItems = (string[])e.Data.GetData(DataFormats.FileDrop); Array.Sort(droppedItems); foreach (string file in droppedItems) { if (!File.Exists(file)) { break; } ReleaseAdditionalFileType type = ReleaseAdditionalFile.GetTypeForExtension(Path.GetExtension(file)); this.AddFile(file, type); } }
public static string GetFilterForType(ReleaseAdditionalFileType type) { switch (type) { case ReleaseAdditionalFileType.Cue: return("Cue Files (*.cue)|*.cue|" + Utility.AllFilesFilter); case ReleaseAdditionalFileType.Other: return(Utility.AllFilesFilter); case ReleaseAdditionalFileType.RipLog: return("Log Files (*.log)|*.log|" + Utility.AllFilesFilter); case ReleaseAdditionalFileType.Torrent: return("Torrent Files (*.torrent)|*.torrent|" + Utility.AllFilesFilter); default: throw new NotSupportedException(); } }
private void comboAddItem_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (this.comboAddItem.SelectedItem is ReleaseAdditionalFileType) { ReleaseAdditionalFileType type = (ReleaseAdditionalFileType)this.comboAddItem.SelectedItem; OpenFileDialog dialog = new OpenFileDialog(); dialog.Multiselect = true; dialog.Filter = ReleaseAdditionalFile.GetFilterForType(type); if (dialog.ShowDialog() == true) { foreach (string file in dialog.FileNames) { this.AddFile(file, type); } } this.comboAddItem.SelectedIndex = 0; } }
private void AddFile(string fileName, ReleaseAdditionalFileType type) { byte[] data; try { data = File.ReadAllBytes(fileName); } catch { Dialogs.Error("Unable to read file!"); this.comboAddItem.SelectedIndex = 0; return; } ReleaseAdditionalFile file = new ReleaseAdditionalFile() { Type = type, File = data, OriginalFilename = fileName }; this.Release.AdditionalFiles.Add(file); this.AddItem(file); }
private void AddFile(string fileName, ReleaseAdditionalFileType type) { byte[] data; try { data = File.ReadAllBytes(fileName); } catch { Dialogs.Error("Unable to read file!"); this.comboAddItem.SelectedIndex = 0; return; } ReleaseAdditionalFile file = new ReleaseAdditionalFile() { Type = type, File = data, OriginalFilename = fileName }; this.Release.AdditionalFiles.Add(file); this.AddItem(file); }