public EditAlbumViewModel(IAlbumService albumService, ISongService songService, ITracklistHelper tracklist, ITracklistWebLoader tracklistWebLoader, IDialogService dialogService) { Guard.AgainstNull(albumService); Guard.AgainstNull(songService); Guard.AgainstNull(tracklist); Guard.AgainstNull(tracklistWebLoader); Guard.AgainstNull(dialogService); _albumService = albumService; _songService = songService; _tracklist = tracklist; _tracklistWebLoader = tracklistWebLoader; _dialogService = dialogService; // setting up commands LoadTracklistCommand = new DelegateCommand(LoadTracklistAsync); ParseMp3Command = new DelegateCommand(ParseMp3); FixTitlesCommand = new DelegateCommand(FixTitles); FixTimesCommand = new DelegateCommand(FixDurations); AddSongCommand = new DelegateCommand(AddSong); ClearAllSongsCommand = new DelegateCommand(async() => await ClearAllAsync()); SaveAlbumCommand = new DelegateCommand(async() => await SaveAllAsync()); SaveSongCommand = new DelegateCommand(async() => await SaveSongAsync()); DeleteSongCommand = new DelegateCommand(async() => await RemoveSongAsync()); LoadAlbumImageFromFileCommand = new DelegateCommand(LoadAlbumImageFromFile); LoadAlbumImageFromClipboardCommand = new DelegateCommand(LoadAlbumImageFromClipboard); }
public EditAlbumViewModel(IAlbumService albumService, ISongService songService, ITracklistHelper tracklist, ITracklistWebLoader tracklistWebLoader) { Guard.AgainstNull(albumService); Guard.AgainstNull(songService); Guard.AgainstNull(tracklist); Guard.AgainstNull(tracklistWebLoader); _albumService = albumService; _songService = songService; _tracklist = tracklist; _tracklistWebLoader = tracklistWebLoader; // setting up commands LoadTracklistCommand = new RelayCommand(LoadTracklistAsync); ParseMp3Command = new RelayCommand(ParseMp3); FixTitlesCommand = new RelayCommand(FixTitles); FixTimesCommand = new RelayCommand(FixDurations); AddSongCommand = new RelayCommand(AddSong); ClearAllSongsCommand = new RelayCommand(async() => await ClearAllAsync()); SaveAllSongsCommand = new RelayCommand(async() => await SaveAllAsync()); SaveSongCommand = new RelayCommand(async() => await SaveSongAsync()); DeleteSongCommand = new RelayCommand(async() => await RemoveSongAsync()); SaveAlbumInformationCommand = new RelayCommand(async() => await SaveAlbumInformationAsync()); LoadAlbumImageFromFileCommand = new RelayCommand(LoadAlbumImageFromFile); LoadAlbumImageFromClipboardCommand = new RelayCommand(LoadAlbumImageFromClipboard); // fill combobox with release years from given range var endingYear = DateTime.Now.Year + 1; ReleaseYearsCollection = new ObservableCollection <string>(); for (var i = StartingYear; i < endingYear; i++) { ReleaseYearsCollection.Add(i.ToString()); } }