///
/// Copyright (c) 2015 Sensus Metering Systems
///
using System;
using System.Collections.Generic;
using System.Windows.Forms;
using log4net;
using TBF.Resources;
namespace TBF.BenchControl.DataEntry.Standard24
{
public partial class TestStartEndForm : Form, GenericDevices.IHasCompleted
{
private static readonly ILog log = LogManager.GetLogger(typeof(TestStartEndForm));
// Set to 'true' when the form closes
public bool Completed { get { return completed; } }
bool completed;
/// Number of text boxes for serial numbers
public readonly int WaterMetersCount;
readonly bool[] disabled;
// To be retrieved after the form closes
public float[] WMStartState;
// To be retrieved after the form closes
public readonly string[] WMStartStateStr;
// To be retrieved after the form closes
public float[] WMEndState;
bool endStates; /// false=start states, true=end states
float refVolume;
float warningLimLo; /// limit to display exclamation mark, typically 2x errLimLo
float warningLimHi; /// limit to display exclamation mark, typically 2x errLimHi
TextBox[] startTextBoxes;
TextBox[] endTextBoxes;
IList enabledTextBoxes;
///
/// Constructor to fill in start states
///
/// Number of text boxes for serial numbers
public TestStartEndForm(int waterMetersCount, bool[] disabled)
{
endStates = false;
this.WaterMetersCount = waterMetersCount;
this.disabled = disabled;
InitializeComponent();
WMStartState = new float[waterMetersCount];
WMStartStateStr = new string[waterMetersCount];
completed = false;
startTextBoxes = new TextBox[]
{
startTextBox1, startTextBox2, startTextBox3, startTextBox4, startTextBox5, startTextBox6,
startTextBox7, startTextBox8, startTextBox9, startTextBox10, startTextBox11, startTextBox12,
startTextBox13, startTextBox14, startTextBox15, startTextBox16, startTextBox17, startTextBox18,
startTextBox19, startTextBox20, startTextBox21, startTextBox22, startTextBox23, startTextBox24,
};
endTextBoxes = new TextBox[]
{
endTextBox1, endTextBox2, endTextBox3, endTextBox4, endTextBox5, endTextBox6,
endTextBox7, endTextBox8, endTextBox9, endTextBox10, endTextBox11, endTextBox12,
endTextBox13, endTextBox14, endTextBox15, endTextBox16, endTextBox17, endTextBox18,
endTextBox19, endTextBox20, endTextBox21, endTextBox22, endTextBox23, endTextBox24,
};
enabledTextBoxes = new List();
StartForceCloseHandler();
}
///
/// Constructor to fill in end states
///
/// Number of text boxes for serial numbers
public TestStartEndForm(int waterMetersCount, string[] wmStartStateStr, bool[] disabled,
float refVolume, float errLimLo, float errLimHi)
{
endStates = true;
this.WaterMetersCount = waterMetersCount;
this.WMStartStateStr = wmStartStateStr;
if (wmStartStateStr == null || wmStartStateStr.Length != waterMetersCount)
throw (new Exception("Invalid 'wmStartStateStr' argument"));
this.disabled = disabled;
this.refVolume = refVolume;
this.warningLimLo = 2 * errLimLo;
this.warningLimHi = 2 * errLimHi;
InitializeComponent();
WMEndState = new float[waterMetersCount];
completed = false;
StartForceCloseHandler();
}
/// Parameterless constructor for all watermeters
public TestStartEndForm()
: this(Program.WMsCount, null)
{
}
private void CycleEndForm_Load(object sender, EventArgs e)
{
Localize();
//Height = 115 + 90 * WaterMetersCount;
if (WaterMetersCount < 1) { label1.Visible = startTextBox1.Visible = endTextBox1.Visible = false; }
if (WaterMetersCount < 2) { label2.Visible = startTextBox2.Visible = endTextBox2.Visible = false; }
if (WaterMetersCount < 3) { label3.Visible = startTextBox3.Visible = endTextBox3.Visible = false; }
if (WaterMetersCount < 4) { label4.Visible = startTextBox4.Visible = endTextBox4.Visible = false; }
if (WaterMetersCount < 5) { label5.Visible = startTextBox5.Visible = endTextBox5.Visible = false; }
if (WaterMetersCount < 6) { label6.Visible = startTextBox6.Visible = endTextBox6.Visible = false; }
if (WaterMetersCount < 7) { label7.Visible = startTextBox7.Visible = endTextBox7.Visible = false; }
if (WaterMetersCount < 8) { label8.Visible = startTextBox8.Visible = endTextBox8.Visible = false; }
if (WaterMetersCount < 9) { label9.Visible = startTextBox9.Visible = endTextBox9.Visible = false; }
if (WaterMetersCount < 10) { label10.Visible = startTextBox10.Visible = endTextBox10.Visible = false; }
if (WaterMetersCount < 11) { label11.Visible = startTextBox11.Visible = endTextBox11.Visible = false; }
if (WaterMetersCount < 12) { label12.Visible = startTextBox12.Visible = endTextBox12.Visible = false; }
if (WaterMetersCount < 13) { label13.Visible = startTextBox13.Visible = endTextBox13.Visible = false; }
if (WaterMetersCount < 14) { label14.Visible = startTextBox14.Visible = endTextBox14.Visible = false; }
if (WaterMetersCount < 15) { label15.Visible = startTextBox15.Visible = endTextBox15.Visible = false; }
if (WaterMetersCount < 16) { label16.Visible = startTextBox16.Visible = endTextBox16.Visible = false; }
if (WaterMetersCount < 17) { label17.Visible = startTextBox17.Visible = endTextBox17.Visible = false; }
if (WaterMetersCount < 18) { label18.Visible = startTextBox18.Visible = endTextBox18.Visible = false; }
if (WaterMetersCount < 19) { label19.Visible = startTextBox19.Visible = endTextBox19.Visible = false; }
if (WaterMetersCount < 20) { label20.Visible = startTextBox20.Visible = endTextBox20.Visible = false; }
if (WaterMetersCount < 21) { label21.Visible = startTextBox21.Visible = endTextBox21.Visible = false; }
if (WaterMetersCount < 22) { label22.Visible = startTextBox22.Visible = endTextBox22.Visible = false; }
if (WaterMetersCount < 23) { label23.Visible = startTextBox23.Visible = endTextBox23.Visible = false; }
if (WaterMetersCount < 24) { label24.Visible = startTextBox24.Visible = endTextBox24.Visible = false; }
if (endStates)
{
for (int i = 0; i < 24; i++)
{
if (WaterMetersCount > i) startTextBoxes[i].Text = WMStartStateStr[i];
if (disabled != null && disabled.Length > i && disabled[i])
{
endTextBoxes[i].Enabled = false;
}
else
{
endTextBoxes[i].Enabled = true;
enabledTextBoxes.Add(endTextBoxes[i]);
}
}
}
else
{
for (int i = 0; i < 24; i++)
{
if (disabled != null && disabled.Length > i && disabled[i])
{
startTextBoxes[i].Enabled = false;
}
else
{
startTextBoxes[i].Enabled = true;
enabledTextBoxes.Add(startTextBoxes[i]);
}
}
}
}
void Localize()
{
Text = Strings.Water_Meter_States;
label1.Text = Strings.Water_Meter + " 1";
label2.Text = Strings.Water_Meter + " 2";
label3.Text = Strings.Water_Meter + " 3";
label4.Text = Strings.Water_Meter + " 4";
label5.Text = Strings.Water_Meter + " 5";
label6.Text = Strings.Water_Meter + " 6";
label7.Text = Strings.Water_Meter + " 7";
label8.Text = Strings.Water_Meter + " 8";
label9.Text = Strings.Water_Meter + " 9";
label10.Text = Strings.Water_Meter + " 10";
label11.Text = Strings.Water_Meter + " 11";
label12.Text = Strings.Water_Meter + " 12";
label13.Text = Strings.Water_Meter + " 13";
label14.Text = Strings.Water_Meter + " 14";
label15.Text = Strings.Water_Meter + " 15";
label16.Text = Strings.Water_Meter + " 16";
label17.Text = Strings.Water_Meter + " 17";
label18.Text = Strings.Water_Meter + " 18";
label19.Text = Strings.Water_Meter + " 19";
label20.Text = Strings.Water_Meter + " 20";
label21.Text = Strings.Water_Meter + " 21";
label22.Text = Strings.Water_Meter + " 22";
label23.Text = Strings.Water_Meter + " 23";
label24.Text = Strings.Water_Meter + " 24";
startLabel.Text = Strings.Start;
endLabel.Text = Strings.End;
okButton.Text = Strings.OkBtnText;
}
private void okButton_Click(object sender, EventArgs e)
{
try
{
if (endStates)
{
if (endTextBox1.Enabled) WMEndState[0] = Utils.ParseUFloat(endTextBox1.Text);
if (endTextBox2.Enabled) WMEndState[1] = Utils.ParseUFloat(endTextBox2.Text);
if (endTextBox3.Enabled) WMEndState[2] = Utils.ParseUFloat(endTextBox3.Text);
if (endTextBox4.Enabled) WMEndState[3] = Utils.ParseUFloat(endTextBox4.Text);
if (endTextBox5.Enabled) WMEndState[4] = Utils.ParseUFloat(endTextBox5.Text);
if (endTextBox6.Enabled) WMEndState[5] = Utils.ParseUFloat(endTextBox6.Text);
if (endTextBox7.Enabled) WMEndState[6] = Utils.ParseUFloat(endTextBox7.Text);
if (endTextBox8.Enabled) WMEndState[7] = Utils.ParseUFloat(endTextBox8.Text);
if (endTextBox9.Enabled) WMEndState[8] = Utils.ParseUFloat(endTextBox9.Text);
if (endTextBox10.Enabled) WMEndState[9] = Utils.ParseUFloat(endTextBox10.Text);
if (endTextBox11.Enabled) WMEndState[10] = Utils.ParseUFloat(endTextBox11.Text);
if (endTextBox12.Enabled) WMEndState[11] = Utils.ParseUFloat(endTextBox12.Text);
if (endTextBox13.Enabled) WMEndState[12] = Utils.ParseUFloat(endTextBox13.Text);
if (endTextBox14.Enabled) WMEndState[13] = Utils.ParseUFloat(endTextBox14.Text);
if (endTextBox15.Enabled) WMEndState[14] = Utils.ParseUFloat(endTextBox15.Text);
if (endTextBox16.Enabled) WMEndState[15] = Utils.ParseUFloat(endTextBox16.Text);
if (endTextBox17.Enabled) WMEndState[16] = Utils.ParseUFloat(endTextBox17.Text);
if (endTextBox18.Enabled) WMEndState[17] = Utils.ParseUFloat(endTextBox18.Text);
if (endTextBox19.Enabled) WMEndState[18] = Utils.ParseUFloat(endTextBox19.Text);
if (endTextBox20.Enabled) WMEndState[19] = Utils.ParseUFloat(endTextBox20.Text);
if (endTextBox21.Enabled) WMEndState[20] = Utils.ParseUFloat(endTextBox21.Text);
if (endTextBox22.Enabled) WMEndState[21] = Utils.ParseUFloat(endTextBox22.Text);
if (endTextBox23.Enabled) WMEndState[22] = Utils.ParseUFloat(endTextBox23.Text);
if (endTextBox24.Enabled) WMEndState[23] = Utils.ParseUFloat(endTextBox24.Text);
}
else
{
if (startTextBox1.Enabled) { WMStartStateStr[0] = startTextBox1.Text; WMStartState[0] = Utils.ParseUFloat(startTextBox1.Text); }
if (startTextBox2.Enabled) { WMStartStateStr[1] = startTextBox2.Text; WMStartState[1] = Utils.ParseUFloat(startTextBox2.Text); }
if (startTextBox3.Enabled) { WMStartStateStr[2] = startTextBox3.Text; WMStartState[2] = Utils.ParseUFloat(startTextBox3.Text); }
if (startTextBox4.Enabled) { WMStartStateStr[3] = startTextBox4.Text; WMStartState[3] = Utils.ParseUFloat(startTextBox4.Text); }
if (startTextBox5.Enabled) { WMStartStateStr[4] = startTextBox5.Text; WMStartState[4] = Utils.ParseUFloat(startTextBox5.Text); }
if (startTextBox6.Enabled) { WMStartStateStr[5] = startTextBox6.Text; WMStartState[5] = Utils.ParseUFloat(startTextBox6.Text); }
if (startTextBox7.Enabled) { WMStartStateStr[6] = startTextBox7.Text; WMStartState[6] = Utils.ParseUFloat(startTextBox7.Text); }
if (startTextBox8.Enabled) { WMStartStateStr[7] = startTextBox8.Text; WMStartState[7] = Utils.ParseUFloat(startTextBox8.Text); }
if (startTextBox9.Enabled) { WMStartStateStr[8] = startTextBox9.Text; WMStartState[8] = Utils.ParseUFloat(startTextBox9.Text); }
if (startTextBox10.Enabled) { WMStartStateStr[9] = startTextBox10.Text; WMStartState[9] = Utils.ParseUFloat(startTextBox10.Text); }
if (startTextBox11.Enabled) { WMStartStateStr[10] = startTextBox11.Text; WMStartState[10] = Utils.ParseUFloat(startTextBox11.Text); }
if (startTextBox12.Enabled) { WMStartStateStr[11] = startTextBox12.Text; WMStartState[11] = Utils.ParseUFloat(startTextBox12.Text); }
if (startTextBox13.Enabled) { WMStartStateStr[12] = startTextBox13.Text; WMStartState[12] = Utils.ParseUFloat(startTextBox13.Text); }
if (startTextBox14.Enabled) { WMStartStateStr[13] = startTextBox14.Text; WMStartState[13] = Utils.ParseUFloat(startTextBox14.Text); }
if (startTextBox15.Enabled) { WMStartStateStr[14] = startTextBox15.Text; WMStartState[14] = Utils.ParseUFloat(startTextBox15.Text); }
if (startTextBox16.Enabled) { WMStartStateStr[15] = startTextBox16.Text; WMStartState[15] = Utils.ParseUFloat(startTextBox16.Text); }
if (startTextBox17.Enabled) { WMStartStateStr[16] = startTextBox17.Text; WMStartState[16] = Utils.ParseUFloat(startTextBox17.Text); }
if (startTextBox18.Enabled) { WMStartStateStr[17] = startTextBox18.Text; WMStartState[17] = Utils.ParseUFloat(startTextBox18.Text); }
if (startTextBox19.Enabled) { WMStartStateStr[18] = startTextBox19.Text; WMStartState[18] = Utils.ParseUFloat(startTextBox19.Text); }
if (startTextBox20.Enabled) { WMStartStateStr[19] = startTextBox20.Text; WMStartState[19] = Utils.ParseUFloat(startTextBox20.Text); }
if (startTextBox21.Enabled) { WMStartStateStr[20] = startTextBox21.Text; WMStartState[20] = Utils.ParseUFloat(startTextBox21.Text); }
if (startTextBox22.Enabled) { WMStartStateStr[21] = startTextBox22.Text; WMStartState[21] = Utils.ParseUFloat(startTextBox22.Text); }
if (startTextBox23.Enabled) { WMStartStateStr[22] = startTextBox23.Text; WMStartState[22] = Utils.ParseUFloat(startTextBox23.Text); }
if (startTextBox24.Enabled) { WMStartStateStr[23] = startTextBox24.Text; WMStartState[23] = Utils.ParseUFloat(startTextBox24.Text); }
}
}
catch
{
return;
}
completed = true;
Close();
}
#region Forced close handling
public void StartForceCloseHandler()
{
UiBridge.Bridge.CloseModelessFormHandler += delegate(object sender, EventArgs args)
{
if (InvokeRequired) { Invoke(new EventHandler(OnForceClose), sender, args); }
else OnForceClose(sender, args);
};
}
void OnForceClose(object sender, EventArgs args)
{
DialogResult = DialogResult.Cancel;
Close();
}
#endregion
///
/// Calculate the approximate error and verify whether it is within limits.
/// Make an exclamation mark visible if out of range.
/// Similar event handler is implemented for all exdTextBoxes (1..24).
///
private void endTextBox1_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox1.Text);
float startState = Utils.ParseUFloat(startTextBox1.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { };
exclamation1.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox2_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox2.Text);
float startState = Utils.ParseUFloat(startTextBox2.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation2.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox3_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox3.Text);
float startState = Utils.ParseUFloat(startTextBox3.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation3.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox4_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox4.Text);
float startState = Utils.ParseUFloat(startTextBox4.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation4.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox5_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox5.Text);
float startState = Utils.ParseUFloat(startTextBox5.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation5.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox6_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox6.Text);
float startState = Utils.ParseUFloat(startTextBox6.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation6.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox7_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox7.Text);
float startState = Utils.ParseUFloat(startTextBox7.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation7.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox8_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox8.Text);
float startState = Utils.ParseUFloat(startTextBox8.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation8.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox9_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox9.Text);
float startState = Utils.ParseUFloat(startTextBox9.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation9.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox10_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox10.Text);
float startState = Utils.ParseUFloat(startTextBox10.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation10.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox11_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox11.Text);
float startState = Utils.ParseUFloat(startTextBox11.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation11.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox12_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox12.Text);
float startState = Utils.ParseUFloat(startTextBox12.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation12.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox13_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox13.Text);
float startState = Utils.ParseUFloat(startTextBox13.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation13.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox14_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox14.Text);
float startState = Utils.ParseUFloat(startTextBox14.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation14.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox15_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox15.Text);
float startState = Utils.ParseUFloat(startTextBox15.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation15.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox16_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox16.Text);
float startState = Utils.ParseUFloat(startTextBox16.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation16.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox17_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox17.Text);
float startState = Utils.ParseUFloat(startTextBox17.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation17.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox18_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox18.Text);
float startState = Utils.ParseUFloat(startTextBox18.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation18.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox19_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox19.Text);
float startState = Utils.ParseUFloat(startTextBox19.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation19.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox20_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox20.Text);
float startState = Utils.ParseUFloat(startTextBox20.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation20.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox21_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox21.Text);
float startState = Utils.ParseUFloat(startTextBox21.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation21.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox22_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox22.Text);
float startState = Utils.ParseUFloat(startTextBox22.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation22.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox23_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox23.Text);
float startState = Utils.ParseUFloat(startTextBox23.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation23.Visible = (err < warningLimLo) || (warningLimHi < err);
}
private void endTextBox24_TextChanged(object sender, EventArgs e)
{
float err = 0;
try
{
float endState = Utils.ParseUFloat(endTextBox24.Text);
float startState = Utils.ParseUFloat(startTextBox24.Text);
err = 100.0f * (endState - startState - refVolume) / refVolume;
}
catch { err = 1000.0f; };
exclamation24.Visible = (err < warningLimLo) || (warningLimHi < err);
}
///
/// Process a key press within any enabled text boxe
///
///
///
/// TextBox control which received the event
private void ProcKeyPress(object sender, KeyPressEventArgs e, TextBox currentFocusOwner)
{
if (e.KeyChar == '+')
{
/// Process '+' key ..... Form completed
okButton_Click(sender, e);
}
if (e.KeyChar == '\r')
{
/// Process key ..... Next text field
if (enabledTextBoxes.Count < 2) return; /// There is just one enabled textbox
for (int i = 0; i < enabledTextBoxes.Count; i++)
{
if (enabledTextBoxes[i] == currentFocusOwner)
{
/// Change focus to the next enabled text box
enabledTextBoxes[(i + 1) % enabledTextBoxes.Count].Focus();
return;
}
}
}
}
private void startTextBox1_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox1); }
private void startTextBox2_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox2); }
private void startTextBox3_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox3); }
private void startTextBox4_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox4); }
private void startTextBox5_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox5); }
private void startTextBox6_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox6); }
private void startTextBox7_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox7); }
private void startTextBox8_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox8); }
private void startTextBox9_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox9); }
private void startTextBox10_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox10); }
private void startTextBox11_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox11); }
private void startTextBox12_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox12); }
private void startTextBox13_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox13); }
private void startTextBox14_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox14); }
private void startTextBox15_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox15); }
private void startTextBox16_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox16); }
private void startTextBox17_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox17); }
private void startTextBox18_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox18); }
private void startTextBox19_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox19); }
private void startTextBox20_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox20); }
private void startTextBox21_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox21); }
private void startTextBox22_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox22); }
private void startTextBox23_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox23); }
private void startTextBox24_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, startTextBox24); }
private void endTextBox1_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox1); }
private void endTextBox2_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox2); }
private void endTextBox3_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox3); }
private void endTextBox4_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox4); }
private void endTextBox5_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox5); }
private void endTextBox6_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox6); }
private void endTextBox7_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox7); }
private void endTextBox8_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox8); }
private void endTextBox9_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox9); }
private void endTextBox10_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox10); }
private void endTextBox11_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox11); }
private void endTextBox12_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox12); }
private void endTextBox13_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox13); }
private void endTextBox14_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox14); }
private void endTextBox15_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox15); }
private void endTextBox16_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox16); }
private void endTextBox17_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox17); }
private void endTextBox18_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox18); }
private void endTextBox19_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox19); }
private void endTextBox20_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox20); }
private void endTextBox21_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox21); }
private void endTextBox22_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox22); }
private void endTextBox23_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox23); }
private void endTextBox24_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, endTextBox24); }
}
}