示例#1
0
        //-----------------------------
        public bool DrillDown(IElementDeSchemaReseau eltDeSchema)
        {
            CSchemaReseau schema = eltDeSchema as CSchemaReseau;

            if (schema == null)
            {
                CLienReseau lien = eltDeSchema as CLienReseau;
                if (lien != null)
                {
                    schema = lien.SchemaReseau;
                }
            }
            if (schema == null)
            {
                CSite site = eltDeSchema as CSite;
                if (site != null)
                {
                    //S'il y a un cablage, affiche le cablage
                    foreach (CSchemaReseau sousSchema in SchemaAffiche.SchemaFils)
                    {
                        if (site.Equals(sousSchema.SiteApparenance))
                        {
                            schema = sousSchema;
                            break;
                        }
                    }
                }
            }

            if (schema != null)
            {
                m_stackCheminsReseau.Push(schema);
                m_dessinDeSchema = schema.GetSchema(false);
                SetSelection(null);
                RedrawSchema();
                UpdateTraitementSNMP();
                if (OnChangeSchemaAffiche != null)
                {
                    OnChangeSchemaAffiche(this, new EventArgs());
                }
                SnmpUpdate();
                return(true);
            }
            return(false);
        }
示例#2
0
        internal override void InitFromElementDeSchema(CElementDeSchemaReseau eltDeSchema)
        {
            base.InitFromElementDeSchema(eltDeSchema);
            CSite site = eltDeSchema.Site;

            if (site == null)
            {
                throw new Exception("Bad element for supervision data ");
            }
            InitForSite(site);
            //Cherche les cablages pour ce site
            foreach (CSchemaReseau sousSchema in eltDeSchema.SchemaReseau.SchemaFils)
            {
                if (site.Equals(sousSchema.SiteApparenance))
                {
                    CInfoSchemaDeSchemaSupervise info = new CInfoSchemaDeSchemaSupervise(this, eltDeSchema, m_base, NiveauProfondeur + 1);
                    m_listeFils.Add(info);
                    info.InitFromSchema(sousSchema);
                    break;
                }
            }
        }