Exemplo n.º 1
0
        public void ShowDownloadDialog(DownloadParameters downloadParams, Action <bool, DownloadParameters> dialogCompleteCallback)
        {
            if (downloadParams == null)
            {
                throw new ArgumentNullException(nameof(downloadParams));
            }

            if (dialogCompleteCallback == null)
            {
                throw new ArgumentNullException(nameof(dialogCompleteCallback));
            }

            DownloadWindowVM vm = this.kernel.Get <DownloadWindowVM>();

            vm.DownloadParams = downloadParams;

            DownloadWindow window = this.kernel.Get <DownloadWindow>();

            window.DataContext = vm;

            bool?result = window.ShowDialog();

            DownloadParameters resultObject = vm.ResultObject;

            dialogCompleteCallback(result != true, resultObject);
        }
        public void ShowDownloadDialog(TwitchVideo video, TwitchVideoResolution resolution, string folder, string filename, Action <bool, DownloadParameters> dialogCompleteCallback)
        {
            if (video == null)
            {
                throw new ArgumentNullException(nameof(video));
            }

            if (resolution == null)
            {
                throw new ArgumentNullException(nameof(resolution));
            }

            if (string.IsNullOrWhiteSpace(folder))
            {
                throw new ArgumentNullException(nameof(folder));
            }

            if (string.IsNullOrWhiteSpace(filename))
            {
                throw new ArgumentNullException(nameof(filename));
            }

            if (dialogCompleteCallback == null)
            {
                throw new ArgumentNullException(nameof(dialogCompleteCallback));
            }

            DownloadWindowVM vm = this.kernel.Get <DownloadWindowVM>();

            vm.Video      = video;
            vm.Resolution = resolution;
            vm.Folder     = folder;
            vm.Filename   = filename;

            DownloadWindow window = this.kernel.Get <DownloadWindow>();

            window.DataContext = vm;

            bool?result = window.ShowDialog();

            DownloadParameters resultObject = vm.ResultObject;

            dialogCompleteCallback(result != true, resultObject);
        }