// Begin plotting button event handler private void submitButton_Click(object sender, EventArgs e) { PlotViewer viewer = new PlotViewer(); viewer.Configure(plotList, plotTypeDropDownBox.SelectedIndex); progressBar.Value = 0; progressBar.Visible = true; submitButton.Enabled = false; plotTypeDropDownBox.Enabled = false; addPlotData.Enabled = false; removePlotData.Enabled = false; solveWorker.RunWorkerAsync(viewer); }
// Async plotting completed function private void solveWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { if (e.Error != null) { MessageBox.Show(e.Error.Message); } else { PlotViewer viewer = (PlotViewer)e.Result; viewer.Show(); } progressBar.Visible = false; submitButton.Enabled = true; plotTypeDropDownBox.Enabled = true; addPlotData.Enabled = true; removePlotData.Enabled = true; }
// Async plotting helper function public PlotViewer Process(PlotViewer viewer, BackgroundWorker worker) { viewer.CreatePlot(worker); return(viewer); }