/// <summary> /// Download button click event. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void DownloadSubmit_Click(object sender, RoutedEventArgs e) { var button = (Button)sender; //Cast sender to button button.IsEnabled = false; //Disable download button //Initialize download /** Host select **/ var response = await HostSelect.OpenSelect(listBox, _hosts); //Show list select item and store result in "response" button.IsEnabled = true; //Enable download button again. listBox.Items.RemoveAt(0); //Removing list item from list. //Return if cancelled if ((bool)response.TempHostSettings["cancel"]) { return; } /** Download settings **/ response.DownloadDestination = Properties.Settings.Default.DownloadFolder; //Set default download folder response = await DownlaodSettings.OpenDialog(this, response); //Open download settings //Return if cancelled if ((bool)response.TempHostSettings["cancel"]) { return; } //Set temp folder response.TempFileDestination = (Properties.Settings.Default.CustomTempDownloadFolder) ? Properties.Settings.Default.TempDownloadFolder : Properties.Settings.Default.DEFAULT_TempDownloadFolder; /** Prepare download **/ var listItem = new StreamDownloaderControls.UserControls.DownloadListItem() { Filename = response.FileName, DownloadFolder = response.DownloadDestination, DownloadURL = response.RawURL }; listBox.Items.Add(listItem); var downloadContainer = new DownloadContainer(listItem, response); await downloadContainer.Initialize(); downloadContainer.Start(); }
private async void ReloadDownload_Click(object sender, RoutedEventArgs e) { using (var FolderDialog = new System.Windows.Forms.OpenFileDialog()) { FolderDialog.InitialDirectory = (Properties.Settings.Default.CustomTempDownloadFolder) ? Properties.Settings.Default.DownloadFolder : Properties.Settings.Default.DEFAULT_TempDownloadFolder; FolderDialog.Filter = "Pdi files (*.dtemp.pdi;*.pdi)|*.dtemp.pdi;*.pdi"; FolderDialog.Multiselect = true; var result = FolderDialog.ShowDialog(); if (result != System.Windows.Forms.DialogResult.OK) { return; } foreach (String file in FolderDialog.FileNames) { var temp = DownloadData.DeserializeDownloadData(file); /** Prepare download **/ var listItem = new StreamDownloaderControls.UserControls.DownloadListItem() { Filename = temp.FileName, DownloadFolder = temp.DownloadDestination, DownloadURL = temp.RawURL }; listBox.Items.Add(listItem); var downloadContainer = new DownloadContainer(listItem, temp); /** Start **/ await downloadContainer.Initialize(); downloadContainer.Start(); } } }