public AudioFilePreviewVm(ISimpleFileInfo fileInfo, IBasicTrackInfo trackInfo) : base(fileInfo) { ArtistName = trackInfo.ArtistName; AlbumTitle = trackInfo.AlbumTitle; Year = trackInfo.Year; TrackName = trackInfo.TrackName; }
private ImageFilePreviewVm CreateImageFilePreviewVm(ISimpleFileInfo file) { var imageSource = new ImageSourceConverter().ConvertFromString(file.Info.FullName) as ImageSource; var imagePreview = new ImageFilePreviewVm(file, imageSource); return(imagePreview); }
public IMusicDirInfo AnalyzeMusicDirectory(ISimpleFileInfo dirSFi) { var mdi = new MusicDirInfo(); mdi.Path = dirSFi.Path; //сортировка файлов и каталогов по типу foreach (var sfi in dirSFi.Children) { switch (sfi.Type) { case SfiType.Directory: //проверка на каталог с изображениями if (CheckIfOnlyImageSubDirectory(sfi)) { mdi.ImageDirectories.Add(sfi); continue; } //проверка на вложенный альбом if (CheckIfAudioFileSubDirectory(sfi)) { mdi.SubDirectories.Add(sfi); continue; } //проверка на вложенные каталоги if (CheckIfHasSubdirectories(sfi)) { mdi.SubDirectories.Add(sfi); } mdi.SubDirectories.Add(sfi); break; case SfiType.AudioFile: mdi.TrackList.Add(sfi); var trackInfo = _musicFileAnalyzer.GetBasicAlbumInfoFromAudioFile(sfi.Info); mdi.TrackInfos.Add(trackInfo); break; case SfiType.ImageFile: mdi.ImageFiles.Add(sfi); break; case SfiType.TextFile: mdi.TextFiles.Add(sfi); break; case SfiType.Unknown: mdi.UnknownFiles.Add(sfi); break; default: throw new ArgumentException(); } } return(mdi); }
private bool CheckIfAudioFileSubDirectory(ISimpleFileInfo dirSfi) { return(dirSfi.Children.Any(fi => fi.Type == SfiType.AudioFile)); }
private bool CheckIfOnlyImageSubDirectory(ISimpleFileInfo dirSfi) { return(dirSfi.Children.All(fi => fi.Type == SfiType.ImageFile) & (dirSfi.Children.Count <= 10)); }
//TODO:Add more checks private bool CheckIfHasSubdirectories(ISimpleFileInfo dirSfi) { return(dirSfi.Children.Any(fi => fi.Type == SfiType.Directory)); }
protected FilePreviewVmBase(ISimpleFileInfo fileInfo) { ItemName = fileInfo.Name; }
public void DeleteFile(ISimpleFileInfo simpleFi) { DeleteFile(simpleFi.Path); }
public void MoveFileWithAutomaticRenaming(ISimpleFileInfo sourceFi, string targetDirectory) { MoveFileWithAutomaticRenaming(sourceFi.Path, targetDirectory); }
public void MoveFile(ISimpleFileInfo sourceFi, string targetDirectory, string newFileName = default) { MoveFile(sourceFi.Path, targetDirectory, newFileName); }
private TextFilePreviewVm CreateTextFilePreviewVm(ISimpleFileInfo file) { return(new TextFilePreviewVm(file)); }
private AudioFilePreviewVm CreateAudioFilePreviewVm(ISimpleFileInfo file) { var basicTrackInfo = _musicFileAnalyzer.GetBasicAlbumInfoFromAudioFile(file.Info); return(new AudioFilePreviewVm(file, basicTrackInfo)); }
public ImageFilePreviewVm(ISimpleFileInfo fileInfo, ImageSource imageSource) : base(fileInfo) { Image = imageSource; }
public TextFilePreviewVm(ISimpleFileInfo fileInfo) : base(fileInfo) { SetPreviewText(fileInfo); }