private void ExtractToFile(TreeEntry p_TreeEntry) { string packedPath = p_TreeEntry.IndexData.FilePath; string defaultFilename = packedPath.Split('/').Last(); SaveFileDialog saveFileDialog = new SaveFileDialog { FileName = defaultFilename }; if (saveFileDialog.ShowDialog() == true) { try { LoadedPackedFile.Extract(p_TreeEntry.IndexData.FilePath, saveFileDialog.FileName); } catch (Exception ex) { Error(ex); } } }
private void ExtractToFolder(IList p_SelectedItems) { // todo: CommonOpenFileDialog is from WindowsAPICodePack-Shell: analyse Nuget warnings CommonOpenFileDialog folderDialog = new CommonOpenFileDialog { IsFolderPicker = true }; if (folderDialog.ShowDialog() == CommonFileDialogResult.Ok) { foreach (var item in p_SelectedItems) { Debug.Assert(item is TreeEntry); // should always be the case TreeEntry entry = item as TreeEntry; try { LoadedPackedFile.Extract(entry.GetItemPathString(), System.IO.Path.Combine(folderDialog.FileName, entry.Name)); } catch (Exception ex) { Error(ex); } } } }