public EditAlbumViewModel(Common.Database.Entities.Album album, IMetadataService metadataService, IDialogService dialogService, ICacheService cacheService) { this.Album = album; this.metadataService = metadataService; this.dialogService = dialogService; this.cacheService = cacheService; this.artwork = new MetadataArtworkValue(); this.LoadedCommand = new DelegateCommand(async() => await this.GetAlbumArtworkAsync()); this.ExportArtworkCommand = new DelegateCommand(async() => { if (HasArtwork) { await SaveFileUtils.SaveImageFileAsync("cover", this.Artwork.Value); } }); this.ChangeArtworkCommand = new DelegateCommand(async() => { if (!await OpenFileUtils.OpenImageFileAsync(new Action <byte[]>(this.UpdateArtwork))) { this.dialogService.ShowNotification(0xe711, 16, ResourceUtils.GetString("Language_Error"), ResourceUtils.GetString("Language_Error_Changing_Image"), ResourceUtils.GetString("Language_Ok"), true, ResourceUtils.GetString("Language_Log_File")); } }); this.RemoveArtworkCommand = new DelegateCommand(() => this.UpdateArtwork(null)); this.DownloadArtworkCommand = new DelegateCommand(() => this.DownloadArtworkAsync(), () => this.album.AlbumArtist != Defaults.UnknownArtistText && this.Album.AlbumTitle != Defaults.UnknownAlbumText); }
public EditTrackViewModel(IList <string> paths, IMetadataService metadataService, IDialogService dialogService) { this.multipleValuesText = "<" + ResourceUtils.GetString("Language_Multiple_Values") + ">"; this.artists = new MetadataValue(); this.title = new MetadataValue(); this.album = new MetadataValue(); this.albumArtists = new MetadataValue(); this.year = new MetadataValue(); this.trackNumber = new MetadataValue(); this.trackCount = new MetadataValue(); this.discNumber = new MetadataValue(); this.discCount = new MetadataValue(); this.genres = new MetadataValue(); this.grouping = new MetadataValue(); this.comment = new MetadataValue(); this.lyrics = new MetadataValue(); this.artwork = new MetadataArtworkValue(); this.paths = paths; this.metadataService = metadataService; this.dialogService = dialogService; this.HasMultipleArtwork = false; this.UpdateAlbumArtwork = false; this.LoadedCommand = new DelegateCommand(async() => await this.GetFilesMetadataAsync()); this.NavigateCommand = new DelegateCommand <string>((index) => Navigate(index)); this.ExportArtworkCommand = new DelegateCommand(async() => { if (HasArtwork) { await SaveFileUtils.SaveImageFileAsync("cover", this.Artwork.Value); } }); this.ChangeArtworkCommand = new DelegateCommand(async() => { if (!await OpenFileUtils.OpenImageFileAsync(new Action <byte[]>(this.UpdateArtwork))) { this.dialogService.ShowNotification( 0xe711, 16, ResourceUtils.GetString("Language_Error"), ResourceUtils.GetString("Language_Error_Changing_Image"), ResourceUtils.GetString("Language_Ok"), true, ResourceUtils.GetString("Language_Log_File")); } }); this.RemoveArtworkCommand = new DelegateCommand(() => this.UpdateArtwork(null)); this.Navigate("1"); // Make sure something is displayed when the screen is shown }
public EditTrackViewModel(IList <TrackInfo> trackinfos, IMetadataService metadataService, IDialogService dialogService) { this.multipleValuesText = ResourceUtils.GetStringResource("Language_Multiple_Values"); this.artists = new MetadataValue(); this.title = new MetadataValue(); this.album = new MetadataValue(); this.albumArtists = new MetadataValue(); this.year = new MetadataValue(); this.trackNumber = new MetadataValue(); this.trackCount = new MetadataValue(); this.discNumber = new MetadataValue(); this.discCount = new MetadataValue(); this.genres = new MetadataValue(); this.grouping = new MetadataValue(); this.comment = new MetadataValue(); this.artwork = new MetadataArtworkValue(); this.trackInfos = trackinfos; this.metadataService = metadataService; this.dialogService = dialogService; this.HasMultipleArtwork = false; this.UpdateAlbumArtwork = false; this.LoadedCommand = new DelegateCommand(async() => await this.GetFilesMetadataAsync()); this.ChangeArtworkCommand = new DelegateCommand(async() => { if (!await OpenFileUtils.OpenImageFileAsync(new Action <string, byte[]>(this.UpdateArtwork))) { this.dialogService.ShowNotification( 0xe711, 16, ResourceUtils.GetStringResource("Language_Error"), ResourceUtils.GetStringResource("Language_Error_Changing_Image"), ResourceUtils.GetStringResource("Language_Ok"), true, ResourceUtils.GetStringResource("Language_Log_File")); } }); this.RemoveArtworkCommand = new DelegateCommand(() => this.UpdateArtwork(String.Empty, null)); }
public EditAlbumViewModel(Album album, IMetadataService metadataService, IDialogService dialogService) { this.Album = album; this.metadataService = metadataService; this.dialogService = dialogService; this.artwork = new MetadataArtworkValue(); this.LoadedCommand = new DelegateCommand(async() => await this.GetAlbumArtworkAsync()); this.ChangeArtworkCommand = new DelegateCommand(async() => { if (!await OpenFileUtils.OpenImageFileAsync(new Action <string, byte[]>(this.UpdateArtwork))) { this.dialogService.ShowNotification(0xe711, 16, ResourceUtils.GetStringResource("Language_Error"), ResourceUtils.GetStringResource("Language_Error_Changing_Image"), ResourceUtils.GetStringResource("Language_Ok"), true, ResourceUtils.GetStringResource("Language_Log_File")); } }); this.RemoveArtworkCommand = new DelegateCommand(() => this.UpdateArtwork(string.Empty, null)); }
public EditAlbumViewModel(string albumKey, IMetadataService metadataService, IDialogService dialogService, ICacheService cacheService) : base(cacheService) { this.metadataService = metadataService; this.dialogService = dialogService; this.cacheService = cacheService; this.LoadedCommand = new DelegateCommand(async() => await this.GetAlbumArtworkAsync(albumKey)); this.ChangeArtworkCommand = new DelegateCommand(async() => { if (!await OpenFileUtils.OpenImageFileAsync(new Action <byte[]>(this.UpdateArtwork))) { this.dialogService.ShowNotification(0xe711, 16, ResourceUtils.GetString("Language_Error"), ResourceUtils.GetString("Language_Error_Changing_Image"), ResourceUtils.GetString("Language_Ok"), true, ResourceUtils.GetString("Language_Log_File")); } }); this.RemoveArtworkCommand = new DelegateCommand(() => this.UpdateArtwork(null)); this.DownloadArtworkCommand = new DelegateCommand(async() => await this.DownloadArtworkAsync(), () => this.CanDownloadArtwork()); }
public EditTrackViewModel(IList <string> paths, IMetadataService metadataService, IDialogService dialogService, ICacheService cacheService, IInfoDownloadService infoDownloadService) : base(cacheService, infoDownloadService) { this.multipleValuesText = "<" + ResourceUtils.GetString("Language_Multiple_Values") + ">"; this.metadataService = metadataService; this.dialogService = dialogService; this.infoDownloadService = infoDownloadService; this.paths = paths; this.HasMultipleArtwork = false; this.UpdateAlbumArtwork = false; this.LoadedCommand = new DelegateCommand(async() => { this.NagivateToSelectedPage(); await this.GetFilesMetadataAsync(); }); this.ChangeArtworkCommand = new DelegateCommand(async() => { if (!await OpenFileUtils.OpenImageFileAsync(new Action <byte[]>(this.UpdateArtwork))) { this.dialogService.ShowNotification( 0xe711, 16, ResourceUtils.GetString("Language_Error"), ResourceUtils.GetString("Language_Error_Changing_Image"), ResourceUtils.GetString("Language_Ok"), true, ResourceUtils.GetString("Language_Log_File")); } }); this.RemoveArtworkCommand = new DelegateCommand(() => this.UpdateArtwork(null)); this.DownloadArtworkCommand = new DelegateCommand(async() => await this.DownloadArtworkAsync(), () => this.CanDownloadArtwork()); }