using HMI.Core.Util; using NationalInstruments.TestStand.Interop.API; namespace Plugin.SeqEditor.Util { public class ItemData { public string DisplayName { get; private set; } public string DataValue { get; private set; } public ItemData(string displayName, string dataValue) { this.DisplayName = displayName; this.DataValue = dataValue; } } public abstract class StringCompTypeData { public static readonly ItemData None = new(LangUtil.Get("se.data.none"), "LOG"); public static readonly ItemData SCCS = new(LangUtil.Get("se.strComp.SCCS"), "CaseSensitive"); public static readonly ItemData SCIC = new(LangUtil.Get("se.strComp.SCIC"), "IgnoreCase"); public static readonly ItemData RECS = new(LangUtil.Get("se.strComp.RECS"), "RegularExpressionCaseSensitive"); public static readonly ItemData REIC = new(LangUtil.Get("se.strComp.REIC"), "IgnoreCase"); public static readonly List ItemSource = new List { None,SCCS,SCIC,//RECS,REIC }; } public abstract class FilterTypeData { public static readonly ItemData Wait = new(LangUtil.Get("Wait"), "NI_Wait"); public static readonly ItemData Action = new(LangUtil.Get("Action"), "Action"); public static readonly ItemData StrValTest = new(LangUtil.Get("String Val Test"), "StringValueTest"); public static readonly ItemData NumValTest = new(LangUtil.Get("Numeric Limit Test"), "NumericLimitTest"); public static readonly ItemData SequenceCall = new(LangUtil.Get("SequenceCall"), "SequenceCall"); public static readonly List ItemSource = new List { Wait,Action,StrValTest,NumValTest,//RECS,REIC }; } public abstract class NumCompTypeData { public static readonly ItemData EQ = new("= Low", "EQ"); public static readonly ItemData NE = new("!= Low", "NE"); public static readonly ItemData GT = new("> Low", "GT"); public static readonly ItemData LT = new("< Low", "LT"); public static readonly ItemData GE = new(">= Low", "GE"); public static readonly ItemData LE = new("<= Low", "LE"); public static readonly ItemData GTLT = new("> Low,< High", "GTLT"); public static readonly ItemData GELE = new(">=Low,<= High", "GELE"); public static readonly ItemData GELT = new(">= Low,< High", "GELT"); public static readonly ItemData GTLE = new("> Low,<= High", "GTLE"); public static readonly ItemData LTGT = new("< Low OR > High", "LTGT"); public static readonly ItemData LEGE = new("<= Low OR >= High", "LEGE"); public static readonly ItemData LEGT = new("<= Low OR > High", "LEGT"); public static readonly ItemData LTGE = new("< Low OR >= High", "LTGE"); public static readonly List ItemSource = new List { EQ,NE,GT,LT,GE,LE,GTLT,GELE,GELT,GTLE,LTGT,LEGE,LEGT,LTGE }; } public abstract class RunModeData { //LangUtil.Get("se.normal") public static readonly ItemData Normal = new("Normal", "Normal"); public static readonly ItemData Skip = new("Skip", "Skip"); public static readonly ItemData ForcePass = new("Pass", "Pass"); public static readonly ItemData ForceFail = new("Fail", "Fail"); public static readonly List ItemSource = new List { Normal,Skip,ForcePass,ForceFail }; } public abstract class StepAdapterData { public static readonly ItemData LabView = new("LabVIEW", AdapterKeyNames.FlexLVAdapterKeyName); public static readonly ItemData LabWindows = new("LabWindows/CVI", AdapterKeyNames.FlexCVIAdapterKeyName); public static readonly ItemData CCPlus = new("C/C++ DLL", AdapterKeyNames.FlexCAdapterKeyName); public static readonly ItemData DotNet = new(".NET", AdapterKeyNames.DotNetAdapterKeyname); public static readonly ItemData ActiveX = new("ActiveX/COM", AdapterKeyNames.AutomationAdapterKeyName); public static readonly ItemData None = new("None", AdapterKeyNames.NoneAdapterKeyName); public static readonly ItemData LabViewNGX = new("LabVIEW NXG", AdapterKeyNames.LabVIEWNXGAdapterKeyName); public static readonly ItemData Python = new("Python", AdapterKeyNames.PythonAdapterKeyName); public static readonly ItemData SequenceCall = new("SequenceCall", AdapterKeyNames.SequenceAdapterKeyName); public static readonly List ItemSource = new List { LabView,LabWindows,CCPlus,DotNet,ActiveX,None,LabViewNGX,Python,SequenceCall }; } public abstract class LoopTypeData { public static readonly ItemData None = new("无", "NoLooping"); public static readonly ItemData Fixed = new("固定次数循环", "FixedNumLoops"); public static readonly ItemData PassFailCount = new("PassFailCount", "PassFailCount"); public static readonly ItemData Custom = new("自定义", "Custom"); public static readonly List ItemSource = new List { None,Fixed,PassFailCount }; } public abstract class LoopConditionData { public static readonly ItemData LT = new("<", "<"); public static readonly ItemData LE = new("<=", "<="); public static readonly ItemData GT = new(">", ">"); public static readonly ItemData GE = new(">=", ">="); public static readonly List ItemSource = new List { LT,LE, GT, GE }; } public abstract class LoopCondition2Data { public static readonly ItemData PASS = new("pass", "pass"); public static readonly ItemData FAIL = new("fail", "fail"); public static readonly List ItemSource = new List { PASS,FAIL }; } }