예제 #1
0
        /**
         * Hendelse for inntasting av tegn i detektor felt
         */
        private void tbDetector_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == '\r') // Hvis tegn er return
            {
                e.Handled = true;  // Dropp "default handler" for denne hendelsen

                // Finn valgt detektor
                for (int i = 0; i < SelInfo.AllDetectors.Count(); i++)
                {
                    if (!SelInfo.AllDetectors[i].InUse)
                    {
                        continue;
                    }

                    if (SelInfo.AllDetectors[i].Name == tbDetector.Text)
                    {
                        det = tbDetector.Text.ToUpper().Trim();
                        Detector d = getDetectorByName(det);
                        // Sett valgt detektor i parameterlisten
                        SelInfo.SelectedDetector = d;
                        lblStatus.Text           = "Sjekker om detektor " + d.Name + " er klar";
                        Application.DoEvents();

                        // Sjekk om valgt detektor har en aktiv jobb
                        if (Utils.HasJob(d))
                        {
                            // Vis melding og avbryt
                            lblErrorDet.Text = "Detektor " + d.Name + " har allerede en jobb";
                            Media.PlayWav("failure.wav");
                            tbDetector.Text = "";
                            return;
                        }

                        // Sjekk om valgt detektor er klar
                        if (!Utils.IsDetectorReady(d, ref lblStatus))
                        {
                            // Vis melding og avbryt
                            Media.PlayWav("failure.wav");
                            tbDetector.Text = "";
                            return;
                        }

                        // Oppdater grensesnitt
                        lblSelectedDetector.Text     = "Valgt detektor: " + det;
                        lblSelectedDetectorGeom.Text = "Valgt detektor: " + det;
                        if (SelInfo.AnalType == "Bkg")
                        {
                            tabs.SelectedTab = pageStart;
                            tbStart.Select();
                        }
                        else if (SelInfo.AnalType == "Ref")
                        {
                            tabs.SelectedTab = pageGeom;
                            tbGeom.Select();
                        }
                        else
                        {
                            tabs.SelectedTab = pageSamp;
                            tbSampID.Select();
                        }
                        Media.PlayWav("success.wav");
                        return;
                    }
                }

                Media.PlayWav("failure.wav");
                lblErrorDet.Text = "Finner ikke detektor " + tbDetector.Text;
                tbDetector.Text  = "";
            }
        }