48 lines
1.7 KiB
C#
48 lines
1.7 KiB
C#
|
|
using Prism.Events;
|
|||
|
|
|
|||
|
|
namespace DTS.Common.Events.TSRAIRGo
|
|||
|
|
{
|
|||
|
|
//FB 39466 Events to notify DAS and System Settings
|
|||
|
|
public class SystemSettingsLevelTriggerChangedEvent : PubSubEvent<LevelTriggerArg> { }
|
|||
|
|
|
|||
|
|
[System.Diagnostics.CodeAnalysis.SuppressMessage("Minor Code Smell", "S101:Types should be named in PascalCase", Justification = "DAS allowed")]
|
|||
|
|
public class DASLevelTriggerChangedEvent : PubSubEvent<LevelTriggerArg> { }
|
|||
|
|
|
|||
|
|
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;
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|