ProcessTabPageCtrl renamed to ProcessTabPageCtrl6. ProcessTabPageCtrl24 added to proejct.
This commit is contained in:
Generated
+2
-2
@@ -53,7 +53,7 @@ namespace TBF
|
|||||||
this.homeTabPage = new System.Windows.Forms.TabPage();
|
this.homeTabPage = new System.Windows.Forms.TabPage();
|
||||||
this.ctrlBrdComponent = new ControlComponent3Munich.UserControl1();
|
this.ctrlBrdComponent = new ControlComponent3Munich.UserControl1();
|
||||||
this.processTabPage = new System.Windows.Forms.TabPage();
|
this.processTabPage = new System.Windows.Forms.TabPage();
|
||||||
this.processTabPageCtrl = new TBF.Screens.ProcessTabPageCtrl();
|
this.processTabPageCtrl = new TBF.Screens.ProcessTabPageCtrl6();
|
||||||
this.measurementTabPage = new System.Windows.Forms.TabPage();
|
this.measurementTabPage = new System.Windows.Forms.TabPage();
|
||||||
this.MeasurementTabPageCtrl = new TBF.Screens.MeasurementTabPageCtrl();
|
this.MeasurementTabPageCtrl = new TBF.Screens.MeasurementTabPageCtrl();
|
||||||
this.insertTabPage = new System.Windows.Forms.TabPage();
|
this.insertTabPage = new System.Windows.Forms.TabPage();
|
||||||
@@ -614,7 +614,7 @@ namespace TBF
|
|||||||
private System.Windows.Forms.SplitContainer horizontalSplitContainer;
|
private System.Windows.Forms.SplitContainer horizontalSplitContainer;
|
||||||
private System.Windows.Forms.ToolStripMenuItem processToolStripMenuItem;
|
private System.Windows.Forms.ToolStripMenuItem processToolStripMenuItem;
|
||||||
private System.Windows.Forms.TabPage processTabPage;
|
private System.Windows.Forms.TabPage processTabPage;
|
||||||
private Screens.ProcessTabPageCtrl processTabPageCtrl;
|
private System.Windows.Forms.UserControl processTabPageCtrl;
|
||||||
private System.Windows.Forms.ToolStripMenuItem resultsToolStripMenuItem;
|
private System.Windows.Forms.ToolStripMenuItem resultsToolStripMenuItem;
|
||||||
private System.Windows.Forms.SplitContainer rightHorizSplitContainer;
|
private System.Windows.Forms.SplitContainer rightHorizSplitContainer;
|
||||||
private System.Windows.Forms.FlowLayoutPanel progressFlowLayoutPanel;
|
private System.Windows.Forms.FlowLayoutPanel progressFlowLayoutPanel;
|
||||||
|
|||||||
+1982
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,665 @@
|
|||||||
|
///
|
||||||
|
/// Copyright (c) 2015 Sensus Metering Systems
|
||||||
|
///
|
||||||
|
using System;
|
||||||
|
using System.Drawing;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
using log4net;
|
||||||
|
using TBF.UiBridge;
|
||||||
|
using TBF.Resources;
|
||||||
|
|
||||||
|
#pragma warning disable 162 /// Disables 'Unreachable code detected' warning
|
||||||
|
|
||||||
|
namespace TBF.Screens
|
||||||
|
{
|
||||||
|
public partial class ProcessTabPageCtrl24 : UserControl
|
||||||
|
{
|
||||||
|
static readonly ILog log = LogManager.GetLogger(typeof(ProcessTabPageCtrl24));
|
||||||
|
|
||||||
|
Entities.MetersKind currentMetersKind;
|
||||||
|
|
||||||
|
bool pumpOn = true;
|
||||||
|
bool diverterToTank = true;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Constructor, initializes anonymous event handlers
|
||||||
|
/// </summary>
|
||||||
|
public ProcessTabPageCtrl24()
|
||||||
|
{
|
||||||
|
currentMetersKind = Entities.MetersKind.Single;
|
||||||
|
|
||||||
|
InitializeComponent();
|
||||||
|
|
||||||
|
Bridge.ProcedureSelectedHandler += delegate(object sndr, ProcedureSelectedEventArgs args)
|
||||||
|
{
|
||||||
|
if (InvokeRequired)
|
||||||
|
Invoke(new EventHandler<ProcedureSelectedEventArgs>(OnProcedureSelected), sndr, args);
|
||||||
|
else
|
||||||
|
OnProcedureSelected(sndr, args);
|
||||||
|
};
|
||||||
|
Bridge.TestSelectedHandler += delegate(object sender, TestSelectedEventArgs args)
|
||||||
|
{
|
||||||
|
if (InvokeRequired)
|
||||||
|
Invoke(new EventHandler<TestSelectedEventArgs>(OnTestSelected), sender, args);
|
||||||
|
else
|
||||||
|
OnTestSelected(sender, args);
|
||||||
|
};
|
||||||
|
Bridge.TestProgressHandler += delegate(object sender, TestProgressEventArgs args)
|
||||||
|
{
|
||||||
|
if (InvokeRequired)
|
||||||
|
Invoke(new EventHandler<TestProgressEventArgs>(OnTestProgress), sender, args);
|
||||||
|
else
|
||||||
|
OnTestProgress(sender, args);
|
||||||
|
};
|
||||||
|
Bridge.TestCompletedHandler += delegate(object sender, TestCompletedEventArgs args)
|
||||||
|
{
|
||||||
|
if (InvokeRequired)
|
||||||
|
Invoke(new EventHandler<TestCompletedEventArgs>(OnTestCompleted), sender, args);
|
||||||
|
else
|
||||||
|
OnTestCompleted(sender, args);
|
||||||
|
};
|
||||||
|
Bridge.ProcedureCompletedHandler += delegate(object sender, ProcedureCompletedEventArgs args)
|
||||||
|
{
|
||||||
|
if (InvokeRequired)
|
||||||
|
Invoke(new EventHandler<ProcedureCompletedEventArgs>(OnProcedureCompleted), sender, args);
|
||||||
|
else
|
||||||
|
OnProcedureCompleted(sender, args);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ProcessTabPageCtrl_Load(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
Once();
|
||||||
|
ResetLabelsAndTargetVals();
|
||||||
|
ResetReadings();
|
||||||
|
}
|
||||||
|
|
||||||
|
void Once()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Called when a new procedure is selected
|
||||||
|
/// </summary>
|
||||||
|
void ResetLabelsAndTargetVals()
|
||||||
|
{
|
||||||
|
/// Target values
|
||||||
|
targetFlowLowLabel.Text = "---";
|
||||||
|
targetFlowHighLabel.Text = "---";
|
||||||
|
targetVolumeLabel.Text = "---";
|
||||||
|
targetRefCountLabel.Text = "---";
|
||||||
|
estmtdTimeLabel.Text = "---";
|
||||||
|
|
||||||
|
//
|
||||||
|
refFlowCmpntLabel.Text = "---";
|
||||||
|
regValveCmpntLabel.Text = "---";
|
||||||
|
|
||||||
|
/// Water pressure
|
||||||
|
prInCmpntLabel.Text = "---";
|
||||||
|
prOutCmpntLabel.Text = "---";
|
||||||
|
|
||||||
|
/// Water temperature
|
||||||
|
tInCmpntLabel.Text = "---";
|
||||||
|
tOutCmpntLabel.Text = "---";
|
||||||
|
tDivCmpntLabel.Text = "---";
|
||||||
|
|
||||||
|
scaleCmpntLabel.Text = "---";
|
||||||
|
|
||||||
|
if (currentMetersKind == Entities.MetersKind.Single)
|
||||||
|
{
|
||||||
|
watermeterPictureBox1z.Visible = false;
|
||||||
|
watermeterPictureBox2z.Visible = false;
|
||||||
|
watermeterPictureBox3z.Visible = false;
|
||||||
|
groupBox1z.Visible = false;
|
||||||
|
groupBox2z.Visible = false;
|
||||||
|
groupBox3z.Visible = false;
|
||||||
|
|
||||||
|
sensor1Label.Text = "---";
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 2) { sensor2Label.Text = "---"; }
|
||||||
|
else { groupBox2.Visible = false; watermeterPictureBox2.Visible = false; }
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 3) { sensor3Label.Text = "---"; }
|
||||||
|
else { groupBox3.Visible = false; watermeterPictureBox3.Visible = false; }
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 4) { sensor4Label.Text = "---"; }
|
||||||
|
else { groupBox4.Visible = false; watermeterPictureBox4.Visible = false; }
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 5) { sensor5Label.Text = "---"; }
|
||||||
|
else { groupBox5.Visible = false; watermeterPictureBox5.Visible = false; }
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 6) { sensor6Label.Text = "---"; }
|
||||||
|
else { groupBox6.Visible = false; watermeterPictureBox6.Visible = false; }
|
||||||
|
}
|
||||||
|
else if (currentMetersKind == Entities.MetersKind.Combined)
|
||||||
|
{
|
||||||
|
watermeterPictureBox1.Visible = false;
|
||||||
|
watermeterPictureBox3.Visible = false;
|
||||||
|
watermeterPictureBox5.Visible = false;
|
||||||
|
|
||||||
|
sensor1Label.Text = "---";
|
||||||
|
sensor2Label.Text = "---";
|
||||||
|
watermeterPictureBox2.Visible = true;
|
||||||
|
watermeterPictureBox1z.Visible = true;
|
||||||
|
groupBox1z.Visible = true;
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 4)
|
||||||
|
{
|
||||||
|
watermeterPictureBox4.Visible = true;
|
||||||
|
watermeterPictureBox2z.Visible = true;
|
||||||
|
groupBox3.Visible = true;
|
||||||
|
groupBox4.Visible = true;
|
||||||
|
groupBox2z.Visible = true;
|
||||||
|
sensor3Label.Text = "---";
|
||||||
|
sensor4Label.Text = "---";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
watermeterPictureBox4.Visible = false;
|
||||||
|
watermeterPictureBox2z.Visible = false;
|
||||||
|
groupBox3.Visible = false;
|
||||||
|
groupBox4.Visible = false;
|
||||||
|
groupBox2z.Visible = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 6)
|
||||||
|
{
|
||||||
|
watermeterPictureBox6.Visible = true;
|
||||||
|
watermeterPictureBox3z.Visible = true;
|
||||||
|
groupBox5.Visible = true;
|
||||||
|
groupBox6.Visible = true;
|
||||||
|
groupBox3z.Visible = true;
|
||||||
|
sensor5Label.Text = "---";
|
||||||
|
sensor6Label.Text = "---";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
watermeterPictureBox6.Visible = false;
|
||||||
|
watermeterPictureBox3z.Visible = false;
|
||||||
|
groupBox5.Visible = false;
|
||||||
|
groupBox6.Visible = false;
|
||||||
|
groupBox3z.Visible = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Called when a new procedure or a new test procedure is selected
|
||||||
|
/// </summary>
|
||||||
|
void ResetReadings()
|
||||||
|
{
|
||||||
|
/// Top part
|
||||||
|
airTempLabel.Text = "---";
|
||||||
|
airPressLabel.Text = "---";
|
||||||
|
airHumiLabel.Text = "---";
|
||||||
|
|
||||||
|
refPulsesLabel.Text = "---";
|
||||||
|
refFreqLabel.Text = "---";
|
||||||
|
refFlowLabel.Text = "---";
|
||||||
|
refVolumeLabel.Text = "---";
|
||||||
|
|
||||||
|
regValvePosLabel.Text = "---";
|
||||||
|
tDivLabel.Text = "---";
|
||||||
|
|
||||||
|
tInLabel.Text = "---";
|
||||||
|
tOutLabel.Text = "---";
|
||||||
|
prInLabel.Text = "---";
|
||||||
|
prOutLabel.Text = "---";
|
||||||
|
|
||||||
|
massLabel.Text = "---";
|
||||||
|
massDiffLabel.Text = "---";
|
||||||
|
volumeCtvLabel.Text = "---";
|
||||||
|
refErrorLabel.Text = "---";
|
||||||
|
|
||||||
|
/// Meters
|
||||||
|
pulses1Label.Text = "---";
|
||||||
|
refPulses1Label.Text = "---";
|
||||||
|
volume1Label.Text = "---";
|
||||||
|
error1Label.Text = "---";
|
||||||
|
passed1Label.Text = "---";
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 2)
|
||||||
|
{
|
||||||
|
pulses2Label.Text = "---";
|
||||||
|
refPulses2Label.Text = "---";
|
||||||
|
volume2Label.Text = "---";
|
||||||
|
error2Label.Text = "---";
|
||||||
|
passed2Label.Text = "---";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (currentMetersKind == Entities.MetersKind.Combined && Program.WMsCount >= 2)
|
||||||
|
{
|
||||||
|
volume1zLabel.Text = "---";
|
||||||
|
error1zLabel.Text = "---";
|
||||||
|
passed1zLabel.Text = "---";
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((currentMetersKind == Entities.MetersKind.Single && Program.WMsCount >= 3) ||
|
||||||
|
(currentMetersKind == Entities.MetersKind.Combined && Program.WMsCount >= 4))
|
||||||
|
{
|
||||||
|
pulses3Label.Text = "---";
|
||||||
|
refPulses3Label.Text = "---";
|
||||||
|
volume3Label.Text = "---";
|
||||||
|
error3Label.Text = "---";
|
||||||
|
passed3Label.Text = "---";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 4)
|
||||||
|
{
|
||||||
|
pulses4Label.Text = "---";
|
||||||
|
refPulses4Label.Text = "---";
|
||||||
|
volume4Label.Text = "---";
|
||||||
|
error4Label.Text = "---";
|
||||||
|
passed4Label.Text = "---";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (currentMetersKind == Entities.MetersKind.Combined && Program.WMsCount >= 4)
|
||||||
|
{
|
||||||
|
volume2zLabel.Text = "---";
|
||||||
|
error2zLabel.Text = "---";
|
||||||
|
passed2zLabel.Text = "---";
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((currentMetersKind == Entities.MetersKind.Single && Program.WMsCount >= 5) ||
|
||||||
|
(currentMetersKind == Entities.MetersKind.Combined && Program.WMsCount >= 6))
|
||||||
|
{
|
||||||
|
pulses5Label.Text = "---";
|
||||||
|
refPulses5Label.Text = "---";
|
||||||
|
volume5Label.Text = "---";
|
||||||
|
error5Label.Text = "---";
|
||||||
|
passed5Label.Text = "---";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 6)
|
||||||
|
{
|
||||||
|
pulses6Label.Text = "---";
|
||||||
|
refPulses6Label.Text = "---";
|
||||||
|
volume6Label.Text = "---";
|
||||||
|
error6Label.Text = "---";
|
||||||
|
passed6Label.Text = "---";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (currentMetersKind == Entities.MetersKind.Combined && Program.WMsCount >= 6)
|
||||||
|
{
|
||||||
|
volume3zLabel.Text = "---";
|
||||||
|
error3zLabel.Text = "---";
|
||||||
|
passed3zLabel.Text = "---";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void OnProcedureSelected(object sender, ProcedureSelectedEventArgs args)
|
||||||
|
{
|
||||||
|
currentMetersKind = args.Procedure.MetersKind;
|
||||||
|
ResetLabelsAndTargetVals();
|
||||||
|
ResetReadings();
|
||||||
|
Invalidate();
|
||||||
|
}
|
||||||
|
|
||||||
|
void OnTestSelected(object sender, TestSelectedEventArgs args)
|
||||||
|
{
|
||||||
|
/// Readings and target values
|
||||||
|
ResetReadings();
|
||||||
|
|
||||||
|
/// Target values
|
||||||
|
targetFlowLowLabel.Text = args.Test.Qfrom.ToString("F3");
|
||||||
|
targetFlowHighLabel.Text = args.Test.Qto.ToString("F3");
|
||||||
|
targetVolumeLabel.Text = args.Test.Volume.ToString("F1");
|
||||||
|
targetRefCountLabel.Text = args.TotalPulses.ToString();
|
||||||
|
estmtdTimeLabel.Text = args.Test.TstTime.ToString("F1");
|
||||||
|
|
||||||
|
/// Names of virtual bench components
|
||||||
|
if (args.BenchPath.PressIn != null) prInCmpntLabel.Text = args.BenchPath.PressIn.Name;
|
||||||
|
if (args.BenchPath.PressOut != null) prOutCmpntLabel.Text = args.BenchPath.PressOut.Name;
|
||||||
|
if (args.BenchPath.TempIn != null) tInCmpntLabel.Text = args.BenchPath.TempIn.Name;
|
||||||
|
if (args.BenchPath.TempOut != null) tOutCmpntLabel.Text = args.BenchPath.TempOut.Name;
|
||||||
|
if (args.OutputPath.TempDiv != null) tDivCmpntLabel.Text = args.OutputPath.TempDiv.Name;
|
||||||
|
if (args.OutputPath.FlowMeter != null) refFlowCmpntLabel.Text = args.OutputPath.FlowMeter.Name;
|
||||||
|
if (args.OutputPath.RegulValve != null) regValveCmpntLabel.Text = args.OutputPath.RegulValve.Name;
|
||||||
|
if (args.OutputPath.Balance != null) scaleCmpntLabel.Text = args.OutputPath.Balance.Name;
|
||||||
|
|
||||||
|
sensor1Label.Text = (args.MetersPath.RegisterReaders[0] == null) ? "" : args.MetersPath.RegisterReaders[0].Cfg.Name;
|
||||||
|
if (Program.WMsCount >= 2)
|
||||||
|
{
|
||||||
|
sensor2Label.Text = (args.MetersPath.RegisterReaders[1] == null) ? "" : args.MetersPath.RegisterReaders[1].Cfg.Name;
|
||||||
|
}
|
||||||
|
if (Program.WMsCount >= 3)
|
||||||
|
{
|
||||||
|
sensor3Label.Text = (args.MetersPath.RegisterReaders[2] == null) ? "" : args.MetersPath.RegisterReaders[2].Cfg.Name;
|
||||||
|
}
|
||||||
|
if (Program.WMsCount >= 4)
|
||||||
|
{
|
||||||
|
sensor4Label.Text = (args.MetersPath.RegisterReaders[3] == null) ? "" : args.MetersPath.RegisterReaders[3].Cfg.Name;
|
||||||
|
}
|
||||||
|
if (Program.WMsCount >= 5)
|
||||||
|
{
|
||||||
|
sensor5Label.Text = (args.MetersPath.RegisterReaders[4] == null) ? "" : args.MetersPath.RegisterReaders[4].Cfg.Name;
|
||||||
|
}
|
||||||
|
if (Program.WMsCount >= 6)
|
||||||
|
{
|
||||||
|
sensor6Label.Text = (args.MetersPath.RegisterReaders[5] == null) ? "" : args.MetersPath.RegisterReaders[5].Cfg.Name;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (args.FeedingPath != null && (args.FeedingPath.Pump is BenchControl.GenericDevices.IPumpFM))
|
||||||
|
{
|
||||||
|
pumpPctTextBox.Visible = true;
|
||||||
|
pumpPctTextBox.Text = (args.FeedingPath.Pump as BenchControl.GenericDevices.IPumpFM).Power.ToString("F0") + " %";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
pumpPctTextBox.Visible = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void OnTestProgress(object sender, TestProgressEventArgs args)
|
||||||
|
{
|
||||||
|
/// Top part
|
||||||
|
airTempLabel.Text = args.AmbientTemp.ToString();
|
||||||
|
airPressLabel.Text = args.AmbientPressure.ToString();
|
||||||
|
airHumiLabel.Text = args.AmbientHumidity.ToString();
|
||||||
|
|
||||||
|
refPulsesLabel.Text = args.RefPulses.ToString();
|
||||||
|
refFreqLabel.Text = args.FlowMtrFreq.ToString();
|
||||||
|
refFlowLabel.Text = Utils.FloatToStr(args.Flow.Val, 4);
|
||||||
|
refVolumeLabel.Text = args.Volume.ToString();
|
||||||
|
|
||||||
|
//regValvePosLabel.Text = args.RegValvePos.ToString();
|
||||||
|
tDivLabel.Text = args.Tdiv.ToString();
|
||||||
|
|
||||||
|
/// Bottom part
|
||||||
|
pulses1Label.Text = args.TestResult.Meters[0].PulsesMeter.ToString();
|
||||||
|
refPulses1Label.Text = args.TestResult.Meters[0].PulsesMaster.ToString();
|
||||||
|
volume1Label.Text = args.TestResult.Meters[0].VolumeMeter.ToString();
|
||||||
|
error1Label.Text = args.TestResult.Meters[0].VolumeErrorPct.ToString();
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 2)
|
||||||
|
{
|
||||||
|
pulses2Label.Text = args.TestResult.Meters[1].PulsesMeter.ToString();
|
||||||
|
refPulses2Label.Text = args.TestResult.Meters[1].PulsesMaster.ToString();
|
||||||
|
volume2Label.Text = args.TestResult.Meters[1].VolumeMeter.ToString();
|
||||||
|
error2Label.Text = args.TestResult.Meters[1].VolumeErrorPct.ToString();
|
||||||
|
}
|
||||||
|
if (currentMetersKind == Entities.MetersKind.Combined && Program.WMsCount >= 2)
|
||||||
|
{
|
||||||
|
volume1zLabel.Text = args.TestResult.CombinedMeters[0].VolumeMeter.ToString();
|
||||||
|
error1zLabel.Text = args.TestResult.CombinedMeters[0].VolumeErrorPct.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((currentMetersKind == Entities.MetersKind.Single && Program.WMsCount >= 3) ||
|
||||||
|
(currentMetersKind == Entities.MetersKind.Combined && Program.WMsCount >= 4))
|
||||||
|
{
|
||||||
|
pulses3Label.Text = args.TestResult.Meters[2].PulsesMeter.ToString();
|
||||||
|
refPulses3Label.Text = args.TestResult.Meters[2].PulsesMaster.ToString();
|
||||||
|
volume3Label.Text = args.TestResult.Meters[2].VolumeMeter.ToString();
|
||||||
|
error3Label.Text = args.TestResult.Meters[2].VolumeErrorPct.ToString();
|
||||||
|
}
|
||||||
|
if (Program.WMsCount >= 4)
|
||||||
|
{
|
||||||
|
pulses4Label.Text = args.TestResult.Meters[3].PulsesMeter.ToString();
|
||||||
|
refPulses4Label.Text = args.TestResult.Meters[3].PulsesMaster.ToString();
|
||||||
|
volume4Label.Text = args.TestResult.Meters[3].VolumeMeter.ToString();
|
||||||
|
error4Label.Text = args.TestResult.Meters[3].VolumeErrorPct.ToString();
|
||||||
|
}
|
||||||
|
if (currentMetersKind == Entities.MetersKind.Combined && Program.WMsCount >= 4)
|
||||||
|
{
|
||||||
|
volume2zLabel.Text = args.TestResult.CombinedMeters[1].VolumeMeter.ToString();
|
||||||
|
error2zLabel.Text = args.TestResult.CombinedMeters[1].VolumeErrorPct.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((currentMetersKind == Entities.MetersKind.Single && Program.WMsCount >= 5) ||
|
||||||
|
(currentMetersKind == Entities.MetersKind.Combined && Program.WMsCount >= 6))
|
||||||
|
{
|
||||||
|
pulses5Label.Text = args.TestResult.Meters[4].PulsesMeter.ToString();
|
||||||
|
refPulses5Label.Text = args.TestResult.Meters[4].PulsesMaster.ToString();
|
||||||
|
volume5Label.Text = args.TestResult.Meters[4].VolumeMeter.ToString();
|
||||||
|
error5Label.Text = args.TestResult.Meters[4].VolumeErrorPct.ToString();
|
||||||
|
}
|
||||||
|
if (Program.WMsCount >= 6)
|
||||||
|
{
|
||||||
|
pulses6Label.Text = args.TestResult.Meters[5].PulsesMeter.ToString();
|
||||||
|
refPulses6Label.Text = args.TestResult.Meters[5].PulsesMaster.ToString();
|
||||||
|
volume6Label.Text = args.TestResult.Meters[5].VolumeMeter.ToString();
|
||||||
|
error6Label.Text = args.TestResult.Meters[5].VolumeErrorPct.ToString();
|
||||||
|
}
|
||||||
|
if (currentMetersKind == Entities.MetersKind.Combined && Program.WMsCount >= 6)
|
||||||
|
{
|
||||||
|
volume3zLabel.Text = args.TestResult.CombinedMeters[2].VolumeMeter.ToString();
|
||||||
|
error3zLabel.Text = args.TestResult.CombinedMeters[2].VolumeErrorPct.ToString();
|
||||||
|
}
|
||||||
|
|
||||||
|
tInLabel.Text = args.Tin.ToString();
|
||||||
|
tOutLabel.Text = args.Tout.ToString();
|
||||||
|
prInLabel.Text = args.Pin.ToString();
|
||||||
|
prOutLabel.Text = args.Pout.ToString();
|
||||||
|
|
||||||
|
massLabel.Text = args.Mass.ToString();
|
||||||
|
|
||||||
|
if (args.Mass.Valid && args.StartMass.Valid)
|
||||||
|
{
|
||||||
|
massDiffLabel.Text = (args.Mass.Val - args.StartMass.Val).ToString(args.Mass.Format);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (pumpOn != args.PumpOn || diverterToTank != args.DivToTank)
|
||||||
|
{
|
||||||
|
//if (pumpOn != args.PumpOn)
|
||||||
|
//{
|
||||||
|
// if (pumpOn) pumpPictureBox.Image = System.Resources.
|
||||||
|
// else pumpPictureBox.Image = System.Resources.
|
||||||
|
//}
|
||||||
|
pumpOn = args.PumpOn;
|
||||||
|
diverterToTank = args.DivToTank;
|
||||||
|
Invalidate();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void OnTestCompleted(object sender, TestCompletedEventArgs args)
|
||||||
|
{
|
||||||
|
Entities.TestResult tRes = args.TestResult;
|
||||||
|
|
||||||
|
tInLabel.Text = tRes.TempInAvrg.ToString("F2");
|
||||||
|
tOutLabel.Text = tRes.TempOutAvrg.ToString("F2");
|
||||||
|
tDivLabel.Text = tRes.TempDivAvrg.ToString("F2");
|
||||||
|
prInLabel.Text = tRes.PressInAvrg.ToString("F1");
|
||||||
|
prOutLabel.Text = tRes.PressOutAvrg.ToString("F1");
|
||||||
|
airTempLabel.Text = tRes.AmbientTempAve.ToString("F1");
|
||||||
|
airPressLabel.Text = tRes.AmbientPressAve.ToString("F1");
|
||||||
|
airHumiLabel.Text = tRes.AmbientHumiAve.ToString("F1");
|
||||||
|
|
||||||
|
refPulsesLabel.Text = tRes.PulsesMaster.ToString("F0");
|
||||||
|
//refFreqLabel.Text = tstRslt.
|
||||||
|
refFlowLabel.Text = Utils.FloatToStr(tRes.FlowMass / 1000.0f, 4);
|
||||||
|
|
||||||
|
refVolumeLabel.Text = tRes.VolumeCTV.ToString("F2");
|
||||||
|
//regValvePosLabel.Text = tstRslt.
|
||||||
|
//massLabel.Text = tstRslt.
|
||||||
|
|
||||||
|
volumeCtvLabel.Text = args.TestResult.VolumeCTV.ToString("F1");
|
||||||
|
refErrorLabel.Text = (tRes.ErrorMaster == 0) ? "---" : tRes.ErrorMaster.ToString("F2");
|
||||||
|
|
||||||
|
if (tRes.MetersKind == Entities.MetersKind.Single)
|
||||||
|
{
|
||||||
|
pulses1Label.Text = tRes.Meters[0].PulsesMeter.ToString("F0");
|
||||||
|
refPulses1Label.Text = tRes.Meters[0].PulsesMaster.ToString("F0");
|
||||||
|
volume1Label.Text = tRes.Meters[0].VolumeMeter.ToString("F2");
|
||||||
|
error1Label.Text = tRes.Meters[0].VolumeErrorPct.ToString("F2");
|
||||||
|
passed1Label.Text = tRes.Meters[0].Passed ? Strings.Passed : Strings.Failed;
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 2)
|
||||||
|
{
|
||||||
|
pulses2Label.Text = tRes.Meters[1].PulsesMeter.ToString("F0");
|
||||||
|
refPulses2Label.Text = tRes.Meters[1].PulsesMaster.ToString("F0");
|
||||||
|
volume2Label.Text = tRes.Meters[1].VolumeMeter.ToString("F2");
|
||||||
|
error2Label.Text = tRes.Meters[1].VolumeErrorPct.ToString("F2");
|
||||||
|
passed2Label.Text = tRes.Meters[1].Passed ? Strings.Passed : Strings.Failed;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 3)
|
||||||
|
{
|
||||||
|
pulses3Label.Text = tRes.Meters[2].PulsesMeter.ToString("F0");
|
||||||
|
refPulses3Label.Text = tRes.Meters[2].PulsesMaster.ToString("F0");
|
||||||
|
volume3Label.Text = tRes.Meters[2].VolumeMeter.ToString("F2");
|
||||||
|
error3Label.Text = tRes.Meters[2].VolumeErrorPct.ToString("F2");
|
||||||
|
passed3Label.Text = tRes.Meters[2].Passed ? Strings.Passed : Strings.Failed;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 4)
|
||||||
|
{
|
||||||
|
pulses4Label.Text = tRes.Meters[3].PulsesMeter.ToString("F0");
|
||||||
|
refPulses4Label.Text = tRes.Meters[3].PulsesMaster.ToString("F0");
|
||||||
|
volume4Label.Text = tRes.Meters[3].VolumeMeter.ToString("F2");
|
||||||
|
error4Label.Text = tRes.Meters[3].VolumeErrorPct.ToString("F2");
|
||||||
|
passed4Label.Text = tRes.Meters[3].Passed ? Strings.Passed : Strings.Failed;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 5)
|
||||||
|
{
|
||||||
|
pulses5Label.Text = tRes.Meters[4].PulsesMeter.ToString("F0");
|
||||||
|
refPulses5Label.Text = tRes.Meters[4].PulsesMaster.ToString("F0");
|
||||||
|
volume5Label.Text = tRes.Meters[4].VolumeMeter.ToString("F2");
|
||||||
|
error5Label.Text = tRes.Meters[4].VolumeErrorPct.ToString("F2");
|
||||||
|
passed5Label.Text = tRes.Meters[4].Passed ? Strings.Passed : Strings.Failed;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Program.WMsCount >= 6)
|
||||||
|
{
|
||||||
|
pulses6Label.Text = tRes.Meters[5].PulsesMeter.ToString("F0");
|
||||||
|
refPulses6Label.Text = tRes.Meters[5].PulsesMaster.ToString("F0");
|
||||||
|
volume6Label.Text = tRes.Meters[5].VolumeMeter.ToString("F2");
|
||||||
|
error6Label.Text = tRes.Meters[5].VolumeErrorPct.ToString("F2");
|
||||||
|
passed6Label.Text = tRes.Meters[5].Passed ? Strings.Passed : Strings.Failed;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (tRes.MetersKind == Entities.MetersKind.Combined)
|
||||||
|
{
|
||||||
|
if (Program.WMsCount >= 2)
|
||||||
|
{
|
||||||
|
pulses1Label.Text = tRes.Meters[0].PulsesMeter.ToString("F0");
|
||||||
|
pulses2Label.Text = tRes.Meters[1].PulsesMeter.ToString("F0");
|
||||||
|
//pulses1zLabel.Text = tRes.CombinedMeters[0].PulsesMeter.ToString("F0");
|
||||||
|
refPulses1Label.Text = tRes.Meters[0].PulsesMaster.ToString("F0");
|
||||||
|
refPulses2Label.Text = tRes.Meters[1].PulsesMaster.ToString("F0");
|
||||||
|
//refPulses1zLabel.Text = tRes.CombinedMeters[0].PulsesMaster.ToString("F0");
|
||||||
|
volume1Label.Text = tRes.Meters[0].VolumeMeter.ToString("F2");
|
||||||
|
volume2Label.Text = tRes.Meters[1].VolumeMeter.ToString("F2");
|
||||||
|
volume1zLabel.Text = tRes.CombinedMeters[0].VolumeMeter.ToString("F2");
|
||||||
|
error1Label.Text = tRes.Meters[0].VolumeErrorPct.ToString("F2");
|
||||||
|
error2Label.Text = tRes.Meters[1].VolumeErrorPct.ToString("F2");
|
||||||
|
error1zLabel.Text = tRes.CombinedMeters[0].VolumeErrorPct.ToString("F2");
|
||||||
|
passed1Label.Text = tRes.Meters[0].Passed ? Strings.Passed : Strings.Failed;
|
||||||
|
passed2Label.Text = tRes.Meters[1].Passed ? Strings.Passed : Strings.Failed;
|
||||||
|
passed1zLabel.Text = tRes.CombinedMeters[0].Passed ? Strings.Passed : Strings.Failed;
|
||||||
|
}
|
||||||
|
if (Program.WMsCount >= 4)
|
||||||
|
{
|
||||||
|
pulses3Label.Text = tRes.Meters[2].PulsesMeter.ToString("F0");
|
||||||
|
pulses4Label.Text = tRes.Meters[3].PulsesMeter.ToString("F0");
|
||||||
|
//pulses2zLabel.Text = tRes.CombinedMeters[1].PulsesMeter.ToString("F0");
|
||||||
|
refPulses3Label.Text = tRes.Meters[2].PulsesMaster.ToString("F0");
|
||||||
|
refPulses4Label.Text = tRes.Meters[3].PulsesMaster.ToString("F0");
|
||||||
|
//refPulses2zLabel.Text = tRes.CombinedMeters[1].PulsesMaster.ToString("F0");
|
||||||
|
volume3Label.Text = tRes.Meters[2].VolumeMeter.ToString("F2");
|
||||||
|
volume4Label.Text = tRes.Meters[3].VolumeMeter.ToString("F2");
|
||||||
|
volume2zLabel.Text = tRes.CombinedMeters[1].VolumeMeter.ToString("F2");
|
||||||
|
error3Label.Text = tRes.Meters[2].VolumeErrorPct.ToString("F2");
|
||||||
|
error4Label.Text = tRes.Meters[3].VolumeErrorPct.ToString("F2");
|
||||||
|
error2zLabel.Text = tRes.CombinedMeters[1].VolumeErrorPct.ToString("F2");
|
||||||
|
passed3Label.Text = tRes.Meters[2].Passed ? Strings.Passed : Strings.Failed;
|
||||||
|
passed4Label.Text = tRes.Meters[3].Passed ? Strings.Passed : Strings.Failed;
|
||||||
|
passed2zLabel.Text = tRes.CombinedMeters[1].Passed ? Strings.Passed : Strings.Failed;
|
||||||
|
}
|
||||||
|
if (Program.WMsCount >= 6)
|
||||||
|
{
|
||||||
|
pulses5Label.Text = tRes.Meters[4].PulsesMeter.ToString("F0");
|
||||||
|
pulses6Label.Text = tRes.Meters[5].PulsesMeter.ToString("F0");
|
||||||
|
//pulses3zLabel.Text = tRes.CombinedMeters[2].PulsesMeter.ToString("F0");
|
||||||
|
refPulses5Label.Text = tRes.Meters[4].PulsesMaster.ToString("F0");
|
||||||
|
refPulses6Label.Text = tRes.Meters[5].PulsesMaster.ToString("F0");
|
||||||
|
//refPulses3zLabel.Text = tRes.CombinedMeters[2].PulsesMaster.ToString("F0");
|
||||||
|
volume5Label.Text = tRes.Meters[4].VolumeMeter.ToString("F2");
|
||||||
|
volume6Label.Text = tRes.Meters[5].VolumeMeter.ToString("F2");
|
||||||
|
volume3zLabel.Text = tRes.CombinedMeters[2].VolumeMeter.ToString("F2");
|
||||||
|
error5Label.Text = tRes.Meters[4].VolumeErrorPct.ToString("F2");
|
||||||
|
error6Label.Text = tRes.Meters[5].VolumeErrorPct.ToString("F2");
|
||||||
|
error3zLabel.Text = tRes.CombinedMeters[2].VolumeErrorPct.ToString("F2");
|
||||||
|
passed5Label.Text = tRes.Meters[4].Passed ? Strings.Passed : Strings.Failed;
|
||||||
|
passed6Label.Text = tRes.Meters[5].Passed ? Strings.Passed : Strings.Failed;
|
||||||
|
passed3zLabel.Text = tRes.CombinedMeters[2].Passed ? Strings.Passed : Strings.Failed;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void OnProcedureCompleted(object sender, ProcedureCompletedEventArgs args)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ProcessTabPageCtrl_Paint(object sender, PaintEventArgs e)
|
||||||
|
{
|
||||||
|
System.Drawing.Graphics formGraphics = this.CreateGraphics();
|
||||||
|
|
||||||
|
System.Drawing.SolidBrush filledBrush = new System.Drawing.SolidBrush(System.Drawing.Color.Blue);
|
||||||
|
System.Drawing.SolidBrush emptyBrush = new System.Drawing.SolidBrush(System.Drawing.Color.Gray);
|
||||||
|
System.Drawing.SolidBrush benchBrush = (pumpOn ? filledBrush : emptyBrush);
|
||||||
|
|
||||||
|
int diam = 14; // pipe diameter (pixels)
|
||||||
|
int left = 20; // left-most pipe x-coordinate
|
||||||
|
int top = 14; // top-most pipe y-coordinate
|
||||||
|
int topLeft = 876;
|
||||||
|
int topRight = 966;
|
||||||
|
int divTop = 40;
|
||||||
|
int bottom = 504; // bottom-most pipe y-coordinate
|
||||||
|
int benchTop = 378; // bench-pipe top y-coordinate
|
||||||
|
int pumpLeft = 779;
|
||||||
|
int pumpWdth = 38;
|
||||||
|
|
||||||
|
/// Pipes
|
||||||
|
formGraphics.FillRectangle(filledBrush,new Rectangle(pumpLeft+pumpWdth, bottom-diam, 65, diam)); // tank -> pump
|
||||||
|
formGraphics.FillRectangle(benchBrush, new Rectangle(left, bottom-diam, pumpLeft-left, diam)); // pump ->bench horizontal
|
||||||
|
formGraphics.FillRectangle(benchBrush, new Rectangle(left, benchTop, diam, bottom-benchTop)); // ->bench vertical
|
||||||
|
formGraphics.FillRectangle(benchBrush, new Rectangle(left + diam, benchTop, topLeft-left, diam)); // bench horizontal
|
||||||
|
formGraphics.FillRectangle(benchBrush, new Rectangle(topLeft, top + diam, diam, benchTop-top-diam)); // bench -> top vertical
|
||||||
|
formGraphics.FillRectangle(benchBrush, new Rectangle(topLeft, top, topRight-topLeft, diam)); // top horizontal
|
||||||
|
formGraphics.FillRectangle(benchBrush, new Rectangle(topRight-diam, top+diam, diam, divTop-top-diam)); // top -> diverter vertical
|
||||||
|
|
||||||
|
/// Combined meters bypasses
|
||||||
|
if (watermeterPictureBox1z.Visible) PaintBypass(formGraphics, benchBrush, 186, benchTop + diam);
|
||||||
|
if (watermeterPictureBox2z.Visible) PaintBypass(formGraphics, benchBrush, 470, benchTop + diam);
|
||||||
|
if (watermeterPictureBox3z.Visible) PaintBypass(formGraphics, benchBrush, 754, benchTop + diam);
|
||||||
|
|
||||||
|
/// Diverter
|
||||||
|
int displacement = diverterToTank ? 25 : -25;
|
||||||
|
Point[] points = new Point[4];
|
||||||
|
points[0].X = topRight - diam;
|
||||||
|
points[0].Y = divTop;
|
||||||
|
points[1].X = topRight;
|
||||||
|
points[1].Y = divTop;
|
||||||
|
points[2].X = topRight + displacement;
|
||||||
|
points[2].Y = divTop + 50;
|
||||||
|
points[3].X = topRight - diam + displacement;
|
||||||
|
points[3].Y = divTop + 50;
|
||||||
|
formGraphics.FillPolygon(benchBrush, points);
|
||||||
|
|
||||||
|
/// Sink
|
||||||
|
formGraphics.FillEllipse(emptyBrush, topRight - diam / 2 - 45, divTop + 50, 40, 30);
|
||||||
|
formGraphics.DrawEllipse(Pens.Black, topRight - diam / 2 - 45, divTop + 50, 40, 30);
|
||||||
|
|
||||||
|
/// Tank
|
||||||
|
formGraphics.DrawRectangle(Pens.Black, topRight - diam / 2, divTop + 51, 60, 80);
|
||||||
|
|
||||||
|
|
||||||
|
emptyBrush.Dispose();
|
||||||
|
filledBrush.Dispose();
|
||||||
|
formGraphics.Dispose();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void PaintBypass(System.Drawing.Graphics formGraphics, System.Drawing.SolidBrush brush, int startX, int startY)
|
||||||
|
{
|
||||||
|
int w = 80;
|
||||||
|
int h = 43;
|
||||||
|
int diam = 10; // pipe diameter (pixels)
|
||||||
|
|
||||||
|
formGraphics.FillRectangle(brush, new Rectangle(startX, startY, diam, h - diam));
|
||||||
|
formGraphics.FillRectangle(brush, new Rectangle(startX, startY + h - diam, w, diam));
|
||||||
|
formGraphics.FillRectangle(brush, new Rectangle(startX + w - diam, startY, diam, h));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
+2
-2
@@ -3,7 +3,7 @@
|
|||||||
///
|
///
|
||||||
namespace TBF.Screens
|
namespace TBF.Screens
|
||||||
{
|
{
|
||||||
partial class ProcessTabPageCtrl
|
partial class ProcessTabPageCtrl6
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Required designer variable.
|
/// Required designer variable.
|
||||||
@@ -31,7 +31,7 @@ namespace TBF.Screens
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
private void InitializeComponent()
|
private void InitializeComponent()
|
||||||
{
|
{
|
||||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ProcessTabPageCtrl));
|
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ProcessTabPageCtrl6));
|
||||||
this.sensor1Label = new System.Windows.Forms.Label();
|
this.sensor1Label = new System.Windows.Forms.Label();
|
||||||
this.pulses1Label = new System.Windows.Forms.Label();
|
this.pulses1Label = new System.Windows.Forms.Label();
|
||||||
this.refPulses1Label = new System.Windows.Forms.Label();
|
this.refPulses1Label = new System.Windows.Forms.Label();
|
||||||
+3
-3
@@ -12,9 +12,9 @@ using TBF.Resources;
|
|||||||
|
|
||||||
namespace TBF.Screens
|
namespace TBF.Screens
|
||||||
{
|
{
|
||||||
public partial class ProcessTabPageCtrl : UserControl
|
public partial class ProcessTabPageCtrl6 : UserControl
|
||||||
{
|
{
|
||||||
static readonly ILog log = LogManager.GetLogger(typeof(ProcessTabPageCtrl));
|
static readonly ILog log = LogManager.GetLogger(typeof(ProcessTabPageCtrl6));
|
||||||
|
|
||||||
Entities.MetersKind currentMetersKind;
|
Entities.MetersKind currentMetersKind;
|
||||||
|
|
||||||
@@ -24,7 +24,7 @@ namespace TBF.Screens
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Constructor, initializes anonymous event handlers
|
/// Constructor, initializes anonymous event handlers
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ProcessTabPageCtrl()
|
public ProcessTabPageCtrl6()
|
||||||
{
|
{
|
||||||
currentMetersKind = Entities.MetersKind.Single;
|
currentMetersKind = Entities.MetersKind.Single;
|
||||||
|
|
||||||
@@ -0,0 +1,327 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<root>
|
||||||
|
<!--
|
||||||
|
Microsoft ResX Schema
|
||||||
|
|
||||||
|
Version 2.0
|
||||||
|
|
||||||
|
The primary goals of this format is to allow a simple XML format
|
||||||
|
that is mostly human readable. The generation and parsing of the
|
||||||
|
various data types are done through the TypeConverter classes
|
||||||
|
associated with the data types.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
... ado.net/XML headers & schema ...
|
||||||
|
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||||
|
<resheader name="version">2.0</resheader>
|
||||||
|
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||||
|
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||||
|
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||||
|
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||||
|
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||||
|
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||||
|
</data>
|
||||||
|
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||||
|
<comment>This is a comment</comment>
|
||||||
|
</data>
|
||||||
|
|
||||||
|
There are any number of "resheader" rows that contain simple
|
||||||
|
name/value pairs.
|
||||||
|
|
||||||
|
Each data row contains a name, and value. The row also contains a
|
||||||
|
type or mimetype. Type corresponds to a .NET class that support
|
||||||
|
text/value conversion through the TypeConverter architecture.
|
||||||
|
Classes that don't support this are serialized and stored with the
|
||||||
|
mimetype set.
|
||||||
|
|
||||||
|
The mimetype is used for serialized objects, and tells the
|
||||||
|
ResXResourceReader how to depersist the object. This is currently not
|
||||||
|
extensible. For a given mimetype the value must be set accordingly:
|
||||||
|
|
||||||
|
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||||
|
that the ResXResourceWriter will generate, however the reader can
|
||||||
|
read any of the formats listed below.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.binary.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.soap.base64
|
||||||
|
value : The object must be serialized with
|
||||||
|
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
|
||||||
|
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||||
|
value : The object must be serialized into a byte array
|
||||||
|
: using a System.ComponentModel.TypeConverter
|
||||||
|
: and then encoded with base64 encoding.
|
||||||
|
-->
|
||||||
|
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||||
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||||
|
<xsd:element name="root" msdata:IsDataSet="true">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:choice maxOccurs="unbounded">
|
||||||
|
<xsd:element name="metadata">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="assembly">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:attribute name="alias" type="xsd:string" />
|
||||||
|
<xsd:attribute name="name" type="xsd:string" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="data">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||||
|
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||||
|
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||||
|
<xsd:attribute ref="xml:space" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="resheader">
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:sequence>
|
||||||
|
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||||
|
</xsd:sequence>
|
||||||
|
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:choice>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
</xsd:schema>
|
||||||
|
<resheader name="resmimetype">
|
||||||
|
<value>text/microsoft-resx</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="version">
|
||||||
|
<value>2.0</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="reader">
|
||||||
|
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<resheader name="writer">
|
||||||
|
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||||
|
</resheader>
|
||||||
|
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
|
<data name="reservoirPictureBox.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAAI4AAABtCAYAAAB3LVkkAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADrwAAA68AZW8ckkAAAEuSURBVHhe7dIxDoAwEAQx/v/pQFJQBaRM7ZN8zbZzPTcg
|
||||||
|
mG/AAeGQCIdEOCTCIREOiXBIhEMiHBLhkAiHRDgkwiERDolwSIRDIhwS4ZAIh0Q4JMIhEQ6JcEiEQyIc
|
||||||
|
EuGQCIdEOCTCIREOiXBIhEMiHBLhkAiHRDgkwiERDolwSIRDIhwS4ZAIh0Q4JMIhEQ6JcEiEQyIcEuGQ
|
||||||
|
CIdEOCTCIREOiXBIhEMiHBLhkAiHRDgkwiERDolwSIRDIhwS4ZAIh0Q4JMIhEQ6JcEiEQyIcEuGQCIdE
|
||||||
|
OCTCIREOiXBIhEMiHJIVzm6AP8IhEQ6JcEiEQyIcEuGQCIdEOCTCIREOiXBIhEMiHBLhkKxw5tuN8EU4
|
||||||
|
JMIhEQ6JcEiEQyIcEuGQCIdEOCTCIXnDgRPXuAF1p5ji1T6jKwAAAABJRU5ErkJggg==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="pumpPictureBox.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAACYAAAAmCAYAAACoPemuAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADr8AAA6/ATgFUyQAAALTSURBVFhH7Ze9ajJBFIbXP0iRBAL+QMDa3hRqIbkAQSw1
|
||||||
|
iCRaWHgHuQBLwU7SpLBKaRmSXhOwScQmZW5AUqWb7Lt6ds7uHmMkO3x8kOKBXefMOw/O7jLHWq1W6jdE
|
||||||
|
IhFlWVYAqXYf9hbLZDIOXKJUKqlms+nCx+LxuFM/Ho/FvG38SGw6napGo+FZsN/v/4hqterOSaVSqtfr
|
||||||
|
iWv42SlWLBY9QoQkIcHFOMvlUlyP+FYsl8uJoUCSkNgmhi2W1iREsdFopMrlshtycmLZW2Cp62sdLElI
|
||||||
|
cLH7e0tdXOiMWCymKpVKYH0ginGp01NLKbXmt2KUc35uqcNDnTWfzwMOATG+fbe3OixMMfD+rrPwz/k9
|
||||||
|
PGL8Qef/FBGmGHh+1nl45haLRVAMnwQqwjPlDwFhiwFsK40PBoOgGP9O4UGXQkyIARoHATEaaLflycCU
|
||||||
|
GN5WqqnX6+Sjf4zFLPX0JE8GpsRALqezN+iboyN5EmFS7PFRZ2/QN9IEjkkxcHys8230jVTM+SdijYZc
|
||||||
|
zDEt9vGh823WF62WXMwxLQao1mZ98Se2A6q1WV/8ie2Aam30jVTIMS32f33HwM2NPIEwKYaD48GBzrfQ
|
||||||
|
80WjUecGx93PT3kiMCl2d6ezHXDEQDNKPzw8yBOBSTGqKRQKajKZ6PNYMpl0B3E+kiabEiuVdO5wOPQe
|
||||||
|
FNEh0yBaLCnAhNjbm85MJBKOi0fMudkUAJzF/SFhi728oAnRmbPZTBZD2w5rFOFFwJvCg8IWu7zUea1W
|
||||||
|
y/UAHjECfR5NQItFQWGJvb5a6upKZ7Xb7YCDKIa2nSYB2tYwxPBM8e0DkoMoBtC2838OnJ3pa0lCgovx
|
||||||
|
tw90Oh1xbbBVjECHzMMISUKCi3H8z5SfnWJo29Eh+4MlCQm/GF4u/vZtY6cYB80oLZDP51263a5Hho9l
|
||||||
|
s1mnHl90+nj+hL3EOOl02oFE/dB4rVYT53/PSn0BMb7xlEsaQlIAAAAASUVORK5CYII=
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="watermeterPictureBox1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAACYAAAAeCAYAAABAFGxuAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADr4AAA6+AepCscAAAAIGSURBVFhH7de/SwJhGAfwtwJpUlBwaVIEcXDVxcUxQaS1
|
||||||
|
QdLVwTnQv0AcGgUdo9U1dNAWHVwiEQKFaAkCwZqq5el53rvT03v8cXqeDQ0fjXu97/PFO+w9MZlMYFO1
|
||||||
|
Wg2EEJbg8vX+iy3i8vW2KHaEznbkgm63C6PRiJ1DtijmQLCjMRLg8/mgUqmwsw5UTEN5UfD7/ZDL5eZm
|
||||||
|
mSqWz+cxyMpimhZS7r12uy1n4d/GG3O5Y8QFWyWCTpCcRy8lRK3XeUJcoJVGaFrsXj34V9hYrFrtQSj0
|
||||||
|
wa4Z2VgsGh1Dq9WS79z6PBuLkUbjQZZLJN7Y9ZkVxYrFgQzZl3j83TBz5oDFms02uN3fhrmKAxbzer8M
|
||||||
|
M2dWFNsH7R4Lh+mXnf+MwsZi6fSLLBUMfrLr82wsVio9ssd5NhYzZ1rsEhXVg4dA3ybN12CnSCQCRCkY
|
||||||
|
UP0gLmAfnpGQHfQM+zGlIO257hAXZLUMJJPJuQ6yx+KBfr+P/3CreAIVTOoC9uEK8Q8mS3ew5XIZYrEY
|
||||||
|
nuhCN2qQlQZIQL1eZ+ev3VoHAgFwOOjSXqNXNXRXSqlOp8POJBvt+Xu9ngwS4lQN3oVy+egJybLHt2w2
|
||||||
|
K0OFOFeHmJFByn5+2eXTM1WMDIdD8Hg8coAQtyquCKGfHVq/kOekUik2k2O6mKZQKOBAKrea0+nE7Y2b
|
||||||
|
zVhuAr/Ce2bVcGWw1gAAAABJRU5ErkJggg==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="watermeterPictureBox2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAACYAAAAeCAYAAABAFGxuAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADr4AAA6+AepCscAAAAIGSURBVFhH7de/SwJhGAfwtwJpUlBwaVIEcXDVxcUxQaS1
|
||||||
|
QdLVwTnQv0AcGgUdo9U1dNAWHVwiEQKFaAkCwZqq5el53rvT03v8cXqeDQ0fjXu97/PFO+w9MZlMYFO1
|
||||||
|
Wg2EEJbg8vX+iy3i8vW2KHaEznbkgm63C6PRiJ1DtijmQLCjMRLg8/mgUqmwsw5UTEN5UfD7/ZDL5eZm
|
||||||
|
mSqWz+cxyMpimhZS7r12uy1n4d/GG3O5Y8QFWyWCTpCcRy8lRK3XeUJcoJVGaFrsXj34V9hYrFrtQSj0
|
||||||
|
wa4Z2VgsGh1Dq9WS79z6PBuLkUbjQZZLJN7Y9ZkVxYrFgQzZl3j83TBz5oDFms02uN3fhrmKAxbzer8M
|
||||||
|
M2dWFNsH7R4Lh+mXnf+MwsZi6fSLLBUMfrLr82wsVio9ssd5NhYzZ1rsEhXVg4dA3ybN12CnSCQCRCkY
|
||||||
|
UP0gLmAfnpGQHfQM+zGlIO257hAXZLUMJJPJuQ6yx+KBfr+P/3CreAIVTOoC9uEK8Q8mS3ew5XIZYrEY
|
||||||
|
nuhCN2qQlQZIQL1eZ+ev3VoHAgFwOOjSXqNXNXRXSqlOp8POJBvt+Xu9ngwS4lQN3oVy+egJybLHt2w2
|
||||||
|
K0OFOFeHmJFByn5+2eXTM1WMDIdD8Hg8coAQtyquCKGfHVq/kOekUik2k2O6mKZQKOBAKrea0+nE7Y2b
|
||||||
|
zVhuAr/Ce2bVcGWw1gAAAABJRU5ErkJggg==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="watermeterPictureBox3.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAACYAAAAeCAYAAABAFGxuAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADr4AAA6+AepCscAAAAIGSURBVFhH7de/SwJhGAfwtwJpUlBwaVIEcXDVxcUxQaS1
|
||||||
|
QdLVwTnQv0AcGgUdo9U1dNAWHVwiEQKFaAkCwZqq5el53rvT03v8cXqeDQ0fjXu97/PFO+w9MZlMYFO1
|
||||||
|
Wg2EEJbg8vX+iy3i8vW2KHaEznbkgm63C6PRiJ1DtijmQLCjMRLg8/mgUqmwsw5UTEN5UfD7/ZDL5eZm
|
||||||
|
mSqWz+cxyMpimhZS7r12uy1n4d/GG3O5Y8QFWyWCTpCcRy8lRK3XeUJcoJVGaFrsXj34V9hYrFrtQSj0
|
||||||
|
wa4Z2VgsGh1Dq9WS79z6PBuLkUbjQZZLJN7Y9ZkVxYrFgQzZl3j83TBz5oDFms02uN3fhrmKAxbzer8M
|
||||||
|
M2dWFNsH7R4Lh+mXnf+MwsZi6fSLLBUMfrLr82wsVio9ssd5NhYzZ1rsEhXVg4dA3ybN12CnSCQCRCkY
|
||||||
|
UP0gLmAfnpGQHfQM+zGlIO257hAXZLUMJJPJuQ6yx+KBfr+P/3CreAIVTOoC9uEK8Q8mS3ew5XIZYrEY
|
||||||
|
nuhCN2qQlQZIQL1eZ+ev3VoHAgFwOOjSXqNXNXRXSqlOp8POJBvt+Xu9ngwS4lQN3oVy+egJybLHt2w2
|
||||||
|
K0OFOFeHmJFByn5+2eXTM1WMDIdD8Hg8coAQtyquCKGfHVq/kOekUik2k2O6mKZQKOBAKrea0+nE7Y2b
|
||||||
|
zVhuAr/Ce2bVcGWw1gAAAABJRU5ErkJggg==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="watermeterPictureBox4.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAACYAAAAeCAYAAABAFGxuAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADr4AAA6+AepCscAAAAIGSURBVFhH7de/SwJhGAfwtwJpUlBwaVIEcXDVxcUxQaS1
|
||||||
|
QdLVwTnQv0AcGgUdo9U1dNAWHVwiEQKFaAkCwZqq5el53rvT03v8cXqeDQ0fjXu97/PFO+w9MZlMYFO1
|
||||||
|
Wg2EEJbg8vX+iy3i8vW2KHaEznbkgm63C6PRiJ1DtijmQLCjMRLg8/mgUqmwsw5UTEN5UfD7/ZDL5eZm
|
||||||
|
mSqWz+cxyMpimhZS7r12uy1n4d/GG3O5Y8QFWyWCTpCcRy8lRK3XeUJcoJVGaFrsXj34V9hYrFrtQSj0
|
||||||
|
wa4Z2VgsGh1Dq9WS79z6PBuLkUbjQZZLJN7Y9ZkVxYrFgQzZl3j83TBz5oDFms02uN3fhrmKAxbzer8M
|
||||||
|
M2dWFNsH7R4Lh+mXnf+MwsZi6fSLLBUMfrLr82wsVio9ssd5NhYzZ1rsEhXVg4dA3ybN12CnSCQCRCkY
|
||||||
|
UP0gLmAfnpGQHfQM+zGlIO257hAXZLUMJJPJuQ6yx+KBfr+P/3CreAIVTOoC9uEK8Q8mS3ew5XIZYrEY
|
||||||
|
nuhCN2qQlQZIQL1eZ+ev3VoHAgFwOOjSXqNXNXRXSqlOp8POJBvt+Xu9ngwS4lQN3oVy+egJybLHt2w2
|
||||||
|
K0OFOFeHmJFByn5+2eXTM1WMDIdD8Hg8coAQtyquCKGfHVq/kOekUik2k2O6mKZQKOBAKrea0+nE7Y2b
|
||||||
|
zVhuAr/Ce2bVcGWw1gAAAABJRU5ErkJggg==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="watermeterPictureBox5.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAACYAAAAeCAYAAABAFGxuAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADr4AAA6+AepCscAAAAIGSURBVFhH7de/SwJhGAfwtwJpUlBwaVIEcXDVxcUxQaS1
|
||||||
|
QdLVwTnQv0AcGgUdo9U1dNAWHVwiEQKFaAkCwZqq5el53rvT03v8cXqeDQ0fjXu97/PFO+w9MZlMYFO1
|
||||||
|
Wg2EEJbg8vX+iy3i8vW2KHaEznbkgm63C6PRiJ1DtijmQLCjMRLg8/mgUqmwsw5UTEN5UfD7/ZDL5eZm
|
||||||
|
mSqWz+cxyMpimhZS7r12uy1n4d/GG3O5Y8QFWyWCTpCcRy8lRK3XeUJcoJVGaFrsXj34V9hYrFrtQSj0
|
||||||
|
wa4Z2VgsGh1Dq9WS79z6PBuLkUbjQZZLJN7Y9ZkVxYrFgQzZl3j83TBz5oDFms02uN3fhrmKAxbzer8M
|
||||||
|
M2dWFNsH7R4Lh+mXnf+MwsZi6fSLLBUMfrLr82wsVio9ssd5NhYzZ1rsEhXVg4dA3ybN12CnSCQCRCkY
|
||||||
|
UP0gLmAfnpGQHfQM+zGlIO257hAXZLUMJJPJuQ6yx+KBfr+P/3CreAIVTOoC9uEK8Q8mS3ew5XIZYrEY
|
||||||
|
nuhCN2qQlQZIQL1eZ+ev3VoHAgFwOOjSXqNXNXRXSqlOp8POJBvt+Xu9ngwS4lQN3oVy+egJybLHt2w2
|
||||||
|
K0OFOFeHmJFByn5+2eXTM1WMDIdD8Hg8coAQtyquCKGfHVq/kOekUik2k2O6mKZQKOBAKrea0+nE7Y2b
|
||||||
|
zVhuAr/Ce2bVcGWw1gAAAABJRU5ErkJggg==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="watermeterPictureBox6.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAACYAAAAeCAYAAABAFGxuAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADr4AAA6+AepCscAAAAIGSURBVFhH7de/SwJhGAfwtwJpUlBwaVIEcXDVxcUxQaS1
|
||||||
|
QdLVwTnQv0AcGgUdo9U1dNAWHVwiEQKFaAkCwZqq5el53rvT03v8cXqeDQ0fjXu97/PFO+w9MZlMYFO1
|
||||||
|
Wg2EEJbg8vX+iy3i8vW2KHaEznbkgm63C6PRiJ1DtijmQLCjMRLg8/mgUqmwsw5UTEN5UfD7/ZDL5eZm
|
||||||
|
mSqWz+cxyMpimhZS7r12uy1n4d/GG3O5Y8QFWyWCTpCcRy8lRK3XeUJcoJVGaFrsXj34V9hYrFrtQSj0
|
||||||
|
wa4Z2VgsGh1Dq9WS79z6PBuLkUbjQZZLJN7Y9ZkVxYrFgQzZl3j83TBz5oDFms02uN3fhrmKAxbzer8M
|
||||||
|
M2dWFNsH7R4Lh+mXnf+MwsZi6fSLLBUMfrLr82wsVio9ssd5NhYzZ1rsEhXVg4dA3ybN12CnSCQCRCkY
|
||||||
|
UP0gLmAfnpGQHfQM+zGlIO257hAXZLUMJJPJuQ6yx+KBfr+P/3CreAIVTOoC9uEK8Q8mS3ew5XIZYrEY
|
||||||
|
nuhCN2qQlQZIQL1eZ+ev3VoHAgFwOOjSXqNXNXRXSqlOp8POJBvt+Xu9ngwS4lQN3oVy+egJybLHt2w2
|
||||||
|
K0OFOFeHmJFByn5+2eXTM1WMDIdD8Hg8coAQtyquCKGfHVq/kOekUik2k2O6mKZQKOBAKrea0+nE7Y2b
|
||||||
|
zVhuAr/Ce2bVcGWw1gAAAABJRU5ErkJggg==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="flowMeterPictureBox.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAACYAAAAmCAYAAACoPemuAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADr4AAA6+AepCscAAAAN+SURBVFhHtZi5SgRBEIbbW8QjkRXBKxPWEwRF1EjQSBDE
|
||||||
|
RFBxDdRdEDxBUDDyJXwBH8DAzNxQQdDIR9g3aOfv3emp6qkd5zL4PHqqqn/6qO5qVa1WdVwqlYpWSqVG
|
||||||
|
iumztrZm2NraqtlLRo3IW9j6+rphZGQkbO8aS3x8fOiDg4Owc0ImJib04+OjjYvR8Tk5OeH2VIBEuVzm
|
||||||
|
DqC9XauODq3u76MZH6/Zuf4en5+f+ufnx7Czs8O+tba2RgsbR2DiYNjb0+ruThbSCPj097M46ByiNjY2
|
||||||
|
WPvKyopZa6Kwl5cXY2AdOju1mp+XO03C7q5WU1NMiM/g4KD++vrSs7OzjYUxUZg2qZMsjI0xUT09PXZa
|
||||||
|
8T80hISFpu/8XA6ehclJ1kdLS0u0MLbQMVL/IWpxMeiD0Oktl+/vb6vFCkNKsIZYU1LQrFBRXV21NjKt
|
||||||
|
T09PYWEsT+Wx0F28HGbjg+vr4BtpDwmjH1nAPFhYCGJjpKgogIGofz87OwuEsV2InEOdsrK0FMT2dp9o
|
||||||
|
A3wbDytsYGCg1ogFf3srO6bB2X3q5ka2A9vb1s4Ks45xjpm4zM0FcbGZrq5kO5/9fWtfLBYdYZJDGpaX
|
||||||
|
g5i9vbKNRP1cLRQKWnV3d+crbHo6iAeSLI26sKamJvwmQSTjJHjnnI2FG8LFhWzXCH4TsX/IxnGhO7uv
|
||||||
|
T7b5C1HYzIxsHAc6UkCyiUOuI+ZeY5JOHyU3YXT3pZ0+ChWWOl3QPIWFLtkkpS7MpAsmDHcxycHFzeiX
|
||||||
|
l7JdEo6PtWpuNvGssC4crOgAiiUnCj37kDzzOsJI5n94eKgJGxoaCjqLOsTpLSHvO5sf18PMIn68vr4G
|
||||||
|
H1DNSI7u9P119iUBxUc9LgoRKwyYg9PvFNUMdaQ3T1xdom4JaSAz9vz8zIWhQrad47zznaTrcJ6cntr4
|
||||||
|
o6OjRgsTZv7xBQDPKPI6nAcofuo7Eby/v8vCULa3tbVxMUC6DmcFy4X0sedtOqqFCbONxMEgBc6C8x5S
|
||||||
|
KpXCGtwG9y3BgGmVOkgD1hSZPuBqAEwYfXVB2Y4KmQbIVNYhJQwPs3iHh4dMDMUKo+9TeODw21Eh02AG
|
||||||
|
FA7I1JIAytERy+gUd025GGGbm5vMCa8uvgHKdlTI9LsFR1gUzpQBpAS6+xqh7JunR4cX7O3tTTQEq6ur
|
||||||
|
rJOk+MkzDp59zYlOXyP+83GYU9W/sZE2jpG87/4AAAAASUVORK5CYII=
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="pictureBox1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAACYAAAAjCAYAAAD48HgdAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADr4AAA6+AepCscAAAAN0SURBVFhHxZg5SDNBGIZHiTZBEA9UEESE2ARvxIMIVuJV
|
||||||
|
qY0iKoithSBok87CIFgZwUIQlEDEo7EQBRuJKNiYSsFSsDJaeRTf7zvLbvb4drObqH/xNNmZ93symWsj
|
||||||
|
UqkU6RkeHiYhxH9B72ERA1NTU2zH3+T29tbgwIqdnp7KxvPzgoh+j89PQUVFgmZnZy0OrBg4OzuTcuEw
|
||||||
|
H5orT0/KSE1OTrL1bcXAxcWF7Hxzw4fnAnILCwvZusBRDAQCARny9sYXyIbVVWcpkFEMBINBKijgi3hl
|
||||||
|
eVkZrYeHB7aWiisxdb5VVvLF3ILFhJyRkRG2jh5XYiAej8vQtTW+qBuqqwUNDQ2x+WZci4GlpSUpt7nJ
|
||||||
|
F7bj40NQcbGg/v5+NpfDkxhoaGiQcqkUL8GB9kofPpPDsxioqKiQhd7feRE9h4eC8vPz6erqSuu/sbFB
|
||||||
|
VVVVEp/Pp4mD7u5u2SYrsUQiIUP8fl5GZXtbKZZMJi0ZJycn37t+kZRWpe7u7rTnWYmBo6MjGeY03/C8
|
||||||
|
tbVV6zM3N0dtbW2aiMri4qL8svr8rMWAWiQWs0oFg4La29tpfHycxsbGDCItLS20srIin4XDYTY7JzFQ
|
||||||
|
X18vix0cpKUCAeOIgNHRUZqentb6mUfITM5ioLa2lpqarDJYJJ2dnWyfTGQthvsTMMuocH284Flsd3eX
|
||||||
|
SktLKS8vzyLz/CyorOwPxSYmJqirq8sigom7t7cnf8re3vQcwzN8xmW5xVZsZmZGHracTCQS0dph8vf0
|
||||||
|
pKUAFgLa4pk+0wsGMezIjY2NFpm+vj65tPVtQU1NDYVCRikVbCHou7W1ZennBoOYuvQBNkanm8Dx8bFs
|
||||||
|
hyOHEwN1dUoWNmMuwwmDWHNzM0WjUUMDDvV+lkjwQnpwbPn9fnp8fGSz7HA1+fXEYjEplUzyImZw0KM9
|
||||||
|
9jQuzw7PYpiD5eWCvr54EY54XJHDlYnL5PAk1tHR8T0P+eKZiEYVOYw4l23GtRjOOgRzRd0yMKDI7e/v
|
||||||
|
szX0uBI7Pz+XgevrfEEv4IUGWVwdPRnF7u/vZdDODl8oG3w+XIuCbD0VR7HLy0t5JuqvND/B66syaniZ
|
||||||
|
5uoCR7FQKCQDXl74ArkQiSjvAtfX12xtW7HBwUEqKfG2LXgFf9jgi2PDNtdnxRYWFmQHnHe/jd1isIip
|
||||||
|
b0B/Df4sTHuk6B/rrIep2LXHGgAAAABJRU5ErkJggg==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="watermeterPictureBox1z.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAACYAAAAeCAYAAABAFGxuAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADr0AAA69AUf7kK0AAAIGSURBVFhH7de/SwJhGAfwtwJpUlBwaVIEcXDVxcUxQaS1
|
||||||
|
QdLVwTnQv0AcGgUdo9U1dNAWHVwiEQKFaAkCwZqq5el53rvT03v8cXqeDQ0fjXu97/PFO+w9MZlMYFO1
|
||||||
|
Wg2EEJbg8vX+iy3i8vW2KHaEznbkgm63C6PRiJ1DtijmQLCjMRLg8/mgUqmwsw5UTEN5UfD7/ZDL5eZm
|
||||||
|
mSqWz+cxyMpimhZS7r12uy1n4d/GG3O5Y8QFWyWCTpCcRy8lRK3XeUJcoJVGaFrsXj34V9hYrFrtQSj0
|
||||||
|
wa4Z2VgsGh1Dq9WS79z6PBuLkUbjQZZLJN7Y9ZkVxYrFgQzZl3j83TBz5oDFms02uN3fhrmKAxbzer8M
|
||||||
|
M2dWFNsH7R4Lh+mXnf+MwsZi6fSLLBUMfrLr82wsVio9ssd5NhYzZ1rsEhXVg4dA3ybN12CnSCQCRCkY
|
||||||
|
UP0gLmAfnpGQHfQM+zGlIO257hAXZLUMJJPJuQ6yx+KBfr+P/3CreAIVTOoC9uEK8Q8mS3ew5XIZYrEY
|
||||||
|
nuhCN2qQlQZIQL1eZ+ev3VoHAgFwOOjSXqNXNXRXSqlOp8POJBvt+Xu9ngwS4lQN3oVy+egJybLHt2w2
|
||||||
|
K0OFOFeHmJFByn5+2eXTM1WMDIdD8Hg8coAQtyquCKGfHVq/kOekUik2k2O6mKZQKOBAKrea0+nE7Y2b
|
||||||
|
zVhuAr/Ce2bVcGWw1gAAAABJRU5ErkJggg==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="watermeterPictureBox2z.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAACYAAAAeCAYAAABAFGxuAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADrwAAA68AZW8ckkAAAIGSURBVFhH7de/SwJhGAfwtwJpUlBwaVIEcXDVxcUxQaS1
|
||||||
|
QdLVwTnQv0AcGgUdo9U1dNAWHVwiEQKFaAkCwZqq5el53rvT03v8cXqeDQ0fjXu97/PFO+w9MZlMYFO1
|
||||||
|
Wg2EEJbg8vX+iy3i8vW2KHaEznbkgm63C6PRiJ1DtijmQLCjMRLg8/mgUqmwsw5UTEN5UfD7/ZDL5eZm
|
||||||
|
mSqWz+cxyMpimhZS7r12uy1n4d/GG3O5Y8QFWyWCTpCcRy8lRK3XeUJcoJVGaFrsXj34V9hYrFrtQSj0
|
||||||
|
wa4Z2VgsGh1Dq9WS79z6PBuLkUbjQZZLJN7Y9ZkVxYrFgQzZl3j83TBz5oDFms02uN3fhrmKAxbzer8M
|
||||||
|
M2dWFNsH7R4Lh+mXnf+MwsZi6fSLLBUMfrLr82wsVio9ssd5NhYzZ1rsEhXVg4dA3ybN12CnSCQCRCkY
|
||||||
|
UP0gLmAfnpGQHfQM+zGlIO257hAXZLUMJJPJuQ6yx+KBfr+P/3CreAIVTOoC9uEK8Q8mS3ew5XIZYrEY
|
||||||
|
nuhCN2qQlQZIQL1eZ+ev3VoHAgFwOOjSXqNXNXRXSqlOp8POJBvt+Xu9ngwS4lQN3oVy+egJybLHt2w2
|
||||||
|
K0OFOFeHmJFByn5+2eXTM1WMDIdD8Hg8coAQtyquCKGfHVq/kOekUik2k2O6mKZQKOBAKrea0+nE7Y2b
|
||||||
|
zVhuAr/Ce2bVcGWw1gAAAABJRU5ErkJggg==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
<data name="watermeterPictureBox3z.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||||
|
<value>
|
||||||
|
iVBORw0KGgoAAAANSUhEUgAAACYAAAAeCAYAAABAFGxuAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||||
|
YQUAAAAJcEhZcwAADrwAAA68AZW8ckkAAAIGSURBVFhH7de/SwJhGAfwtwJpUlBwaVIEcXDVxcUxQaS1
|
||||||
|
QdLVwTnQv0AcGgUdo9U1dNAWHVwiEQKFaAkCwZqq5el53rvT03v8cXqeDQ0fjXu97/PFO+w9MZlMYFO1
|
||||||
|
Wg2EEJbg8vX+iy3i8vW2KHaEznbkgm63C6PRiJ1DtijmQLCjMRLg8/mgUqmwsw5UTEN5UfD7/ZDL5eZm
|
||||||
|
mSqWz+cxyMpimhZS7r12uy1n4d/GG3O5Y8QFWyWCTpCcRy8lRK3XeUJcoJVGaFrsXj34V9hYrFrtQSj0
|
||||||
|
wa4Z2VgsGh1Dq9WS79z6PBuLkUbjQZZLJN7Y9ZkVxYrFgQzZl3j83TBz5oDFms02uN3fhrmKAxbzer8M
|
||||||
|
M2dWFNsH7R4Lh+mXnf+MwsZi6fSLLBUMfrLr82wsVio9ssd5NhYzZ1rsEhXVg4dA3ybN12CnSCQCRCkY
|
||||||
|
UP0gLmAfnpGQHfQM+zGlIO257hAXZLUMJJPJuQ6yx+KBfr+P/3CreAIVTOoC9uEK8Q8mS3ew5XIZYrEY
|
||||||
|
nuhCN2qQlQZIQL1eZ+ev3VoHAgFwOOjSXqNXNXRXSqlOp8POJBvt+Xu9ngwS4lQN3oVy+egJybLHt2w2
|
||||||
|
K0OFOFeHmJFByn5+2eXTM1WMDIdD8Hg8coAQtyquCKGfHVq/kOekUik2k2O6mKZQKOBAKrea0+nE7Y2b
|
||||||
|
zVhuAr/Ce2bVcGWw1gAAAABJRU5ErkJggg==
|
||||||
|
</value>
|
||||||
|
</data>
|
||||||
|
</root>
|
||||||
@@ -805,6 +805,12 @@
|
|||||||
<Compile Include="Screens\PicturesTabPageCtrl.designer.cs">
|
<Compile Include="Screens\PicturesTabPageCtrl.designer.cs">
|
||||||
<DependentUpon>PicturesTabPageCtrl.cs</DependentUpon>
|
<DependentUpon>PicturesTabPageCtrl.cs</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
|
<Compile Include="Screens\ProcessTabPageCtrl24.cs">
|
||||||
|
<SubType>UserControl</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="Screens\ProcessTabPageCtrl24.Designer.cs">
|
||||||
|
<DependentUpon>ProcessTabPageCtrl24.cs</DependentUpon>
|
||||||
|
</Compile>
|
||||||
<Compile Include="SelectComponentClassDlg.cs">
|
<Compile Include="SelectComponentClassDlg.cs">
|
||||||
<SubType>Form</SubType>
|
<SubType>Form</SubType>
|
||||||
</Compile>
|
</Compile>
|
||||||
@@ -1030,11 +1036,11 @@
|
|||||||
<DesignTime>True</DesignTime>
|
<DesignTime>True</DesignTime>
|
||||||
<DependentUpon>Strings.resx</DependentUpon>
|
<DependentUpon>Strings.resx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="Screens\ProcessTabPageCtrl.cs">
|
<Compile Include="Screens\ProcessTabPageCtrl6.cs">
|
||||||
<SubType>UserControl</SubType>
|
<SubType>UserControl</SubType>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="Screens\ProcessTabPageCtrl.Designer.cs">
|
<Compile Include="Screens\ProcessTabPageCtrl6.Designer.cs">
|
||||||
<DependentUpon>ProcessTabPageCtrl.cs</DependentUpon>
|
<DependentUpon>ProcessTabPageCtrl6.cs</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="Screens\LogsTabPageCtrl.cs">
|
<Compile Include="Screens\LogsTabPageCtrl.cs">
|
||||||
<SubType>UserControl</SubType>
|
<SubType>UserControl</SubType>
|
||||||
@@ -1424,6 +1430,9 @@
|
|||||||
<EmbeddedResource Include="Screens\PicturesTabPageCtrl.resx">
|
<EmbeddedResource Include="Screens\PicturesTabPageCtrl.resx">
|
||||||
<DependentUpon>PicturesTabPageCtrl.cs</DependentUpon>
|
<DependentUpon>PicturesTabPageCtrl.cs</DependentUpon>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="Screens\ProcessTabPageCtrl24.resx">
|
||||||
|
<DependentUpon>ProcessTabPageCtrl24.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
<EmbeddedResource Include="SelectComponentClassDlg.de.resx">
|
<EmbeddedResource Include="SelectComponentClassDlg.de.resx">
|
||||||
<DependentUpon>SelectComponentClassDlg.cs</DependentUpon>
|
<DependentUpon>SelectComponentClassDlg.cs</DependentUpon>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
@@ -1550,8 +1559,8 @@
|
|||||||
<LastGenOutput>Strings.Designer.cs</LastGenOutput>
|
<LastGenOutput>Strings.Designer.cs</LastGenOutput>
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
<EmbeddedResource Include="Screens\ProcessTabPageCtrl.resx">
|
<EmbeddedResource Include="Screens\ProcessTabPageCtrl6.resx">
|
||||||
<DependentUpon>ProcessTabPageCtrl.cs</DependentUpon>
|
<DependentUpon>ProcessTabPageCtrl6.cs</DependentUpon>
|
||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
<EmbeddedResource Include="Screens\LogsTabPageCtrl.resx">
|
<EmbeddedResource Include="Screens\LogsTabPageCtrl.resx">
|
||||||
<DependentUpon>LogsTabPageCtrl.cs</DependentUpon>
|
<DependentUpon>LogsTabPageCtrl.cs</DependentUpon>
|
||||||
|
|||||||
Reference in New Issue
Block a user