private void remove_Button_Click(object sender, EventArgs e)
        {
            if (calculatedSeries_ListBox.SelectedItem != null)
            {
                string           selectedName = calculatedSeries_ListBox.SelectedItem.ToString();
                CalculatedSeries series       = _calculatedSeries.First(n => n.Name == selectedName);
                _calculatedSeries.Remove(series);
                calculatedSeries_ListBox.Items.Remove(calculatedSeries_ListBox.SelectedItem);
            }

            UpdateEnabledControls();
        }
        private void calculatedSeries_ListBox_SelectedIndexChanged(object sender, EventArgs e)
        {
            UpdateEnabledControls();

            if (calculatedSeries_ListBox.SelectedItem != null)
            {
                string           selectedName     = calculatedSeries_ListBox.SelectedItem.ToString();
                CalculatedSeries calculatedSeries = _calculatedSeries.First(n => n.Name == selectedName);
                for (int i = 0; i < includedSeries_ListBox.Items.Count; i++)
                {
                    string itemName = includedSeries_ListBox.Items[i].ToString();
                    includedSeries_ListBox.SetItemChecked(i, calculatedSeries.IsIncluded(itemName));
                }
            }
        }
        private void includedSeries_ListBox_ItemCheck(object sender, ItemCheckEventArgs e)
        {
            if (calculatedSeries_ListBox.SelectedItem == null)
            {
                return;
            }

            string           selectedName     = calculatedSeries_ListBox.SelectedItem.ToString();
            CalculatedSeries calculatedSeries = _calculatedSeries.First(n => n.Name == selectedName);
            string           checkedName      = includedSeries_ListBox.Items[e.Index].ToString();

            if (e.NewValue == CheckState.Checked)
            {
                calculatedSeries.Include(checkedName);
            }
            else
            {
                calculatedSeries.Exclude(checkedName);
            }
        }
        private void add_Button_Click(object sender, EventArgs e)
        {
            string selectedName = InputDialog.Show("Enter a name for the new calculated series:", "New Calculated Series", "Total");

            if (selectedName == null)
            {
                // User cancelled
                return;
            }

            if (string.IsNullOrWhiteSpace(selectedName) || _calculatedSeries.Any(n => n.Name == selectedName))
            {
                MessageBox.Show("Invalid name.", "Invalid Name", MessageBoxButtons.OK);
            }
            else
            {
                CalculatedSeries series = new CalculatedSeries(selectedName);
                _calculatedSeries.Add(series);
                calculatedSeries_ListBox.SelectedIndex = calculatedSeries_ListBox.Items.Add(series.Name);
            }

            UpdateEnabledControls();
        }