Exemplo n.º 1
0
        private void NewFacilityButton_Click(object sender, EventArgs e)
        {
            // Get parent site
            Site     site;
            int      index = -1;
            TreeNode node  = SitesTreeView.SelectedNode;

            if (node.Tag is Site)
            {
                site = (Site)node.Tag;
            }
            else if (node.Tag is Facility)
            {
                Facility fac = (Facility)node.Tag;
                site  = (Site)node.Parent.Tag;
                index = site.GetFacilities().IndexOf(fac) + 1;
            }
            else if (node.Tag is DetectionSystem)
            {
                Facility fac = (Facility)node.Parent.Tag;
                site  = (Site)node.Parent.Parent.Tag;
                index = site.GetFacilities().IndexOf(fac) + 1;
            }
            else
            {
                Facility fac = (Facility)node.Parent.Parent.Tag;
                site  = (Site)node.Parent.Parent.Parent.Tag;
                index = site.GetFacilities().IndexOf(fac) + 1;
            }

            if (index < 0)
            {
                index = site.GetFacilities().Count;
            }

            bool uniqueName = false;
            int  iteration  = 0;

            string name = "";

            while (!uniqueName)
            {
                iteration++;
                name       = "New-Facility-" + iteration.ToString();
                uniqueName = !siteMan.ContainsName(name);
            }
            Facility newFacility = new Facility(site, name, 0);

            newFacility.SetIndex(index);
            siteMan.Save();
            UpdateSitesTree();
            siteManChanged             = true;
            SitesTreeView.SelectedNode = SitesTreeView.Nodes.Find(name, true)[0];
        }
Exemplo n.º 2
0
        private void DownButton_Click(object sender, EventArgs e)
        {
            TreeNode node = SitesTreeView.SelectedNode;

            if (node.Tag is Site)
            {
                Site site  = (Site)node.Tag;
                int  index = siteMan.GetSites().IndexOf(site);
                if (index < siteMan.GetSites().Count - 1)
                {
                    site.SetIndex(index + 1);

                    siteMan.Save();
                    UpdateSitesTree();
                    siteManChanged             = true;
                    SitesTreeView.SelectedNode = SitesTreeView.Nodes.Find(site.Name, true)[0];
                }
            }
            else if (node.Tag is Facility)
            {
                Facility fac   = (Facility)node.Tag;
                Site     site  = (Site)node.Parent.Tag;
                int      index = site.GetFacilities().IndexOf(fac);
                if (index < site.GetFacilities().Count - 1)
                {
                    site.SetIndex(index + 1);

                    siteMan.Save();
                    UpdateSitesTree();
                    siteManChanged             = true;
                    SitesTreeView.SelectedNode = SitesTreeView.Nodes.Find(fac.Name, true)[0];
                }
            }
            else if (node.Tag is DetectionSystem)
            {
                DetectionSystem sys   = (DetectionSystem)node.Tag;
                Facility        fac   = (Facility)node.Parent.Tag;
                int             index = fac.GetSystems().IndexOf(sys);
                if (index < fac.GetSystems().Count - 1)
                {
                    fac.SetIndex(index + 1);

                    siteMan.Save();
                    UpdateSitesTree();
                    siteManChanged             = true;
                    SitesTreeView.SelectedNode = SitesTreeView.Nodes.Find(sys.Name, true)[0];
                }
            }
            else if (node.Tag is Instrument)
            {
                Instrument      inst  = (Instrument)node.Tag;
                DetectionSystem sys   = (DetectionSystem)node.Parent.Tag;
                int             index = sys.GetInstruments().IndexOf(inst);
                if (index < sys.GetInstruments().Count - 1)
                {
                    inst.SetIndex(index + 1);

                    siteMan.Save();
                    UpdateSitesTree();
                    siteManChanged             = true;
                    SitesTreeView.SelectedNode = SitesTreeView.Nodes.Find(inst.Name, true)[0];
                }
            }
        }