using Prism.Events; namespace DTS.Common.Events.TSRAIRGo { //FB 39466 Events to notify DAS and System Settings public class SystemSettingsLevelTriggerChangedEvent : PubSubEvent { } [System.Diagnostics.CodeAnalysis.SuppressMessage("Minor Code Smell", "S101:Types should be named in PascalCase", Justification = "DAS allowed")] public class DASLevelTriggerChangedEvent : PubSubEvent { } public class LevelTriggerArg { public string LevelTriggerText { get; set; } public bool? LevelTriggerAxis1 { get; set; } public bool? LevelTriggerAxis2 { get; set; } public bool? LevelTriggerAxis3 { get; set; } public override bool Equals(object obj) { LevelTriggerArg lt = obj as LevelTriggerArg; if (obj == null) { return false; } if (LevelTriggerAxis1.HasValue && lt.LevelTriggerAxis1.HasValue) { return LevelTriggerAxis1.Value && lt.LevelTriggerAxis1.Value; } else if (LevelTriggerAxis2.HasValue && lt.LevelTriggerAxis2.HasValue) { return LevelTriggerAxis2.Value && lt.LevelTriggerAxis2.Value; } else if (LevelTriggerAxis3.HasValue && lt.LevelTriggerAxis3.HasValue) { return LevelTriggerAxis3.Value && lt.LevelTriggerAxis3.Value; } else if (!string.IsNullOrEmpty(LevelTriggerText) && !string.IsNullOrEmpty(lt.LevelTriggerText)) { return LevelTriggerText == lt.LevelTriggerText; } return false; } } }