示例#1
0
 public CreatePlaylistWindow(string windowTitle, ISongLoader songLoader, PlaylistDto playlist)
 {
     SongLoader = songLoader;
     InitializeComponent();
     Title               = windowTitle;
     PlaylistName        = playlist?.Name;
     TbPlaylistName.Text = playlist?.Name ?? string.Empty;
     CheckedSongs        = playlist?.Songs.ToList() ?? new();
 }
示例#2
0
 public ShowEditPlaylistDialogCommand(
     IMapper mapper,
     ISongLoader songLoader,
     IPlaylistHolder playlistHolder,
     IModelRepository <Playlist> playlistRepository)
     : base(mapper, songLoader)
 {
     _playlistHolder     = playlistHolder;
     _playlistRepository = playlistRepository;
 }
示例#3
0
        public static async Task <PlaylistItem> LoadPlaylistItemFromSong(this ISongLoader modelLoader, IId model)
        {
            PlaylistItem playlistItem = null;

            if (model != null)
            {
                await
                modelLoader.SubsonicService.GetSong(model.Id)
                .WithErrorHandler(modelLoader.ErrorHandler)
                .OnSuccess(
                    result =>
                    playlistItem = CreatePlaylistItemFromSong(result, modelLoader.SubsonicService))
                .Execute();
            }

            return(playlistItem);
        }
示例#4
0
        public PlaylistsViewModel(
            ISongLoader songLoader,
            IPlaylistRetriever playlistRetriever,
            IPlaylistHolder playlistHolder,
            UpdateCurrentPlaylistCommand updateCurrentPlaylistCommand,
            ShowCreatePlaylistDialogCommand showCreatePlaylistDialogCommand,
            SinglePlaylistViewModel singlePlaylistVm)
        {
            _songLoader                     = songLoader;
            _playlistRetriever              = playlistRetriever;
            PlaylistHolder                  = playlistHolder;
            UpdateCurrentPlaylistCommand    = updateCurrentPlaylistCommand;
            ShowCreatePlaylistDialogCommand = showCreatePlaylistDialogCommand;
            SinglePlaylistViewModel         = singlePlaylistVm;

            LoadPlaylists()
            .ContinueWith(task =>
            {
                MessageBox.Show(task.Exception.Message);
            }, TaskContinuationOptions.OnlyOnFaulted);
        }
示例#5
0
 public CreatePlaylistWindow(string windowTitle, ISongLoader songLoader)
     : this(windowTitle, songLoader, null)
 {
 }
 public BasePlaylistDialogCommand(IMapper mapper, ISongLoader songLoader)
 {
     _mapper     = mapper;
     _songLoader = songLoader;
 }