public static Color GetColor(ECouleurAlarme couleur, CContexteDonnee ctx) { CSpvAlarmcouleur alarmCouleur = new CSpvAlarmcouleur(ctx); CFiltreData filtre = new CFiltreData(c_champALARMCOUL_GRAVITE + " = @1", (int)couleur); if (alarmCouleur.ReadIfExists(filtre)) { return(alarmCouleur.Couleur); } else { return(DefaultColor(couleur)); } }
/// <summary> /// recalcul simple : s'il y a une alarme sur le fils, l'objet est en alarme /// </summary> protected virtual void RecalculeGravite() { ECouleurAlarme oldCouleurAlarme = m_couleurEnCours; m_gravite = EGraviteAlarme.NoAlarm; foreach (CDonneesSupervisionAlarme donnee in m_dicAlarmesEnCours.Values) { EGraviteAlarme graviteAlarme = CGraviteAlarme.ConvertFrom((EGraviteAlarmeAvecMasquage)donnee.InfoAlarme.SeverityCode); m_gravite = (EGraviteAlarme)Math.Max((int)m_gravite, (int)graviteAlarme); } switch (m_gravite) { case EGraviteAlarme.NoAlarm: m_couleurEnCours = ECouleurAlarme.NoAlarm; break; case EGraviteAlarme.Warning: m_couleurEnCours = ECouleurAlarme.Warning; break; case EGraviteAlarme.Undetermined: m_couleurEnCours = ECouleurAlarme.Undetermined; break; case EGraviteAlarme.Minor: m_couleurEnCours = ECouleurAlarme.Minor; break; case EGraviteAlarme.Major: m_couleurEnCours = ECouleurAlarme.Major; break; case EGraviteAlarme.Critical: m_couleurEnCours = ECouleurAlarme.Critical; break; } if (m_couleurEnCours != oldCouleurAlarme) { m_base.OnChangementEtatSupervise(this); } }
public static Color DefaultColor(ECouleurAlarme gravite) { switch (gravite) { case ECouleurAlarme.NoAlarm: return(Color.Green); case ECouleurAlarme.MaskBrig: return(Color.LightBlue); case ECouleurAlarme.MaskAdmin: return(Color.Blue); case ECouleurAlarme.Warning: return(Color.Salmon); case ECouleurAlarme.Undetermined: return(Color.Violet); case ECouleurAlarme.Minor: return(Color.Yellow); case ECouleurAlarme.Major: return(Color.Orange); case ECouleurAlarme.Critical: return(Color.Red); case ECouleurAlarme.NoAlarmAcces: return(Color.LightGray); case ECouleurAlarme.MinorOrMajorButOk: return(Color.Salmon); case ECouleurAlarme.NOk: return(Color.Red); default: return(Color.White); } }