public FormatSelectionViewModelFactory( ApplicationContext applicationContext, IApplicationService applicationService, IVideoDownloadService videoDownloadService) { this.applicationContext = applicationContext; this.applicationService = applicationService; this.videoDownloadService = videoDownloadService; }
public DownloadViewModel(ApplicationContext applicationContext, IFormatSelectionViewModelFactory factory, IVideoDownloadService videoDownloadService, IApplicationService applicationService) { this.applicationContext = applicationContext; this.factory = factory; this.videoDownloadService = videoDownloadService; this.applicationService = applicationService; VideoUrl = applicationContext.ToReactivePropertyAsSynchronized(x => x.VideoUrl); SelectFormatCommand = new AsyncReactiveCommand().DisposeWith(this); SelectFormatCommand.Subscribe(x => OpenVideoFormatSelectionAsync()).DisposeWith(this); }
public VideoFormatSelectionViewModel( List <VideoFormat> videoFormats, List <AudioFormat> audioFormats, ApplicationContext applicationContext, IVideoDownloadService videoService, IApplicationService applicationService) { VideoFormats = videoFormats; AudioFormats = audioFormats; this.applicationContext = applicationContext; this.videoService = videoService; this.applicationService = applicationService; OpenVideoCuttingCommand = new AsyncReactiveCommand().DisposeWith(this); OpenVideoCuttingCommand.Subscribe(x => OpenVideoCuttingAsync()).DisposeWith(this); }