public static IList<Result> calculateActivities(IList<IActivity> activities, IList<IValueRangeSeries<DateTime>> pauses, IList<Goal> goals, System.Windows.Forms.ProgressBar progressBar) { if (progressBar != null) { progressBar.Minimum = 0; progressBar.Value = 0; progressBar.Maximum = 0;//Set below progressBar.Visible = true; progressBar.BringToFront(); } SortedList<Result, Result>[] resultsArray = calculateActivities2(activities, pauses, goals, progressBar); IList<Result> results = new List<Result>(); //Null results must be removed from array foreach (SortedList<Result, Result> r in resultsArray) { if (r != null) { //int i = 1; foreach (Result ra in r.Values) { //ra.Order = i; results.Add(ra); //i++; } } } if (progressBar != null) { progressBar.Visible = false; } return results; }
public static System.Windows.Forms.DialogResult ShowDialog(System.Windows.Forms.Form newForm, System.Windows.Forms.Form currentForm) { string title = currentForm.Text; currentForm.Text = ""; System.Windows.Forms.DialogResult result = newForm.ShowDialog(); currentForm.Text = title; currentForm.Show(); currentForm.BringToFront(); return result; }
public static void getHSResults(IList<TimePredictionSource> predictorSource, IList<IActivity> activities, System.Windows.Forms.ProgressBar progressBar) { IList<IList<Object>> results = new List<IList<Object>>(); if (Settings.HighScore != null) { IList<double> partialDistances = new List<double>(); foreach (double distance in Settings.Distances.Keys) { //Scale down the distances, so we get the high scores partialDistances.Add(distance * Settings.HsPercentOfDistance / 100.0); } //chart.Visible = false; //summaryList.Visible = false; //this.lblHighScoreRequired.Visible = false; if (progressBar != null) { progressBar.Visible = true; progressBar.BringToFront(); //progressBar.Size = new Size(this.Width, progressBar.Height); progressBar.Minimum = 0; progressBar.Value = 0; progressBar.Maximum = activities.Count; } results = (IList<IList<Object>>) Settings.HighScore.GetMethod("getFastestTimesOfDistances").Invoke(null, new object[] { activities, partialDistances, progressBar }); if (progressBar != null) { progressBar.Visible = false; } } int index = 0; foreach (IList<Object> result in results) { IActivity foundActivity = (IActivity)result[0]; TimeSpan old_time = TimeSpan.FromSeconds(UnitUtil.Time.Parse(result[1].ToString())); double meterStart = (double)result[2]; double old_dist = (double)result[3]; double timeStart = 0; if (result.Count > 4) { timeStart = double.Parse(result[4].ToString()); } //length is the distance HighScore tried to get a prediction for, may differ to actual dist double length = Settings.Distances.Keys[index]; if (old_time.TotalSeconds > 0) { predictorSource.Add(new TimePredictionSource(foundActivity, old_dist, old_time, meterStart, timeStart)); } index++; } }