private void CopyExtractionToClipboard()
{
bool header = true;
bool table = (MessageBox.Show("Results can be copied as own table or as a long table-row. Should it be copied as own table?", "Copy as own table?", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes);
if (Extraction.E.validResults)
{
List<string> tsv = new List<string>();
string rowLevel = comboBoxSpeciesExtractor.SelectedItem.ToString() + "\t\t", rowValues = "";
// if taming effectiveness is unique, display it, too
string effString = "";
double eff = Extraction.E.uniqueTE();
if (eff >= 0)
{
effString = "\tTamingEff:\t" + (100 * eff).ToString() + "%";
}
// headerrow
if (table || header)
{
if (table)
{
tsv.Add(comboBoxSpeciesExtractor.SelectedItem.ToString() + "\tLevel " + numericUpDownLevel.Value.ToString() + effString);
tsv.Add("Stat\tWildLevel\tDomLevel\tBreedingValue");
}
else { tsv.Add("Species\tName\tSex\tHP-Level\tSt-Level\tOx-Level\tFo-Level\tWe-Level\tDm-Level\tSp-Level\tTo-Level\tHP-Value\tSt-Value\tOx-Value\tFo-Value\tWe-Value\tDm-Value\tSp-Value\tTo-Value"); }
}
for (int s = 0; s < 8; s++)
{
if (Extraction.E.chosenResults[s] < Extraction.E.results[s].Count)
{
string breedingV = "";
if (activeStats[s])
{
breedingV = statIOs[s].BreedingValue.ToString();
}
if (table)
{
tsv.Add(Utils.statName(s) + "\t" + (activeStats[s] ? statIOs[s].LevelWild.ToString() : "") + "\t" + (activeStats[s] ? statIOs[s].LevelWild.ToString() : "") + "\t" + breedingV);
}
else
{
rowLevel += "\t" + (activeStats[s] ? statIOs[s].LevelWild.ToString() : "");
rowValues += "\t" + breedingV;
}
}
else { return; }
}
if (!table) { tsv.Add(rowLevel + rowValues); }
Clipboard.SetText(string.Join("\n", tsv));
}
}