private void btnOK_Click(object sender, EventArgs e)
{
List<string> csv_filepaths = new List<string>(lstOmssaCsvFiles.Items.Count);
foreach(string csv_filepath in lstOmssaCsvFiles.Items)
{
csv_filepaths.Add(csv_filepath);
}
bool higher_scores_are_better = chkHigherScoresAreBetter.Checked;
double max_false_discovery_rate = (double)numMaximumFalseDiscoveryRate.Value;
bool unique = chkUnique.Checked;
bool overall_outputs = chkOverallOutputs.Checked;
bool phosphopeptide_outputs = chkPhosphopeptideOutputs.Checked;
string output_folder = txtOutputFolder.Text;
if(output_folder == null || output_folder == string.Empty)
{
MessageBox.Show("Output folder must be specified");
return;
}
BatchLowResFdrOptimizer batch_low_res_fdr_optimizer = new BatchLowResFdrOptimizer(csv_filepaths,
higher_scores_are_better,
max_false_discovery_rate,
unique,
overall_outputs, phosphopeptide_outputs, output_folder);
batch_low_res_fdr_optimizer.Starting += handleStarting;
batch_low_res_fdr_optimizer.StartingFile += handleStartingFile;
batch_low_res_fdr_optimizer.UpdateProgress += handleUpdateProgress;
batch_low_res_fdr_optimizer.ThrowException += handleThrowException;
batch_low_res_fdr_optimizer.FinishedFile += handleFinishedFile;
batch_low_res_fdr_optimizer.Finished += handleFinished;
lstOmssaCsvFiles.SelectedItem = null;
prgProgress.Value = prgProgress.Minimum;
Thread thread = new Thread(new ThreadStart(batch_low_res_fdr_optimizer.Optimize));
thread.IsBackground = true;
thread.Start();
}