public YouTubeUploaderViewModel(YouTubeUploader Uploader,
                                        IMessageProvider MessageProvider,
                                        IClipboardService ClipboardService)
        {
            _uploader                = Uploader;
            _messageProvider         = MessageProvider;
            _cancellationTokenSource = new CancellationTokenSource();

            OpenVideoCommand = this
                               .ObserveProperty(M => M.Link)
                               .Select(M => !string.IsNullOrWhiteSpace(M))
                               .ToReactiveCommand()
                               .WithSubscribe(() => Process.Start(Link));

            CopyLinkCommand = this
                              .ObserveProperty(M => M.Link)
                              .Select(M => !string.IsNullOrWhiteSpace(M))
                              .ToReactiveCommand()
                              .WithSubscribe(() => ClipboardService.SetText(Link));

            UploadCommand = new[]
            {
                _canUpload,
                this.ObserveProperty(M => Title)
                .Select(M => !string.IsNullOrWhiteSpace(M))
            }
            .CombineLatestValuesAreAllTrue()
            .ToReactiveCommand()
            .WithSubscribe(() => _uploadTask = OnUpload());
        }
Exemplo n.º 2
0
        public YouTubeUploaderViewModel(YouTubeUploader Uploader,
                                        IMessageProvider MessageProvider)
        {
            _uploader                = Uploader;
            _messageProvider         = MessageProvider;
            _cancellationTokenSource = new CancellationTokenSource();

            UploadCommand = new DelegateCommand(() => _uploadTask = OnUpload(), false);

            OpenVideoCommand = new DelegateCommand(() => Process.Start(Link), false);

            CopyLinkCommand = new DelegateCommand(() => Link.WriteToClipboard(), false);
        }
Exemplo n.º 3
0
        public void Upload(bool Public)
        {
            if (!MainForm.Conf.Subscribed)
            {
                MessageBox.Show(this, "Subscribers only");
                return;
            }

            if (FileName.EndsWith(".mp4"))
            {
                string[] parts = FileName.Split('\\');
                string   fn    = parts[parts.Length - 1];
                int      id    = Convert.ToInt32(fn.Substring(0, fn.IndexOf('_')));

                MessageBox.Show(this, YouTubeUploader.AddUpload(id, parts[parts.Length - 1], Public, "", ""));
            }
            else
            {
                MessageBox.Show(this, "Can only upload MP4 Files.");
            }
        }