public LibraryModel( IDownloadEvents downloadEvents, IObservable<QueuedDownload> downloadEnqueuedEvent ) { LibraryItemRemoved += UpdateParentOnLibraryItemRemoved; FilterEvents( downloadEnqueuedEvent ).Subscribe( item => { item.ItemState = MediaItemState.Downloading; }); FilterEvents(downloadEvents.DownloadStartedEvent).Subscribe(item => item.ItemState = MediaItemState.Downloading); FilterEvents( downloadEvents.DownloadStopPendingEvent ).Subscribe( item => item.ItemState = MediaItemState.Remote ); FilterEvents( downloadEvents.DownloadErrorEvent ).Subscribe( item => item.ItemState = MediaItemState.Remote ); FilterEvents( downloadEvents.DownloadCompletedEvent ).Subscribe( item => item.ItemState = MediaItemState.Local ); }
public LibraryModel(IDownloadEvents downloadEvents, IObservable <QueuedDownload> downloadEnqueuedEvent) { LibraryItemRemoved += UpdateParentOnLibraryItemRemoved; FilterEvents(downloadEnqueuedEvent).Subscribe( item => { item.ItemState = MediaItemState.Downloading; }); FilterEvents(downloadEvents.DownloadStartedEvent).Subscribe(item => item.ItemState = MediaItemState.Downloading); FilterEvents(downloadEvents.DownloadStopPendingEvent).Subscribe(item => item.ItemState = MediaItemState.Remote); FilterEvents(downloadEvents.DownloadErrorEvent).Subscribe(item => item.ItemState = MediaItemState.Remote); FilterEvents(downloadEvents.DownloadCompletedEvent).Subscribe(item => item.ItemState = MediaItemState.Local); }