/// <summary> /// Check whether the showdown text is supposed to be loaded via a text file. If so, set the clipboard to its contents. /// </summary> /// <returns>output boolean that tells if the data provided is valid or not</returns> private static string?GetTextShowdownData() { bool skipClipboardCheck = (Control.ModifierKeys & Keys.Shift) == Keys.Shift; if (!skipClipboardCheck && Clipboard.ContainsText()) { var txt = Clipboard.GetText(); if (ShowdownUtil.IsTextShowdownData(txt)) { return(txt); } } if (!WinFormsUtil.OpenSAVPKMDialog(new[] { "txt" }, out var path)) { WinFormsUtil.Alert("No data provided."); return(null); } var text = File.ReadAllText(path).TrimEnd(); if (ShowdownUtil.IsTextShowdownData(text)) { return(text); } WinFormsUtil.Alert("Text file with invalid data provided. Please provide a text file with proper Showdown data"); return(null); }
private static void Export() { if (!WinFormsUtil.OpenSAVPKMDialog(new[] { ".bnk" }, out var path)) { return; } var bank = File.ReadAllBytes(path !); using var fbd = new FolderBrowserDialog(); if (fbd.ShowDialog() != DialogResult.OK) { return; } var count = PKSMUtil.ExportBank(bank, fbd.SelectedPath, out var previews); PKMPreview.ExportCSV(previews, fbd.SelectedPath); WinFormsUtil.Alert("Bank Exported!", $"Dumped {count} Pokémon!"); }