private void DoCheck() { _problems = ProblemChecker.Check(_document.Map, VisibleOnlyCheckbox.Checked).ToList(); ProblemsList.BeginUpdate(); ProblemsList.Items.Clear(); ProblemsList.Items.AddRange(_problems.OfType <object>().ToArray()); ProblemsList.EndUpdate(); }
public IDisplayableProblem GetProblemFromEnum(ProblemsList selectedValue) { switch (selectedValue) { case ProblemsList.Bullets: return(new Bullets()); case ProblemsList.Iditarod: return(new Iditarod()); case ProblemsList.InterestingDigits: return(new InterestingDigits()); case ProblemsList.Lexer: return(new Lexer()); case ProblemsList.StreetParking: return(new StreetParking()); case ProblemsList.Substitute: return(new Substitute()); case ProblemsList.TurretDefense: return(new TurretDefense()); case ProblemsList.Whisper: return(new Whisper()); case ProblemsList.WidgetRepairs: return(new WidgetRepairs()); case ProblemsList.Abacus: return(new Abacus()); case ProblemsList.ABBA: return(new ABBA()); case ProblemsList.ATaleOfThreeCities: return(new ATaleOfThreeCities()); case ProblemsList.AToughGame: return(new AToughGame()); default: return(null); } }
private async Task DoCheck(MapDocument doc) { _problems = doc == null ? new List <ProblemWrapper>() : await Check(doc, GetFilter(_visibleOnly, _selectedOnly)); this.InvokeLater(() => { var si = ProblemsList.SelectedIndex; ProblemsList.BeginUpdate(); ProblemsList.Items.Clear(); ProblemsList.Items.AddRange(_problems.OfType <object>().ToArray()); if (si < 0 || si >= ProblemsList.Items.Count) { si = 0; } if (si < ProblemsList.Items.Count) { ProblemsList.SelectedIndex = si; } ProblemsList.EndUpdate(); UpdateSelectedProblem(null, EventArgs.Empty); }); }