private void simpleLimitControl_LimitChanged(SingleLimit selectedLimit)
 {
     lblLimitString.Text = selectedLimit.ToString();
 }
 private void simpleLimitControl_OnSelectLimit(SingleLimit selectedLimit)
 {
     lblLimitString.Text = selectedLimit.ToString();
 }
 public SingleLimitForm( SingleLimit limit )
 {
     InitializeComponent();
     SingleLimit = limit;
 }
 private void ControlsToData()
 {
     singleLimit = base.Value as SingleLimit;
     base.ControlsToData();
 }
 /// <summary>
 /// Deserializes xml markup from file into an SingleLimit object
 /// </summary>
 /// <param name="fileName">string xml file to load and deserialize</param>
 /// <param name="obj">Output SingleLimit object</param>
 /// <param name="exception">output Exception value if deserialize failed</param>
 /// <returns>true if this Serializer can deserialize the object; otherwise, false</returns>
 public static bool LoadFromFile(string fileName, out SingleLimit obj, out System.Exception exception)
 {
     exception = null;
     obj = default(SingleLimit);
     try
     {
         obj = LoadFromFile(fileName);
         return true;
     }
     catch (System.Exception ex)
     {
         exception = ex;
         return false;
     }
 }
 public static bool LoadFromFile(string fileName, out SingleLimit obj)
 {
     System.Exception exception;
     return LoadFromFile(fileName, out obj, out exception);
 }
 public static bool Deserialize(string input, out SingleLimit obj)
 {
     System.Exception exception;
     return Deserialize(input, out obj, out exception);
 }
 /// <summary>
 /// Deserializes workflow markup into an SingleLimit object
 /// </summary>
 /// <param name="input">string workflow markup to deserialize</param>
 /// <param name="obj">Output SingleLimit object</param>
 /// <param name="exception">output Exception value if deserialize failed</param>
 /// <returns>true if this Serializer can deserialize the object; otherwise, false</returns>
 public static bool Deserialize(string input, out SingleLimit obj, out System.Exception exception)
 {
     exception = null;
     obj = default(SingleLimit);
     try
     {
         obj = Deserialize(input);
         return true;
     }
     catch (System.Exception ex)
     {
         exception = ex;
         return false;
     }
 }
 private void InitLimit()
 {
     if (_singleLimit == null && _limitControlType == ControlType.SimpleLimit)
         _singleLimit = new SingleLimit();
     else if (_expectedLimit == null && _limitControlType == ControlType.ExpectedLimit)
         _expectedLimit = new LimitExpected();
 }
 private void btnLimit1_Click(object sender, EventArgs e)
 {
     //Datum.SetDatumValue(edtDatumType.Value, datum);
     datum = edtDatumType.DatumType;
     ControlsToData(); //Load the limit item
     if (_limitControlType == ControlType.SimpleLimit)
     {
         _singleLimit.Item = datum;
         if (cmbLimitComparitor.SelectedValue != null )
             _singleLimit.comparator = (ComparisonOperator)Enum.Parse( typeof (ComparisonOperator),
                                                                      (String) cmbLimitComparitor.SelectedValue);
         var form = new SingleLimitForm(_singleLimit);
         RegisterForm( form );
         form.Closed += delegate(object sndr, EventArgs ee)
         {
             UnRegisterForm((Form)sndr);
             if (ee is FormClosedEventArgs)
             {
                 var f = (Form)sndr;
                 if (DialogResult.OK == f.DialogResult)
                 {
                     try
                     {
                         SingleLimit = form.SingleLimit;
                         if (OnSelectLimit != null)
                             OnSelectLimit(_singleLimit);
                         if (LimitChanged != null)
                             LimitChanged(_singleLimit);
                     }
                     catch (Exception err)
                     {
                         MessageBox.Show(@"Error: " + err.Message, @"E R R O R");
                     }
                 }
             }
         };
         form.Show();
     }
     else if (_limitControlType == ControlType.ExpectedLimit)
     {
         _expectedLimit.Item = datum;
         _expectedLimit.comparator =
             (EqualityComparisonOperator)
                 Enum.Parse(typeof(EqualityComparisonOperator), (String)cmbLimitComparitor.SelectedValue);
         var form = new ExpectedLimitForm(_expectedLimit);
         RegisterForm( form );
         form.Closed += delegate(object sndr, EventArgs ee)
         {
             UnRegisterForm((Form)sndr);
             if (ee is FormClosedEventArgs)
             {
                 var f = (Form)sndr;
                 if (DialogResult.OK == f.DialogResult)
                 {
                     try
                     {
                         ExpectedLimit = form.LimitExpected;
                     }
                     catch (Exception err)
                     {
                         MessageBox.Show(@"Error: " + err.Message, @"E R R O R");
                     }
                 }
             }
         };
         form.Show();
     }
 }
        private void btnSubmit_Click(object sender, EventArgs e)
        {
            string input1 = edtQuickEntry.Text;
            string input2 = null;
            int idx = input1.IndexOf(" to ", System.StringComparison.Ordinal);
            if (idx != -1)
            {
                input2 = input1.Substring(idx + " to ".Length );
                input1 = input1.Substring(0, idx);
            }

            bool useLimitPair = false;
            List<Value> values1 = ElectricalUtils.ParseExpression(input1);
            List<Value> values2 = null;
            if (input2 != null)
            {
                values2 = ElectricalUtils.ParseExpression(input2);
                useLimitPair = true;
            }

            if (values1.Count > 0)
            {
                Value value1 = values1[0];
                ErrorLimit errorLimit1 = value1.errorLimit;
                Value resolution1 = value1.resoluion;
                string unit1 = value1.unit;
                string val1 = value1.value;
                @double datum1 = value1.@double;
                _limit = new Limit();
                if (!useLimitPair)
                {
                    cmbLimitType.SelectedIndex = LIMIT_EXPECTED;
                    var le = new LimitExpected { Item = datum1 };
                    _limit.Item = le;
                    //20msV errlmt 0.01% res 1mV range 50mV to 10V  range 100mV to 20V
                }
                else
                {
                    cmbLimitType.SelectedIndex = LIMIT_PAIR;
                    SingleLimit limit1 = new SingleLimit();
                    SingleLimit limit2 = new SingleLimit();
                    limit1.comparator = ComparisonOperator.GE;
                    limit2.comparator = ComparisonOperator.LE;
                    var lp = new LimitPair {Limit = new List<SingleLimit> {limit1, limit2}};
                    limit1.Item = datum1;
                    if ( values2.Count > 0)
                    {
                        Value value2 = values2[0];
                        ErrorLimit errorLimit2 = value2.errorLimit;
                        Value resolution2 = value2.resoluion;
                        string unit2 = value2.unit;
                        string val2 = value2.value;
                        @double datum2 = value2.@double;
                        limit2.Item = datum2;
                        //20mV errlmt 0.01% res 1mV range 50mV to 10V  range 100mV to 20V
                    }
                    _limit.Item = lp;
                }
                DataToControls();
            }
        }