Пример #1
0
        private void menuItemLoadBackgroundSelection_Click(object sender, EventArgs e)
        {
            if (session == null || !session.IsLoaded)
            {
                MessageBox.Show("You must load a session first");
                return;
            }

            if (lbSession.SelectedItems.Count < 1)
            {
                MessageBox.Show("No spectrums selected");
                return;
            }

            ClearBackground();

            int             minIndex = -1, maxIndex = -1;
            List <Spectrum> spectrumSelection = new List <Spectrum>();

            foreach (object o in lbSession.SelectedItems)
            {
                Spectrum spec = o as Spectrum;
                spectrumSelection.Add(spec);

                if (minIndex == -1 && maxIndex == -1)
                {
                    minIndex = spec.SessionIndex;
                    maxIndex = spec.SessionIndex;
                }
                else
                {
                    if (spec.SessionIndex < minIndex)
                    {
                        minIndex = spec.SessionIndex;
                    }
                    if (spec.SessionIndex > maxIndex)
                    {
                        maxIndex = spec.SessionIndex;
                    }
                }
            }

            // Store background in session
            session.SetBackground(spectrumSelection);

            lblBackground.Text = "Background: " + minIndex + " -> " + maxIndex;
            log.Info("Background selection " + minIndex + " -> " + maxIndex + " loaded for session " + session.Name);
        }