private void analyzeButton_Click(object sender, EventArgs e)
        {
            if (!SelectedConference.Equals(Constants.AllText))
            {
                EnableDisableAnalyzeButton(false);

                //Start an async job to calculate the division scenarios
                DivisionScenarioAnalyzer analyzer = DivisionScenarioAnalyzer.Analyze(mLeague, SelectedConference, SelectedDivision, SelectedTeam, true,
                                                                                     (judgmentsDone, totalJudgments, elapsed) =>
                {
                    mUpdateCounter++;
                    if (mUpdateCounter >= Constants.AnalysisUiUpdateInterval)
                    {
                        string status   = $"Judging {judgmentsDone} of {totalJudgments} outcomes ({elapsed})";
                        double progress = judgmentsDone / totalJudgments;
                        UpdateStatus(status, progress);
                        mUpdateCounter = 0;
                    }
                },
                                                                                     (outputLines, elapsed) =>
                {
                    UpdateStatus("Analysis complete", 0);
                    UpdateReport("Division Scenarios:" + Constants.Newline + string.Join(Constants.Newline, outputLines) + Constants.Newline + Constants.Newline + reportTextbox.Text);
                    EnableDisableAnalyzeButton(true);
                });
            }
        }
        private void conferenceSelector_SelectedIndexChanged(object sender, EventArgs e)
        {
            divisionSelector.Items.Clear();
            divisionSelector.Items.Add(Constants.AllText);

            SetUIVisibility();

            if (!SelectedConference.Equals(Constants.AllText))
            {
                //Populate the divisionSelector with the divisions in the selected conference
                Conference selected = mLeague[SelectedConference];
                foreach (Division division in selected.Divisions)
                {
                    divisionSelector.Items.Add(division.Name);
                }
            }

            if (divisionSelector.SelectedIndex != 0)
            {
                divisionSelector.SelectedIndex = 0;
            }
            else
            {
                UpdateDisplay();
            }
        }
        private void SetUIVisibility()
        {
            DisplayType currentDisplay = CurrentDisplay;

            bool conferenceSelected = !SelectedConference.Equals(Constants.AllText);

            divisionLabel.Visible    = conferenceSelected;
            divisionSelector.Visible = conferenceSelected;

            bool divisionSelected = conferenceSelected && SelectedDivision != null && !SelectedDivision.Equals(Constants.AllText);

            teamLabel.Visible    = conferenceSelected && divisionSelected;
            teamSelector.Visible = conferenceSelected && divisionSelected;

            analyzeButton.Enabled = divisionSelected;

            ShowHideTab(leagueTab, currentDisplay == DisplayType.League);
            ShowHideTab(conferenceTab, currentDisplay == DisplayType.Conference);
            ShowHideTab(divisionTab, currentDisplay == DisplayType.Division);
            ShowHideTab(teamTab, currentDisplay == DisplayType.Team);
        }