コード例 #1
0
        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);
        }
コード例 #2
0
        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());
            }
        }