HeatMetersPath, UI, etc., HEAT_METERS_SUPPORT symbol introduced
ProcedureDlg modifications: (1) localization by TBF.Resources.Strings, (2) Heat meters support FlyingStartMassCollection and CombinedMeters methods with similar sequences
This commit is contained in:
parent
7cbbb2270b
commit
0ac1fe2b4e
@ -74,6 +74,7 @@
|
||||
<Compile Include="Entities\Enums.cs" />
|
||||
<Compile Include="Entities\FeedingPath.cs" />
|
||||
<Compile Include="Entities\Group.cs" />
|
||||
<Compile Include="Entities\HeatMetersPath.cs" />
|
||||
<Compile Include="Entities\IHasItemNr.cs" />
|
||||
<Compile Include="Entities\IHasValves.cs" />
|
||||
<Compile Include="Entities\MeasurementCorrection.cs" />
|
||||
@ -99,6 +100,7 @@
|
||||
<Compile Include="Mappings\ComponentTestMap.cs" />
|
||||
<Compile Include="Mappings\FeedingPathMap.cs" />
|
||||
<Compile Include="Mappings\GroupMap.cs" />
|
||||
<Compile Include="Mappings\HeatMetersPathMap.cs" />
|
||||
<Compile Include="Mappings\MeasurementCorrectionMap.cs" />
|
||||
<Compile Include="Mappings\MetersPathMap.cs" />
|
||||
<Compile Include="Mappings\MeterTestResultMap.cs" />
|
||||
|
||||
@ -67,6 +67,7 @@ namespace Config.Entities
|
||||
{
|
||||
Single,
|
||||
Combined,
|
||||
HeatMeter,
|
||||
}
|
||||
|
||||
public enum CompoundMeterId : byte
|
||||
|
||||
39
Config/Entities/HeatMetersPath.cs
Normal file
39
Config/Entities/HeatMetersPath.cs
Normal file
@ -0,0 +1,39 @@
|
||||
///
|
||||
/// Copyright (c) 2016 Sensus Metering Systems
|
||||
///
|
||||
using System;
|
||||
|
||||
namespace Config.Entities
|
||||
{
|
||||
public class HeatMetersPath : IHasItemNr
|
||||
{
|
||||
public virtual int Id { get; protected set; }
|
||||
public virtual int ItemNr { get; set; }
|
||||
public virtual string Name { get; set; }
|
||||
public virtual string TempWarm { get; set; }
|
||||
public virtual string TempCold { get; set; }
|
||||
|
||||
/// ------------- Additional stuff not mapped into the database -------------
|
||||
|
||||
public HeatMetersPath()
|
||||
{
|
||||
}
|
||||
|
||||
public HeatMetersPath(string name, int itemNr)
|
||||
: this()
|
||||
{
|
||||
Name = name;
|
||||
ItemNr = itemNr;
|
||||
}
|
||||
|
||||
public virtual HeatMetersPath Clone(string name, int itemNr)
|
||||
{
|
||||
HeatMetersPath result = new HeatMetersPath(name, itemNr);
|
||||
|
||||
result.TempWarm = TempWarm;
|
||||
result.TempCold = TempCold;
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -44,7 +44,10 @@ namespace Config.Entities
|
||||
public virtual string BenchPath { get; set; }
|
||||
public virtual string OutputPath { get; set; }
|
||||
public virtual string MetersPath { get; set; }
|
||||
public virtual string RelTransBefore { get; set; }
|
||||
#if HEAT_METERS_SUPPORT
|
||||
public virtual string HeatMetersPath { get; set; }
|
||||
#endif
|
||||
public virtual string RelTransBefore { get; set; }
|
||||
public virtual string RelTransBetween { get; set; }
|
||||
public virtual string RelTransAfter { get; set; }
|
||||
public virtual string TransitionAfter { get; set; }
|
||||
@ -126,6 +129,9 @@ namespace Config.Entities
|
||||
result.BenchPath = BenchPath;
|
||||
result.OutputPath = OutputPath;
|
||||
result.MetersPath = MetersPath;
|
||||
#if HEAT_METERS_SUPPORT
|
||||
result.HeatMetersPath = HeatMetersPath;
|
||||
#endif
|
||||
result.RelTransBefore = RelTransBefore;
|
||||
result.RelTransBetween = RelTransBetween;
|
||||
result.RelTransAfter = RelTransAfter;
|
||||
|
||||
@ -120,7 +120,12 @@ namespace Config.Entities
|
||||
for (int i = 0; i < 2 * Config.Data.CompoundWMsCount; i++) Meters.Add(new MeterTestResult(this));
|
||||
for (int i = 0; i < Config.Data.CompoundWMsCount; i++) CombinedMeters.Add(new MeterTestResult(this));
|
||||
}
|
||||
}
|
||||
else if (kind == MetersKind.HeatMeter)
|
||||
{
|
||||
/// TODO: Verify if this is OK
|
||||
for (int i = 0; i < Config.Data.WMsCount; i++) Meters.Add(new MeterTestResult(this));
|
||||
}
|
||||
}
|
||||
|
||||
public TestResult(Test test, int repetitionNr, MetersKind kind)
|
||||
: this(kind)
|
||||
|
||||
22
Config/Mappings/HeatMetersPathMap.cs
Normal file
22
Config/Mappings/HeatMetersPathMap.cs
Normal file
@ -0,0 +1,22 @@
|
||||
///
|
||||
/// Copyright (c) 2016 Sensus Metering Systems
|
||||
///
|
||||
using FluentNHibernate.Mapping;
|
||||
using Config.Entities;
|
||||
|
||||
namespace Config.Mappings
|
||||
{
|
||||
#if HEAT_METERS_SUPPORT
|
||||
class HeatMetersPathMap : ClassMap<HeatMetersPath>
|
||||
{
|
||||
public HeatMetersPathMap()
|
||||
{
|
||||
Id(x => x.Id);
|
||||
Map(x => x.ItemNr);
|
||||
Map(x => x.Name);
|
||||
Map(x => x.TempWarm);
|
||||
Map(x => x.TempCold);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
@ -44,7 +44,10 @@ namespace Config.Mappings
|
||||
Map(x => x.BenchPath);
|
||||
Map(x => x.OutputPath);
|
||||
Map(x => x.MetersPath);
|
||||
Map(x => x.RelTransBefore);
|
||||
#if HEAT_METERS_SUPPORT
|
||||
Map(x => x.HeatMetersPath);
|
||||
#endif
|
||||
Map(x => x.RelTransBefore);
|
||||
Map(x => x.RelTransBetween);
|
||||
Map(x => x.RelTransAfter);
|
||||
Map(x => x.TransitionAfter);
|
||||
|
||||
@ -49,7 +49,10 @@ namespace Results
|
||||
ProtocolTitle = procedure.ProtocolTitle,
|
||||
StartTime = DateTime.Now,
|
||||
Compound = (procedure.MetersKind == Config.Entities.MetersKind.Combined),
|
||||
};
|
||||
#if HEAT_METERS_SUPPORT
|
||||
HeatMeter = (procedure.MetersKind == Config.Entities.MetersKind.HeatMeter),
|
||||
#endif
|
||||
};
|
||||
|
||||
///
|
||||
/// Add watermeter to an array, array index is WM position.
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
///
|
||||
/// Copyright (c) 2015 Sensus Metering Systems
|
||||
/// Copyright (c) 2015-2016 Sensus Metering Systems
|
||||
///
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
@ -31,8 +31,11 @@ namespace Results.Entities
|
||||
public virtual IList<WaterMeter> WaterMeters { get; set; }
|
||||
public virtual IList<TestRslt> TestRslts { get; set; }
|
||||
public virtual bool Compound { get; set; } /// Not mapped to DB now
|
||||
#if HEAT_METERS_SUPPORT
|
||||
public virtual bool HeatMeter { get; set; } /// Not mapped to DB now
|
||||
#endif
|
||||
|
||||
public Batch()
|
||||
public Batch()
|
||||
{
|
||||
Tests = new List<TestData>();
|
||||
WaterMeters = new List<WaterMeter>();
|
||||
|
||||
@ -51,7 +51,10 @@ namespace Results.Entities
|
||||
public virtual double Q2_Qt() { return WaterMeterData.Q2_Qt; }
|
||||
public virtual double Q1_Qmin() { return WaterMeterData.Q1_Qmin; }
|
||||
|
||||
public virtual bool Compound() { return WaterMeterData.Compound; }
|
||||
public virtual bool Compound() { return WaterMeterData.Compound; }
|
||||
#if HEAT_METER_SUPPORT
|
||||
public virtual bool HeatMeter() { return WaterMeterData.HeatMeter; }
|
||||
#endif
|
||||
|
||||
public virtual string ProducerAux() { return WaterMeterData.ProducerAux; }
|
||||
public virtual double Q3_Qn_Aux() { return WaterMeterData.Q3_Qn_Aux; }
|
||||
|
||||
@ -47,7 +47,9 @@ namespace Results.Entities
|
||||
public virtual string Text5 { get; set; }
|
||||
|
||||
public virtual bool Compound { get; set; }
|
||||
|
||||
#if HEAT_METER_SUPPORT
|
||||
public virtual bool HeatMeter { get; set; }
|
||||
#endif
|
||||
#if IPERLST || IPERLST_SPECIAL
|
||||
public virtual int WMTypeId { get; set; }
|
||||
public virtual int WMTypeRev { get; set; }
|
||||
|
||||
@ -46,7 +46,9 @@ namespace Results.Mappings
|
||||
Map(x => x.Text5);
|
||||
|
||||
Map(x => x.Compound);
|
||||
|
||||
#if HEAT_METER_SUPPORT
|
||||
Map(x => x.HeatMeter);
|
||||
#endif
|
||||
#if IPERLST || IPERLST_SPECIAL
|
||||
Map(x => x.WMTypeId);
|
||||
Map(x => x.WMTypeRev);
|
||||
|
||||
36
TestBenchFramework/BenchControl/HeatMetersPath.cs
Normal file
36
TestBenchFramework/BenchControl/HeatMetersPath.cs
Normal file
@ -0,0 +1,36 @@
|
||||
///
|
||||
/// Copyright (c) 2016 Sensus Metering Systems
|
||||
///
|
||||
using System.Collections.Generic;
|
||||
using TBF.BenchControl.GenericDevices;
|
||||
|
||||
namespace TBF.BenchControl
|
||||
{
|
||||
public class HeatMetersPath
|
||||
{
|
||||
public int ItemNr;
|
||||
public string Name;
|
||||
public ITempMeter TempWarm;
|
||||
public ITempMeter TempCold;
|
||||
|
||||
/// Constructor from name, the rest is empty
|
||||
public HeatMetersPath(string name, int itemNr)
|
||||
{
|
||||
ItemNr = itemNr;
|
||||
Name = name;
|
||||
}
|
||||
|
||||
/// Constructor from data entity
|
||||
public HeatMetersPath(Config.Entities.HeatMetersPath entity, IList<BenchControl.Generic.IComponent> components)
|
||||
: this(entity.Name, entity.ItemNr)
|
||||
{
|
||||
TempWarm = TbfComponents.FindComponent(entity.TempWarm, components) as ITempMeter;
|
||||
TempCold = TbfComponents.FindComponent(entity.TempCold, components) as ITempMeter;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return string.Format("{0}", Name);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -487,8 +487,8 @@ namespace TBF.BenchControl.Sequences
|
||||
/// Try to fetch all test paths and transitions
|
||||
/// to detect configuration errors as early as possible.
|
||||
string errorMsg;
|
||||
if (!StateMachine.GetPaths(test, out inPath, out benchPath,
|
||||
out outPath, out sensPath,
|
||||
if (!StateMachine.GetPaths(test, out inPath, out benchPath, out outPath, out sensPath,
|
||||
out heatMetersPath,
|
||||
out transitionBefore, out transitionAfter,
|
||||
out errorMsg))
|
||||
{
|
||||
@ -504,9 +504,9 @@ namespace TBF.BenchControl.Sequences
|
||||
|
||||
/// Fetch the test paths and transitions
|
||||
string errorMsg;
|
||||
if (!StateMachine.GetPaths(test, out inPath, out benchPath,
|
||||
out outPath, out sensPath,
|
||||
out transitionBefore, out transitionAfter,
|
||||
if (!StateMachine.GetPaths(test, out inPath, out benchPath, out outPath, out sensPath,
|
||||
out heatMetersPath,
|
||||
out transitionBefore, out transitionAfter,
|
||||
out errorMsg))
|
||||
{
|
||||
UiBridge.Bridge.OnError(this, errorMsg);
|
||||
@ -585,9 +585,9 @@ namespace TBF.BenchControl.Sequences
|
||||
/// Try to fetch all test paths and transitions
|
||||
/// to detect configuration errors as early as possible.
|
||||
string errorMsg;
|
||||
if (!StateMachine.GetPaths(test, out inPath, out benchPath,
|
||||
out outPath, out sensPath,
|
||||
out transitionBefore, out transitionAfter,
|
||||
if (!StateMachine.GetPaths(test, out inPath, out benchPath, out outPath, out sensPath,
|
||||
out heatMetersPath,
|
||||
out transitionBefore, out transitionAfter,
|
||||
out errorMsg))
|
||||
{
|
||||
UiBridge.Bridge.OnError(this, errorMsg);
|
||||
@ -602,9 +602,9 @@ namespace TBF.BenchControl.Sequences
|
||||
|
||||
/// Fetch the test paths and transitions
|
||||
string errorMsg;
|
||||
if (!StateMachine.GetPaths(test, out inPath, out benchPath,
|
||||
out outPath, out sensPath,
|
||||
out transitionBefore, out transitionAfter,
|
||||
if (!StateMachine.GetPaths(test, out inPath, out benchPath, out outPath, out sensPath,
|
||||
out heatMetersPath,
|
||||
out transitionBefore, out transitionAfter,
|
||||
out errorMsg))
|
||||
{
|
||||
UiBridge.Bridge.OnError(this, errorMsg);
|
||||
@ -659,8 +659,8 @@ namespace TBF.BenchControl.Sequences
|
||||
|
||||
/// Fetch the test paths and transitions
|
||||
string errorMsg;
|
||||
if (!StateMachine.GetPaths(test, out inPath, out benchPath,
|
||||
out outPath, out sensPath,
|
||||
if (!StateMachine.GetPaths(test, out inPath, out benchPath, out outPath, out sensPath,
|
||||
out heatMetersPath,
|
||||
out transitionBefore, out transitionAfter,
|
||||
out errorMsg))
|
||||
{
|
||||
|
||||
@ -54,6 +54,8 @@ namespace TBF.BenchControl.Sequences
|
||||
protected static BenchControl.BenchPath benchPath;
|
||||
protected static BenchControl.OutputPath outPath;
|
||||
protected static BenchControl.MetersPath sensPath;
|
||||
protected static BenchControl.HeatMetersPath heatMetersPath;
|
||||
|
||||
protected static TransitionSequence transitionBefore;
|
||||
protected static TransitionSequence transitionAfter;
|
||||
|
||||
|
||||
@ -38,7 +38,8 @@ namespace TBF.BenchControl
|
||||
static IList<Config.Entities.BenchPath> benchPaths;
|
||||
static IList<Config.Entities.OutputPath> outputPaths;
|
||||
static IList<Config.Entities.MetersPath> metersPaths;
|
||||
public static IList<Config.Entities.TransitionSequence> TransitionSequences;
|
||||
static IList<Config.Entities.HeatMetersPath> heatMetersPaths;
|
||||
public static IList<Config.Entities.TransitionSequence> TransitionSequences;
|
||||
|
||||
/// Public components
|
||||
public static Elde.ControlBoardDev ControlBoard;
|
||||
@ -324,7 +325,10 @@ namespace TBF.BenchControl
|
||||
benchPaths = session.CreateQuery("FROM BenchPath ORDER BY ItemNr").List<Config.Entities.BenchPath>();
|
||||
outputPaths = session.CreateQuery("FROM OutputPath ORDER BY ItemNr").List<Config.Entities.OutputPath>();
|
||||
metersPaths = session.CreateQuery("FROM MetersPath ORDER BY ItemNr").List<Config.Entities.MetersPath>();
|
||||
TransitionSequences = session.CreateQuery("FROM TransitionSequence ORDER BY ItemNr").List<TransitionSequence>();
|
||||
TransitionSequences = session.CreateQuery("FROM TransitionSequence ORDER BY ItemNr").List<TransitionSequence>();
|
||||
#if HEAT_METERS_SUPPORT
|
||||
heatMetersPaths = session.CreateQuery("FROM HeatMetersPath ORDER BY ItemNr").List<Config.Entities.HeatMetersPath>();
|
||||
#endif
|
||||
|
||||
// Automatic detection of empty tank valves
|
||||
foreach (var opath in outputPaths)
|
||||
@ -418,13 +422,15 @@ namespace TBF.BenchControl
|
||||
out BenchPath pben,
|
||||
out OutputPath pout,
|
||||
out MetersPath pmtrs,
|
||||
out TransitionSequence transitionBefore,
|
||||
out HeatMetersPath phmtrs,
|
||||
out TransitionSequence transitionBefore,
|
||||
out TransitionSequence transitionAfter,
|
||||
out string errorMsg)
|
||||
{
|
||||
pfeed = null;
|
||||
pben = null;
|
||||
pout = null;
|
||||
phmtrs = null;
|
||||
transitionBefore = null;
|
||||
transitionAfter = null;
|
||||
|
||||
@ -445,17 +451,29 @@ namespace TBF.BenchControl
|
||||
|
||||
pmtrs = GetMetersPath(test);
|
||||
|
||||
foreach (var tr in TransitionSequences)
|
||||
{
|
||||
if (tr.Name == test.RelTransBefore) transitionBefore = tr;
|
||||
if (tr.Name == test.TransitionAfter) transitionAfter = tr;
|
||||
}
|
||||
if ((pfeed == null) || (pben == null) || (pout == null) || (pmtrs == null))
|
||||
{
|
||||
errorMsg = "Cannot load paths";
|
||||
return false;
|
||||
}
|
||||
|
||||
if ((pfeed == null) || (pben == null) || (pout == null) || (pmtrs == null))
|
||||
#if HEAT_METERS_SUPPORT
|
||||
foreach (var path in heatMetersPaths)
|
||||
{
|
||||
if (test.HeatMetersPath == path.Name) { phmtrs = new HeatMetersPath(path, components); break; }
|
||||
}
|
||||
if (phmtrs == null)
|
||||
{
|
||||
errorMsg = "Cannot load paths";
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
foreach (var tr in TransitionSequences)
|
||||
{
|
||||
if (tr.Name == test.RelTransBefore) transitionBefore = tr;
|
||||
if (tr.Name == test.TransitionAfter) transitionAfter = tr;
|
||||
}
|
||||
|
||||
if (pout.Balance == null)
|
||||
{
|
||||
|
||||
@ -29,35 +29,27 @@ namespace TBF.BenchControl.TestMethods.CombinedMeters
|
||||
public IList<Event> Execute(Config.Entities.Test test, CombinedTestParams testParams)
|
||||
{
|
||||
Elde.ControlBoardDev cBrd = StateMachine.ControlBoard;
|
||||
|
||||
|
||||
IList<Event> e = new List<Event>(); /// Events from currently running operations
|
||||
Event retVal = Event.Done;
|
||||
checkUiOp = new Operations.CheckUIOp(true); /// Runs in more then one state
|
||||
|
||||
LtrPerRefPulse = outPath.FlowMeter.LtrPerPulse; /// [ltr/pulse], nominal flow in [m3/h]
|
||||
|
||||
/// Notes:
|
||||
/// float timeHr = volumeLtr / (1000.0f * targetFlow);
|
||||
/// float timeSec = 3600.0f * timeHr;
|
||||
/// int refPulses = (int)(timeSec * (2000.0f * targetFlow / pOut.FlowMeter.NominalFlow));
|
||||
int totalPulses = (int)(test.Volume / LtrPerRefPulse + 0.5f);
|
||||
|
||||
LtrPerRefPulse = outPath.FlowMeter.NominalFlow / 7200.0f; /// [ltr/pulse]
|
||||
///
|
||||
processDataLoggingOp = new TBF.BenchControl.Operations.ProcessDataLoggingOp(processDataLogger, this);
|
||||
|
||||
int repetitionNr = 1; /// First test: repetitionNr=1
|
||||
|
||||
//====================================
|
||||
// Transition or SetRoute - Start
|
||||
//====================================
|
||||
LtrPerRefPulse = outPath.FlowMeter.LtrPerPulse;
|
||||
int totalPulses = (int)(test.Volume / LtrPerRefPulse + 0.5f);
|
||||
|
||||
int repetitionNr = 1; /// First test: repetitionNr = 1
|
||||
|
||||
//====================================
|
||||
// Transition or SetRoute - Start
|
||||
//====================================
|
||||
switch (Transition(transitionBefore, TransitionContext.BeforeTest))
|
||||
{
|
||||
case Event.Error: { retVal = Event.Error; goto stopTest; }
|
||||
case Event.UiCmdStop: { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
|
||||
//====================================
|
||||
//====================================
|
||||
loop:
|
||||
/// Start the test, initialize test results
|
||||
Bridge.OnTestSelected(this, new TestSelectedEventArgs(test, repetitionNr, inPath, benchPath, outPath, sensPath, totalPulses));
|
||||
@ -65,110 +57,165 @@ namespace TBF.BenchControl.TestMethods.CombinedMeters
|
||||
TestStartTime = DateTime.Now;
|
||||
TestProgressEventArgs.SetEstimatedTimes(new int[] { 1, 1, 1, 30, Convert.ToInt32(test.TstTime) + 15, 0, 0 });
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.JustStarted));
|
||||
|
||||
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
int flowSetTime0 = StateMachine.Time;
|
||||
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Setting_the_flow);
|
||||
//------------------------------------------------
|
||||
if (inPath.Pump is GenericDevices.IPumpFM) (inPath.Pump as GenericDevices.IPumpFM).TurnOn(test.PumpPower);
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Checking_tank_capacity);
|
||||
//------------------------------------------------
|
||||
bool tankEmptyingInProgress = test.Emptying;
|
||||
|
||||
State.Create("CombinedMeters : Waiting 5 sec")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(new Operations.TimerOp(5))
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
if (TestAndLogUiCmdStop(test,e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.TimerExpired));
|
||||
|
||||
|
||||
State.Create("CombinedMeters : Starting the pump")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(cBrd.SetValvesOp(inPath.Pump, null))
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
|
||||
if (TestAndLogUiCmdStop(test,e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.ValvesSet));
|
||||
|
||||
|
||||
if (!test.Emptying) /// If condition met => skip measuring and force emptying
|
||||
if (!tankEmptyingInProgress) /// If condition met => skip measuring and force emptying
|
||||
{
|
||||
///
|
||||
/// Measure the weight and skip emptying if there is enough room in the tank
|
||||
///
|
||||
State.Create("CombinedMeters : Measuring the mass of water in the tank")
|
||||
///
|
||||
/// Measure the weight and skip emptying if there is enough room in the tank
|
||||
///
|
||||
State.Create("CombinedMeters : Checking available tank capacity")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(outPath.Balance.ReadMassOp(ref Mass))
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test,e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.BalanceDone));
|
||||
|
||||
float estimatedEndMass = Mass.Val + test.Volume;
|
||||
if (estimatedEndMass < outPath.Balance.Capacity * Constants.TankFullFactor)
|
||||
if (estimatedEndMass >= outPath.Balance.Capacity * Constants.TankFullFactor)
|
||||
{
|
||||
goto set_flow; /// Enough room in the tank -> skip emptying
|
||||
tankEmptyingInProgress = true;
|
||||
}
|
||||
}
|
||||
///
|
||||
if (tankEmptyingInProgress)
|
||||
{
|
||||
State.Create("SequenceBase : Opening the emptying valve")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(StateMachine.ControlBoard.SetValvesOp(outPath.EmptyTankValve, null))
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.ValvesSet));
|
||||
}
|
||||
|
||||
///
|
||||
/// Empty the water tank
|
||||
///
|
||||
switch (EmptyTheTank(outPath.EmptyTankValve, outPath.Balance))
|
||||
{
|
||||
case Event.Error: { retVal = Event.Error; goto stopTest; }
|
||||
case Event.UiCmdStop: { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
|
||||
set_flow:
|
||||
if (inPath.Pump != null)
|
||||
{
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Starting_the_pump);
|
||||
//------------------------------------------------
|
||||
if (inPath.Pump is GenericDevices.IPumpFM) (inPath.Pump as GenericDevices.IPumpFM).TurnOn(test.PumpPower);
|
||||
///
|
||||
State.Create("CombinedMeters : Starting the pump")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(cBrd.SetValvesOp(inPath.Pump, null))
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.ValvesSet));
|
||||
}
|
||||
|
||||
|
||||
if (test.TimePump2StartV > 0)
|
||||
{
|
||||
State.Create("CombinedMeters : Waiting after the pump started")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(new Operations.TimerOp(test.TimePump2StartV))
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.TimerExpired));
|
||||
}
|
||||
|
||||
|
||||
if (benchPath.StopBFValve != null)
|
||||
{
|
||||
State.Create("CombinedMeters : Opening the stop backflow valve")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(StateMachine.ControlBoard.SetValvesOp(benchPath.StopBFValve, null))
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.ValvesSet));
|
||||
}
|
||||
|
||||
|
||||
if (test.TimeBeforeFlow > 0)
|
||||
{
|
||||
State.Create("CombinedMeters : Waiting before flow setting process starts")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(new Operations.TimerOp(test.TimeBeforeFlow))
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.TimerExpired));
|
||||
}
|
||||
|
||||
|
||||
setting_flow:
|
||||
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Setting_the_flow);
|
||||
//------------------------------------------------
|
||||
State.Create("CombinedMeters : Setting the flow")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(outPath.RegulValve.SetFlowOp(outPath.FlowMeter, test.Qfrom, test.Qto, outPath.PidCoef, RefFlow, 600)) /// timeout = 10 min.
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
State.Create("CombinedMeters : Setting the flow")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.AddOperation(outPath.RegulValve.SetFlowOp(outPath.FlowMeter, test.Qfrom, test.Qto, outPath.PidCoef, RefFlow, 990)) /// timeout = 16.5 min.
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
|
||||
if (e.Contains(Event.OpArgumentError)) { retVal = Event.OpArgumentError; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
if (e.Contains(Event.RegulValveTimeOut))
|
||||
{
|
||||
Bridge.OnError(this, Strings.Timeout);
|
||||
retVal = Event.Done;
|
||||
goto stopTest;
|
||||
}
|
||||
if (e.Contains(Event.Next)) goto flow_set;
|
||||
}
|
||||
while (!e.Contains(Event.FlowReached));
|
||||
|
||||
if (e.Contains(Event.OpArgumentError)) { retVal = Event.OpArgumentError; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test,e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
if (e.Contains(Event.RegulValveTimeOut))
|
||||
{
|
||||
Bridge.OnError(this, Strings.Timeout);
|
||||
retVal = Event.Done;
|
||||
goto stopTest;
|
||||
}
|
||||
if (e.Contains(Event.Next)) goto flow_set;
|
||||
}
|
||||
while (!e.Contains(Event.FlowReached));
|
||||
|
||||
flow_set:
|
||||
int flowSetTime = StateMachine.Time - flowSetTime0;
|
||||
|
||||
int flowSetTime = StateMachine.Time - flowSetTime0;
|
||||
float currentFlow = RefFlow.Val;
|
||||
|
||||
/// Extract cameras from the current sensors path, add operations to the detection state
|
||||
@ -179,39 +226,63 @@ namespace TBF.BenchControl.TestMethods.CombinedMeters
|
||||
if (cameraRoi != null) measureOperations.Add(cameraRoi.MeasureOp());
|
||||
}
|
||||
|
||||
State.Create("CombinedMeters : Waiting before 1st mass measurement")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(benchPath.TempIn.ReadTempOp(ref TempIn))
|
||||
.AddOperation(benchPath.TempOut.ReadTempOp(ref TempOut))
|
||||
.AddOperation(outPath.TempDiv.ReadTempOp(ref TempDiv))
|
||||
.AddOperation(benchPath.PressIn.ReadPressureOp(ref PressureUp))
|
||||
.AddOperation(benchPath.PressOut.ReadPressureOp(ref PressureDown))
|
||||
.AddOperation((StateMachine.Ambient != null)
|
||||
? StateMachine.Ambient.ReadAmbientOp(AmbientTemp, AmbientPressure, AmbientHumidity) : null)
|
||||
.AddOperation(outPath.Balance.ReadMassOp(ref Mass))
|
||||
.AddOperation(cBrd.UpdateTankWeightOp())
|
||||
.AddOperation(processDataLoggingOp)
|
||||
.AddOperation(new Operations.TimerOp(test.TimeFlow2Mass))
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test,e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.TimerExpired));
|
||||
|
||||
if (tankEmptyingInProgress)
|
||||
{
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Closing_the_tank);
|
||||
//------------------------------------------------
|
||||
|
||||
///
|
||||
/// Make sure tank emptying completed
|
||||
///
|
||||
switch (EmptyTheTank(outPath.EmptyTankValve, outPath.Balance))
|
||||
{
|
||||
case Event.Error: { retVal = Event.Error; goto stopTest; }
|
||||
case Event.UiCmdStop: { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
|
||||
tankEmptyingInProgress = false;
|
||||
}
|
||||
|
||||
|
||||
if (test.TimeFlow2Mass > 0)
|
||||
{
|
||||
State.Create("CombinedMeters : Waiting before 1st mass measurement")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(cBrd.UpdateTankWeightOp())
|
||||
.AddOperation(new Operations.TimerOp(test.TimeFlow2Mass))
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.TimerExpired));
|
||||
}
|
||||
|
||||
|
||||
LogProcessHeader(processDataLogger, "Start mass");
|
||||
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Measuring_the_weight);
|
||||
//------------------------------------------------
|
||||
State.Create("CombinedMeters : Measuring the start mass")
|
||||
|
||||
LogProcessHeader(processDataLogger, "Start mass");
|
||||
|
||||
State.Create("CombinedMeters : Measuring the start mass")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(benchPath.TempIn.ReadTempOp(ref TempIn))
|
||||
.AddOperation(benchPath.TempOut.ReadTempOp(ref TempOut))
|
||||
.AddOperation(outPath.TempDiv.ReadTempOp(ref TempDiv))
|
||||
.AddOperation(benchPath.PressIn.ReadPressureOp(ref PressureUp))
|
||||
.AddOperation(benchPath.PressOut.ReadPressureOp(ref PressureDown))
|
||||
.AddOperation((StateMachine.Ambient != null)
|
||||
? StateMachine.Ambient.ReadAmbientOp(AmbientTemp, AmbientPressure, AmbientHumidity) : null)
|
||||
.AddOperations(measureOperations)
|
||||
.AddOperation(outPath.Balance.ReadStableMassOp(ref StartMass, test.MassRepeats, test.MassSpread, test.MassMethod))
|
||||
.EnterState();
|
||||
.AddOperation(cBrd.UpdateTankWeightOp())
|
||||
.AddOperation(processDataLoggingOp)
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
@ -220,6 +291,9 @@ namespace TBF.BenchControl.TestMethods.CombinedMeters
|
||||
}
|
||||
while (!e.Contains(Event.BalanceDone));
|
||||
|
||||
LogProcessHeader(processDataLogger, "Measurement");
|
||||
|
||||
log.WarnFormat("Start mass = {0}kg", StartMass);
|
||||
Mass.Val = StartMass.Val;
|
||||
|
||||
//------------------------------------------------
|
||||
@ -227,7 +301,16 @@ namespace TBF.BenchControl.TestMethods.CombinedMeters
|
||||
//------------------------------------------------
|
||||
State.Create("CombinedMeters : Starting the test")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(benchPath.TempIn.ReadTempOp(ref TempIn))
|
||||
.AddOperation(benchPath.TempOut.ReadTempOp(ref TempOut))
|
||||
.AddOperation(outPath.TempDiv.ReadTempOp(ref TempDiv))
|
||||
.AddOperation(benchPath.PressIn.ReadPressureOp(ref PressureUp))
|
||||
.AddOperation(benchPath.PressOut.ReadPressureOp(ref PressureDown))
|
||||
.AddOperation((StateMachine.Ambient != null)
|
||||
? StateMachine.Ambient.ReadAmbientOp(AmbientTemp, AmbientPressure, AmbientHumidity) : null)
|
||||
.AddOperations(measureOperations)
|
||||
.AddOperation(cBrd.UpdateTankWeightOp())
|
||||
.AddOperation(processDataLoggingOp)
|
||||
.AddOperation(cBrd.StartMeasurementOp(outPath, Elde.TestMethods.Diverter | Elde.TestMethods.Synchro,
|
||||
test.Qfrom, test.Qto, totalPulses, (float)test.TolerRed))
|
||||
.EnterState();
|
||||
@ -241,55 +324,62 @@ namespace TBF.BenchControl.TestMethods.CombinedMeters
|
||||
|
||||
/// Measurement loop - preparation
|
||||
readRegistersOp = new Operations.ReadMoreRegistersOp(sensPath.RegisterReaders);
|
||||
queryEnd1 = cBrd.QueryMeasurementEndOp();
|
||||
queryEnd2 = cBrd.QueryMeasurementEndOp();
|
||||
|
||||
int estimtdEndTime = StateMachine.Time + (int)test.TstTime;
|
||||
ClearAllStatistics();
|
||||
int estimtdEndTime = StateMachine.Time + (int)test.TstTime;
|
||||
|
||||
/// Measurement loop - begin
|
||||
while (true)
|
||||
{
|
||||
//--------------------------------
|
||||
switch(ReadRegistersTempPressAmbient(measureOperations, true))
|
||||
{
|
||||
case Event.Error: { retVal = Event.Error; goto stopTest; }
|
||||
case Event.UiCmdStop: { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
case Event.MeasurementCompleted: goto test_completed;
|
||||
}
|
||||
State.Create("Read water meters")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperations(measureOperations)
|
||||
.AddOperation(readRegistersOp)
|
||||
.AddOperation(benchPath.TempIn.ReadTempOp(ref TempIn))
|
||||
.AddOperation(benchPath.TempOut.ReadTempOp(ref TempOut))
|
||||
.AddOperation(outPath.TempDiv.ReadTempOp(ref TempDiv))
|
||||
.AddOperation(benchPath.PressIn.ReadPressureOp(ref PressureUp))
|
||||
.AddOperation(benchPath.PressOut.ReadPressureOp(ref PressureDown))
|
||||
.AddOperation(outPath.Balance.ReadMassOp(ref Mass))
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.AddOperation((StateMachine.Ambient != null)
|
||||
? StateMachine.Ambient.ReadAmbientOp(AmbientTemp, AmbientPressure, AmbientHumidity)
|
||||
: null)
|
||||
.AddOperation(cBrd.QueryMeasurementEndOp())
|
||||
.AddOperation(processDataLoggingOp)
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
if (e.Contains(Event.MeasurementCompleted)) goto test_completed;
|
||||
|
||||
int remainingTime = Math.Max(estimtdEndTime - StateMachine.Time, 0);
|
||||
if (remainingTime > 60)
|
||||
{
|
||||
Bridge.OnActivity(this, string.Format("{0} ... {1} {2} {3} {4}", Strings.Test_in_progress, remainingTime / 60, "min", remainingTime % 60, Strings.sec));
|
||||
}
|
||||
else
|
||||
{
|
||||
Bridge.OnActivity(this, string.Format("{0} ... {1} s", Strings.Test_in_progress, remainingTime));
|
||||
}
|
||||
//------------------------------------------------
|
||||
int remainingTime = Math.Max(estimtdEndTime - StateMachine.Time, 0);
|
||||
if (remainingTime > 60)
|
||||
{
|
||||
Bridge.OnActivity(this, string.Format("{0} ... {1} {2} {3} {4}", Strings.Test_in_progress, remainingTime / 60, "min", remainingTime % 60, Strings.sec));
|
||||
}
|
||||
else
|
||||
{
|
||||
Bridge.OnActivity(this, string.Format("{0} ... {1} s", Strings.Test_in_progress, remainingTime));
|
||||
}
|
||||
//------------------------------------------------
|
||||
|
||||
UpdateAllStatistics();
|
||||
UpdateAllStatistics();
|
||||
RefFreq.Val = cBrd.ReferenceFreq;
|
||||
RefFlow.Val = cBrd.ReferenceFlow;
|
||||
|
||||
/// TODO: Reimplement
|
||||
//for (int i = 0; i < Config.Data.CompoundWMsCount; i++)
|
||||
//{
|
||||
// data.TestResult.CombinedMeters[i].VolumeMeter = data.TestResult.Meters[2 * i].VolumeMeter
|
||||
// + data.TestResult.Meters[2 * i + 1].VolumeMeter;
|
||||
// if (data.Volume.Valid)
|
||||
// {
|
||||
// data.TestResult.CombinedMeters[i].VolumeErrorPct =
|
||||
// Formulas.ErrorFromVolumes(data.TestResult.CombinedMeters[i].VolumeMeter, data.Volume.Val);
|
||||
// }
|
||||
//}
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.Test));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.Test));
|
||||
}
|
||||
/// Measurement loop - end
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.Test));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.Test));
|
||||
}
|
||||
while (true);
|
||||
/// Measurement loop - end
|
||||
|
||||
test_completed:
|
||||
State.Create("CombinedMeters : Waiting before mass measurement")
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Measuring_the_weight);
|
||||
//------------------------------------------------
|
||||
State.Create("CombinedMeters : Waiting before the 2nd mass measurement")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(benchPath.TempIn.ReadTempOp(ref TempIn))
|
||||
.AddOperation(benchPath.TempOut.ReadTempOp(ref TempOut))
|
||||
@ -312,14 +402,22 @@ namespace TBF.BenchControl.TestMethods.CombinedMeters
|
||||
}
|
||||
while (!e.Contains(Event.TimerExpired));
|
||||
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Measuring_the_weight);
|
||||
//------------------------------------------------
|
||||
LogProcessHeader(processDataLogger, "End mass");
|
||||
|
||||
State.Create("CombinedMeters : Measuring the end mass")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(benchPath.TempIn.ReadTempOp(ref TempIn))
|
||||
.AddOperation(benchPath.TempOut.ReadTempOp(ref TempOut))
|
||||
.AddOperation(outPath.TempDiv.ReadTempOp(ref TempDiv))
|
||||
.AddOperation(benchPath.PressIn.ReadPressureOp(ref PressureUp))
|
||||
.AddOperation(benchPath.PressOut.ReadPressureOp(ref PressureDown))
|
||||
.AddOperation(readRegistersOp)
|
||||
.AddOperation((StateMachine.Ambient != null)
|
||||
? StateMachine.Ambient.ReadAmbientOp(AmbientTemp, AmbientPressure, AmbientHumidity) : null)
|
||||
.AddOperation(outPath.Balance.ReadStableMassOp(ref EndMass, test.MassRepeats, test.MassSpread, test.MassMethod))
|
||||
.AddOperation(cBrd.UpdateTankWeightOp())
|
||||
.EnterState();
|
||||
.AddOperation(processDataLoggingOp)
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
@ -328,6 +426,7 @@ namespace TBF.BenchControl.TestMethods.CombinedMeters
|
||||
}
|
||||
while (!e.Contains(Event.BalanceDone));
|
||||
///
|
||||
log.WarnFormat("End mass = {0}kg", EndMass);
|
||||
TestEndTime = DateTime.Now;
|
||||
|
||||
//------------------------------------------------
|
||||
@ -464,13 +563,11 @@ namespace TBF.BenchControl.TestMethods.CombinedMeters
|
||||
/// Append the results to the CSV-file
|
||||
allResults.Info(TestResult2CsvLine(testName, test.Part));
|
||||
|
||||
|
||||
if (++repetitionNr <= test.Repeats)
|
||||
{
|
||||
goto loop;
|
||||
}
|
||||
|
||||
|
||||
stopTest:
|
||||
|
||||
///----------------------///
|
||||
|
||||
@ -33,17 +33,11 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection
|
||||
IList<Event> e = new List<Event>(); /// Events from currently running operations
|
||||
Event retVal = Event.Done;
|
||||
checkUiOp = new Operations.CheckUIOp(true); /// Runs in more then one state
|
||||
|
||||
LtrPerRefPulse = outPath.FlowMeter.LtrPerPulse; /// [ltr/pulse], nominal flow in [m3/h]
|
||||
|
||||
/// Notes:
|
||||
/// float timeHr = volumeLtr / (1000.0f * targetFlow);
|
||||
/// float timeSec = 3600.0f * timeHr;
|
||||
/// int refPulses = (int)(timeSec * (2000.0f * targetFlow / pOut.FlowMeter.NominalFlow));
|
||||
int totalPulses = (int)(test.Volume / LtrPerRefPulse + 0.5f);
|
||||
|
||||
processDataLoggingOp = new TBF.BenchControl.Operations.ProcessDataLoggingOp(processDataLogger, this);
|
||||
|
||||
LtrPerRefPulse = outPath.FlowMeter.LtrPerPulse;
|
||||
int totalPulses = (int)(test.Volume / LtrPerRefPulse + 0.5f);
|
||||
|
||||
int repetitionNr = 1; /// First test: repetitionNr = 1
|
||||
|
||||
//====================================
|
||||
@ -55,8 +49,6 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection
|
||||
case Event.UiCmdStop: { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
|
||||
int flowSetTime0 = StateMachine.Time;
|
||||
|
||||
//====================================
|
||||
loop:
|
||||
/// Start the test, initialize test results
|
||||
@ -65,126 +57,131 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection
|
||||
TestStartTime = DateTime.Now;
|
||||
TestProgressEventArgs.SetEstimatedTimes(new int[] { 1, 1, 1, 30, Convert.ToInt32(test.TstTime) + 15, 0, 0 });
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.JustStarted));
|
||||
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
int flowSetTime0 = StateMachine.Time;
|
||||
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Checking_tank_capacity);
|
||||
//------------------------------------------------
|
||||
bool tankEmptyingInProgress = test.Emptying;
|
||||
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Checking_tank_capacity);
|
||||
//------------------------------------------------
|
||||
bool tankEmptyingInProgress = test.Emptying;
|
||||
|
||||
if (!tankEmptyingInProgress) /// If condition met => skip measuring and force emptying
|
||||
{
|
||||
///
|
||||
/// Measure the weight and skip emptying if there is enough room in the tank
|
||||
///
|
||||
State.Create("FlyingStartMassCollection : Checking available tank capacity")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(outPath.Balance.ReadMassOp(ref Mass))
|
||||
.EnterState();
|
||||
do {
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test,e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
if (!tankEmptyingInProgress) /// If condition met => skip measuring and force emptying
|
||||
{
|
||||
///
|
||||
/// Measure the weight and skip emptying if there is enough room in the tank
|
||||
///
|
||||
State.Create("FlyingStartMassCollection : Checking available tank capacity")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(outPath.Balance.ReadMassOp(ref Mass))
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.BalanceDone));
|
||||
while (!e.Contains(Event.BalanceDone));
|
||||
|
||||
float estimatedEndMass = Mass.Val + test.Volume;
|
||||
if (estimatedEndMass >= outPath.Balance.Capacity * Constants.TankFullFactor)
|
||||
{
|
||||
tankEmptyingInProgress = true;
|
||||
}
|
||||
}
|
||||
///
|
||||
if (tankEmptyingInProgress)
|
||||
{
|
||||
State.Create("SequenceBase : Opening the emptying valve")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(StateMachine.ControlBoard.SetValvesOp(outPath.EmptyTankValve, null))
|
||||
.EnterState();
|
||||
do {
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test,e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.ValvesSet));
|
||||
}
|
||||
float estimatedEndMass = Mass.Val + test.Volume;
|
||||
if (estimatedEndMass >= outPath.Balance.Capacity * Constants.TankFullFactor)
|
||||
{
|
||||
tankEmptyingInProgress = true;
|
||||
}
|
||||
}
|
||||
///
|
||||
if (tankEmptyingInProgress)
|
||||
{
|
||||
State.Create("SequenceBase : Opening the emptying valve")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(StateMachine.ControlBoard.SetValvesOp(outPath.EmptyTankValve, null))
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.ValvesSet));
|
||||
}
|
||||
|
||||
|
||||
if (inPath.Pump != null)
|
||||
{
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Starting_the_pump);
|
||||
//------------------------------------------------
|
||||
if (inPath.Pump is GenericDevices.IPumpFM) (inPath.Pump as GenericDevices.IPumpFM).TurnOn(test.PumpPower);
|
||||
///
|
||||
State.Create("FlyingStartMassCollection : Starting the pump")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(cBrd.SetValvesOp(inPath.Pump, null))
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.EnterState();
|
||||
do {
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
if (inPath.Pump != null)
|
||||
{
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Starting_the_pump);
|
||||
//------------------------------------------------
|
||||
if (inPath.Pump is GenericDevices.IPumpFM) (inPath.Pump as GenericDevices.IPumpFM).TurnOn(test.PumpPower);
|
||||
///
|
||||
State.Create("FlyingStartMassCollection : Starting the pump")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(cBrd.SetValvesOp(inPath.Pump, null))
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
|
||||
if (TestAndLogUiCmdStop(test,e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.ValvesSet));
|
||||
}
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.ValvesSet));
|
||||
}
|
||||
|
||||
|
||||
if (test.TimePump2StartV > 0)
|
||||
{
|
||||
State.Create("FlyingStartMassCollection : Waiting after the pump started")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(new Operations.TimerOp(test.TimePump2StartV))
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.EnterState();
|
||||
do {
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
if (test.TimePump2StartV > 0)
|
||||
{
|
||||
State.Create("FlyingStartMassCollection : Waiting after the pump started")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(new Operations.TimerOp(test.TimePump2StartV))
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
|
||||
if (TestAndLogUiCmdStop(test,e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.TimerExpired));
|
||||
}
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.TimerExpired));
|
||||
}
|
||||
|
||||
|
||||
if (benchPath.StopBFValve != null)
|
||||
{
|
||||
State.Create("FlyingStartMassCollection : Opening the stop backflow valve")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(StateMachine.ControlBoard.SetValvesOp(benchPath.StopBFValve, null))
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.EnterState();
|
||||
do {
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
if (TestAndLogUiCmdStop(test,e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.ValvesSet));
|
||||
}
|
||||
if (benchPath.StopBFValve != null)
|
||||
{
|
||||
State.Create("FlyingStartMassCollection : Opening the stop backflow valve")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(StateMachine.ControlBoard.SetValvesOp(benchPath.StopBFValve, null))
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.ValvesSet));
|
||||
}
|
||||
|
||||
|
||||
if (test.TimeBeforeFlow > 0)
|
||||
{
|
||||
State.Create("FlyingStartMassCollection : Waiting before flow setting process starts")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(new Operations.TimerOp(test.TimeBeforeFlow))
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.EnterState();
|
||||
do {
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
if (test.TimeBeforeFlow > 0)
|
||||
{
|
||||
State.Create("FlyingStartMassCollection : Waiting before flow setting process starts")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(new Operations.TimerOp(test.TimeBeforeFlow))
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
|
||||
if (TestAndLogUiCmdStop(test,e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.TimerExpired));
|
||||
}
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.TimerExpired));
|
||||
}
|
||||
|
||||
|
||||
setting_flow:
|
||||
@ -192,62 +189,61 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Setting_the_flow);
|
||||
//------------------------------------------------
|
||||
State.Create("FlyingStartMassCollection : Setting the flow")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.AddOperation(outPath.RegulValve.SetFlowOp(outPath.FlowMeter, test.Qfrom, test.Qto, outPath.PidCoef, RefFlow, 990)) /// timeout = 16.5 min.
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
State.Create("FlyingStartMassCollection : Setting the flow")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(StateMachine.ControlBoard.UpdateTankWeightOp())
|
||||
.AddOperation(outPath.RegulValve.SetFlowOp(outPath.FlowMeter, test.Qfrom, test.Qto, outPath.PidCoef, RefFlow, 990)) /// timeout = 16.5 min.
|
||||
.EnterState();
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
Bridge.OnProcessData(this, new ProcessDataEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
Bridge.OnTestProgress(this, new TestProgressEventArgs(test, repetitionNr, Config.Entities.Progress.FlowSetting));
|
||||
|
||||
if (e.Contains(Event.OpArgumentError)) { retVal = Event.OpArgumentError; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test,e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
if (e.Contains(Event.OpArgumentError)) { retVal = Event.OpArgumentError; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test, e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
if (e.Contains(Event.RegulValveTimeOut))
|
||||
{
|
||||
Bridge.OnError(this, Strings.Timeout);
|
||||
retVal = Event.Done;
|
||||
goto stopTest;
|
||||
}
|
||||
if (e.Contains(Event.Next)) goto flow_set;
|
||||
}
|
||||
while (!e.Contains(Event.FlowReached));
|
||||
{
|
||||
Bridge.OnError(this, Strings.Timeout);
|
||||
retVal = Event.Done;
|
||||
goto stopTest;
|
||||
}
|
||||
if (e.Contains(Event.Next)) goto flow_set;
|
||||
}
|
||||
while (!e.Contains(Event.FlowReached));
|
||||
|
||||
|
||||
flow_set:
|
||||
|
||||
int flowSetTime = StateMachine.Time - flowSetTime0;
|
||||
float currentFlow = RefFlow.Val;
|
||||
int flowSetTime = StateMachine.Time - flowSetTime0;
|
||||
float currentFlow = RefFlow.Val;
|
||||
|
||||
/// Extract cameras from the current sensors path, add operations to the detection state
|
||||
IList<IOperation> measureOperations = new List<IOperation>();
|
||||
for (int i = 0; i < sensPath.RegisterReaders.Length; i++)
|
||||
{
|
||||
GenericDevices.ICameraRoi cameraRoi = sensPath.RegisterReaders[i] as GenericDevices.ICameraRoi;
|
||||
if (cameraRoi != null) measureOperations.Add(cameraRoi.MeasureOp());
|
||||
}
|
||||
/// Extract cameras from the current sensors path, add operations to the detection state
|
||||
IList<IOperation> measureOperations = new List<IOperation>();
|
||||
for (int i = 0; i < sensPath.RegisterReaders.Length; i++)
|
||||
{
|
||||
GenericDevices.ICameraRoi cameraRoi = sensPath.RegisterReaders[i] as GenericDevices.ICameraRoi;
|
||||
if (cameraRoi != null) measureOperations.Add(cameraRoi.MeasureOp());
|
||||
}
|
||||
|
||||
|
||||
if (tankEmptyingInProgress)
|
||||
{
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Closing_the_tank);
|
||||
//------------------------------------------------
|
||||
if (tankEmptyingInProgress)
|
||||
{
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Closing_the_tank);
|
||||
//------------------------------------------------
|
||||
|
||||
///
|
||||
/// Make sure tank emptying completed
|
||||
///
|
||||
switch (EmptyTheTank(outPath.EmptyTankValve, outPath.Balance))
|
||||
{
|
||||
case Event.Error: { retVal = Event.Error; goto stopTest; }
|
||||
case Event.UiCmdStop: { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
|
||||
tankEmptyingInProgress = false;
|
||||
}
|
||||
///
|
||||
/// Make sure tank emptying completed
|
||||
///
|
||||
switch (EmptyTheTank(outPath.EmptyTankValve, outPath.Balance))
|
||||
{
|
||||
case Event.Error: { retVal = Event.Error; goto stopTest; }
|
||||
case Event.UiCmdStop: { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
|
||||
tankEmptyingInProgress = false;
|
||||
}
|
||||
|
||||
if (test.TimeFlow2Mass > 0)
|
||||
{
|
||||
@ -258,7 +254,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection
|
||||
.EnterState();
|
||||
do{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test,e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.TimerExpired));
|
||||
@ -333,7 +329,6 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection
|
||||
|
||||
/// Measurement loop - preparation
|
||||
readRegistersOp = new Operations.ReadMoreRegistersOp(sensPath.RegisterReaders);
|
||||
queryEnd1 = cBrd.QueryMeasurementEndOp();
|
||||
|
||||
int estimtdEndTime = StateMachine.Time + (int)test.TstTime;
|
||||
ClearAllStatistics();
|
||||
@ -353,7 +348,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection
|
||||
.AddOperation((StateMachine.Ambient != null)
|
||||
? StateMachine.Ambient.ReadAmbientOp(AmbientTemp, AmbientPressure, AmbientHumidity)
|
||||
: null)
|
||||
.AddOperation(queryEnd1)
|
||||
.AddOperation(cBrd.QueryMeasurementEndOp())
|
||||
.AddOperation(processDataLoggingOp)
|
||||
.EnterState();
|
||||
do
|
||||
@ -389,7 +384,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection
|
||||
//------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Measuring_the_weight);
|
||||
//------------------------------------------------
|
||||
State.Create("FlyingStartMassCollection : Waiting before 2nd mass measurement")
|
||||
State.Create("FlyingStartMassCollection : Waiting before the 2nd mass measurement")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(benchPath.TempIn.ReadTempOp(ref TempIn))
|
||||
.AddOperation(benchPath.TempOut.ReadTempOp(ref TempOut))
|
||||
@ -407,14 +402,14 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection
|
||||
do
|
||||
{
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
if (e.Contains(Event.Error)) { retVal = Event.Error; goto stopTest; }
|
||||
if (TestAndLogUiCmdStop(test,e)) { retVal = Event.UiCmdStop; goto stopTest; }
|
||||
}
|
||||
while (!e.Contains(Event.TimerExpired));
|
||||
|
||||
LogProcessHeader(processDataLogger, "End mass");
|
||||
|
||||
State.Create("FlyingStartMassCollection : Measuring the end mass")
|
||||
State.Create("FlyingStartMassCollection : Measuring the end mass")
|
||||
.AddOperation(checkUiOp)
|
||||
.AddOperation(benchPath.TempIn.ReadTempOp(ref TempIn))
|
||||
.AddOperation(benchPath.TempOut.ReadTempOp(ref TempOut))
|
||||
@ -507,59 +502,122 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection
|
||||
{
|
||||
if (test.Part != 0 && test.Part != Utils.PartNr(i + 1, BatchRslts.Batch.Compound)) continue;
|
||||
|
||||
Results.Entities.MeterTestRslt meterRslt = BatchRslts.GetMeterTestRslt(testName, i, Config.Entities.CompoundMeterId.Single);
|
||||
GenericDevices.IRegisterReader regReader = sensPath.RegisterReaders[i];
|
||||
WaterMeters.iPerl.WaterMeter iPerl = regReader as WaterMeters.iPerl.WaterMeter;
|
||||
if (BatchRslts.Batch.Compound)
|
||||
{
|
||||
///
|
||||
/// Compound meters
|
||||
///
|
||||
Results.Entities.MeterTestRslt mainMeterRslt = BatchRslts.GetMeterTestRslt(testName, i, Config.Entities.CompoundMeterId.CompoundMain);
|
||||
Results.Entities.MeterTestRslt auxMeterRslt = BatchRslts.GetMeterTestRslt(testName, i, Config.Entities.CompoundMeterId.CompoundAux);
|
||||
|
||||
if (meterRslt != null && regReader != null)
|
||||
{
|
||||
meterRslt.PulsesPerLiter = regReader.PulsesPerLtr;
|
||||
meterRslt.PulsesMeter = Convert.ToDouble(regReader.WMPulses);
|
||||
meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses);
|
||||
for (int isAux = 0; isAux <= 1; isAux++) /// 0=main, 1=aux
|
||||
{
|
||||
GenericDevices.IRegisterReader regReader = sensPath.RegisterReaders[2 * i + isAux];
|
||||
Results.Entities.MeterTestRslt meterRslt = (isAux == 0) ? mainMeterRslt : auxMeterRslt;
|
||||
|
||||
if (iPerl != null)
|
||||
{
|
||||
meterRslt.TimestampStart = iPerl.TimestampSecStart;
|
||||
meterRslt.TimestampEnd = iPerl.NoSamples ? (iPerl.TimestampSecStart + tstRslt.TestTime) : iPerl.TimestampSecEnd;
|
||||
meterRslt.TestTime = iPerl.NoSamples ? tstRslt.TestTime : (meterRslt.TimestampEnd - meterRslt.TimestampStart);
|
||||
meterRslt.VolumeStart = iPerl.VolumeLtrStart; /// liter
|
||||
meterRslt.VolumeEnd = iPerl.VolumeLtrEnd; /// liter
|
||||
meterRslt.VolumeMeter = Math.Abs(iPerl.VolumeLtrEnd - iPerl.VolumeLtrStart);
|
||||
meterRslt.VolumeRef = tstRslt.VolumeCTV * meterRslt.TestTime / tstRslt.TestTime;
|
||||
iPerl.VolumeLtrRef = meterRslt.VolumeRef;
|
||||
if (meterRslt != null && regReader != null)
|
||||
{
|
||||
meterRslt.PulsesPerLiter = regReader.PulsesPerLtr;
|
||||
|
||||
/// Optionally supress pulses from the large water meter
|
||||
meterRslt.PulsesMeter = Convert.ToDouble(regReader.WMPulses);
|
||||
meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses);
|
||||
|
||||
meterRslt.TestTime = tstRslt.TestTime;
|
||||
meterRslt.VolumeStart = 0;
|
||||
meterRslt.VolumeEnd = 0;
|
||||
meterRslt.VolumeRef = tstRslt.VolumeCTV;
|
||||
meterRslt.VolumeMeter = meterRslt.PulsesMeter * regReader.LtrsPerPulse; /// liter
|
||||
|
||||
if (meterRslt.PulsesMaster != 0)
|
||||
{
|
||||
meterRslt.VolumeMeter *= (tstRslt.PulsesMaster / meterRslt.PulsesMaster);
|
||||
}
|
||||
|
||||
meterRslt.Error = Formulas.ErrorFromVolumes(meterRslt.VolumeMeter, tstRslt.VolumeCTV); /// Main/Aux meter error is not usedfor evaluation
|
||||
}
|
||||
}
|
||||
|
||||
Results.Entities.MeterTestRslt compoundMeterRslt = BatchRslts.GetMeterTestRslt(testName, i, Config.Entities.CompoundMeterId.Compound);
|
||||
|
||||
if (compoundMeterRslt != null && mainMeterRslt != null && auxMeterRslt != null)
|
||||
{
|
||||
compoundMeterRslt.VolumeRef = tstRslt.VolumeCTV;
|
||||
compoundMeterRslt.VolumeMeter = mainMeterRslt.VolumeMeter + auxMeterRslt.VolumeMeter;
|
||||
compoundMeterRslt.PulsesMaster = tstRslt.PulsesMaster;
|
||||
compoundMeterRslt.TestTime = tstRslt.TestTime;
|
||||
compoundMeterRslt.Error = Formulas.ErrorFromVolumes(compoundMeterRslt.VolumeMeter, compoundMeterRslt.VolumeRef);
|
||||
compoundMeterRslt.Passed = (compoundMeterRslt.Error >= test.ErrLimLo + test.Uncertainty)
|
||||
&& (compoundMeterRslt.Error <= test.ErrLimHi - test.Uncertainty);
|
||||
mainMeterRslt.Passed = auxMeterRslt.Passed = compoundMeterRslt.Passed;
|
||||
mainMeterRslt.TestDone = auxMeterRslt.TestDone = compoundMeterRslt.TestDone = true;
|
||||
}
|
||||
}
|
||||
#if HEAT_METERS_SUPPORT
|
||||
else if (BatchRslts.Batch.HeatMeter)
|
||||
{
|
||||
///
|
||||
/// Heat meters
|
||||
///
|
||||
}
|
||||
#endif
|
||||
else
|
||||
{
|
||||
/// MetersKind.Single meters
|
||||
Results.Entities.MeterTestRslt meterRslt = BatchRslts.GetMeterTestRslt(testName, i, Config.Entities.CompoundMeterId.Single);
|
||||
GenericDevices.IRegisterReader regReader = sensPath.RegisterReaders[i];
|
||||
WaterMeters.iPerl.WaterMeter iPerl = regReader as WaterMeters.iPerl.WaterMeter;
|
||||
|
||||
if (meterRslt != null && regReader != null)
|
||||
{
|
||||
meterRslt.PulsesPerLiter = regReader.PulsesPerLtr;
|
||||
meterRslt.PulsesMeter = Convert.ToDouble(regReader.WMPulses);
|
||||
meterRslt.PulsesMaster = Convert.ToDouble(regReader.WMRefPulses);
|
||||
|
||||
if (iPerl != null)
|
||||
{
|
||||
meterRslt.TimestampStart = iPerl.TimestampSecStart;
|
||||
meterRslt.TimestampEnd = iPerl.NoSamples ? (iPerl.TimestampSecStart + tstRslt.TestTime) : iPerl.TimestampSecEnd;
|
||||
meterRslt.TestTime = iPerl.NoSamples ? tstRslt.TestTime : (meterRslt.TimestampEnd - meterRslt.TimestampStart);
|
||||
meterRslt.VolumeStart = iPerl.VolumeLtrStart; /// liter
|
||||
meterRslt.VolumeEnd = iPerl.VolumeLtrEnd; /// liter
|
||||
meterRslt.VolumeMeter = Math.Abs(iPerl.VolumeLtrEnd - iPerl.VolumeLtrStart);
|
||||
meterRslt.VolumeRef = tstRslt.VolumeCTV * meterRslt.TestTime / tstRslt.TestTime;
|
||||
iPerl.VolumeLtrRef = meterRslt.VolumeRef;
|
||||
#if IPERLST || IPERLST_SPECIAL
|
||||
meterRslt.WaterMeter.CalibFactor = (iPerl.CalibrationStruct != null) ? iPerl.CalibrationStruct.Calibration : 0;
|
||||
meterRslt.WaterMeter.Q2Correction = iPerl.Q2CorrectionFactor;
|
||||
#endif
|
||||
iPerl.LastTestResult2 = iPerl.LastTestResult; /// Save shift previous test result
|
||||
iPerl.LastTestResult = meterRslt; /// Save this test result
|
||||
iPerl.NominalTestFlow = 500.0 * (test.Qfrom + test.Qto); /// Ave. + convert to liter/hour
|
||||
}
|
||||
else
|
||||
{
|
||||
meterRslt.TestTime = tstRslt.TestTime; /// TODO: Malo by sa citat z dosky
|
||||
meterRslt.VolumeStart = 0; /// liter
|
||||
meterRslt.VolumeEnd = 0; /// liter
|
||||
meterRslt.VolumeMeter = meterRslt.PulsesMeter * regReader.LtrsPerPulse; /// liter
|
||||
meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// liter
|
||||
}
|
||||
iPerl.LastTestResult2 = iPerl.LastTestResult; /// Save shift previous test result
|
||||
iPerl.LastTestResult = meterRslt; /// Save this test result
|
||||
iPerl.NominalTestFlow = 500.0 * (test.Qfrom + test.Qto); /// Ave. + convert to liter/hour
|
||||
}
|
||||
else
|
||||
{
|
||||
meterRslt.TestTime = tstRslt.TestTime; /// TODO: Malo by sa citat z dosky
|
||||
meterRslt.VolumeStart = 0; /// liter
|
||||
meterRslt.VolumeEnd = 0; /// liter
|
||||
meterRslt.VolumeMeter = meterRslt.PulsesMeter * regReader.LtrsPerPulse; /// liter
|
||||
meterRslt.VolumeRef = meterRslt.PulsesMaster * tstRslt.ConstMaster; /// liter
|
||||
}
|
||||
|
||||
meterRslt.Error = Formulas.ErrorFromVolumes(meterRslt.VolumeMeter, meterRslt.VolumeRef);
|
||||
meterRslt.Passed = (meterRslt.Error >= test.ErrLimLo + test.Uncertainty)
|
||||
&& (meterRslt.Error <= test.ErrLimHi - test.Uncertainty);
|
||||
meterRslt.TestDone = true;
|
||||
}
|
||||
}
|
||||
meterRslt.Error = Formulas.ErrorFromVolumes(meterRslt.VolumeMeter, meterRslt.VolumeRef);
|
||||
meterRslt.Passed = (meterRslt.Error >= test.ErrLimLo + test.Uncertainty)
|
||||
&& (meterRslt.Error <= test.ErrLimHi - test.Uncertainty);
|
||||
meterRslt.TestDone = true;
|
||||
}
|
||||
}
|
||||
|
||||
tstRslt.Components = Results.Entities.Components
|
||||
.UpdateList(BatchRslts.ComponentsList,
|
||||
new Results.Entities.Components((BenchInfo != null) ? BenchInfo.TestBenchId : 1,
|
||||
(BenchInfo != null) ? BenchInfo.TestBenchName : "testbench",
|
||||
inPath.Pump != null ? inPath.Pump.Name : string.Empty,
|
||||
outPath.FlowMeter != null ? outPath.FlowMeter.Name : string.Empty,
|
||||
outPath.Balance != null ? outPath.Balance.Name : string.Empty,
|
||||
outPath.RegulValve != null ? outPath.RegulValve.Name : string.Empty,
|
||||
outPath.Diverter != null ? outPath.Diverter.Name : string.Empty));
|
||||
tstRslt.Components = Results.Entities.Components
|
||||
.UpdateList(BatchRslts.ComponentsList,
|
||||
new Results.Entities.Components((BenchInfo != null) ? BenchInfo.TestBenchId : 1,
|
||||
(BenchInfo != null) ? BenchInfo.TestBenchName : "testbench",
|
||||
inPath.Pump != null ? inPath.Pump.Name : string.Empty,
|
||||
outPath.FlowMeter != null ? outPath.FlowMeter.Name : string.Empty,
|
||||
outPath.Balance != null ? outPath.Balance.Name : string.Empty,
|
||||
outPath.RegulValve != null ? outPath.RegulValve.Name : string.Empty,
|
||||
outPath.Diverter != null ? outPath.Diverter.Name : string.Empty));
|
||||
}
|
||||
|
||||
/// Update results
|
||||
Bridge.OnTestCompleted(this, new TestCompletedEventArgs(testName, tstRslt));
|
||||
|
||||
@ -17,7 +17,7 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection
|
||||
|
||||
public bool Evaluate(Test test) { return true; }
|
||||
public bool Publish(Test test) { return true; }
|
||||
public bool CanTest(MetersKind meters) { return meters == MetersKind.Single; }
|
||||
public bool CanTest(MetersKind meters) { return true; }
|
||||
|
||||
public TestMethod()
|
||||
{
|
||||
|
||||
@ -57,7 +57,7 @@ namespace TBF.Forms
|
||||
nrMetersLabel.Text = Strings.Nr_meters_in_a_group;
|
||||
groupBox1.Text = Strings.Water_Meter;
|
||||
singleRadioButton.Text = Strings.SingleBtnText;
|
||||
combinedRadioButton.Text = Strings.CombinedBtnText;
|
||||
combinedRadioButton.Text = Strings.Compound;
|
||||
groupBox2.Text = Strings.Device;
|
||||
screenRadioButton.Text = Strings.ScreenBtnText;
|
||||
printerRadioButton.Text = Strings.PrinterBtnText;
|
||||
|
||||
@ -106,6 +106,11 @@ namespace TBF
|
||||
[XmlIgnore]
|
||||
public int MetersColumnCount { get { return (MetersColumnWidths != null) ? MetersColumnWidths.Length : 0; } }
|
||||
|
||||
[XmlArrayAttribute("HeatMetersColumnWidths")]
|
||||
public int[] HeatMetersColumnWidths;
|
||||
[XmlIgnore]
|
||||
public int HeatMetersColumnCount { get { return (HeatMetersColumnWidths != null) ? HeatMetersColumnWidths.Length : 0; } }
|
||||
|
||||
/// Transitions
|
||||
public int TransitionsDlgLeft;
|
||||
public int TransitionsDlgTop;
|
||||
|
||||
@ -563,7 +563,6 @@ namespace TBF
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if ((testResults != null) && (testResults.Count != 0) && (testResults[0].MetersKind == MetersKind.Single))
|
||||
{
|
||||
PrintOrderDocument doc = new PrintOrderDocument(procedure[0], testResults, tester);
|
||||
|
||||
290
TestBenchFramework/PathsDlg.Designer.cs
generated
290
TestBenchFramework/PathsDlg.Designer.cs
generated
@ -31,150 +31,148 @@ namespace TBF
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PathsDlg));
|
||||
this.splitContainer = new System.Windows.Forms.SplitContainer();
|
||||
this.pathsTabControl = new System.Windows.Forms.TabControl();
|
||||
this.feedingTabPage = new System.Windows.Forms.TabPage();
|
||||
this.pathsFeedingCtrl = new TBF.UiControls.PathsFeedingCtrl();
|
||||
this.benchTabPage = new System.Windows.Forms.TabPage();
|
||||
this.pathsBenchCtrl = new TBF.UiControls.PathsBenchCtrl();
|
||||
this.outputTabPage = new System.Windows.Forms.TabPage();
|
||||
this.pathsOutputCtrl = new TBF.UiControls.PathsOutputCtrl();
|
||||
this.metersTabPage = new System.Windows.Forms.TabPage();
|
||||
this.pathsMetersCtrl = new TBF.UiControls.PathsMetersCtrl();
|
||||
this.sharedButtons = new TBF.UiControls.SharedButtons();
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer)).BeginInit();
|
||||
this.splitContainer.Panel1.SuspendLayout();
|
||||
this.splitContainer.Panel2.SuspendLayout();
|
||||
this.splitContainer.SuspendLayout();
|
||||
this.pathsTabControl.SuspendLayout();
|
||||
this.feedingTabPage.SuspendLayout();
|
||||
this.benchTabPage.SuspendLayout();
|
||||
this.outputTabPage.SuspendLayout();
|
||||
this.metersTabPage.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// splitContainer
|
||||
//
|
||||
resources.ApplyResources(this.splitContainer, "splitContainer");
|
||||
this.splitContainer.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
|
||||
this.splitContainer.Name = "splitContainer";
|
||||
//
|
||||
// splitContainer.Panel1
|
||||
//
|
||||
resources.ApplyResources(this.splitContainer.Panel1, "splitContainer.Panel1");
|
||||
this.splitContainer.Panel1.Controls.Add(this.pathsTabControl);
|
||||
//
|
||||
// splitContainer.Panel2
|
||||
//
|
||||
resources.ApplyResources(this.splitContainer.Panel2, "splitContainer.Panel2");
|
||||
this.splitContainer.Panel2.Controls.Add(this.sharedButtons);
|
||||
//
|
||||
// pathsTabControl
|
||||
//
|
||||
resources.ApplyResources(this.pathsTabControl, "pathsTabControl");
|
||||
this.pathsTabControl.Controls.Add(this.feedingTabPage);
|
||||
this.pathsTabControl.Controls.Add(this.benchTabPage);
|
||||
this.pathsTabControl.Controls.Add(this.outputTabPage);
|
||||
this.pathsTabControl.Controls.Add(this.metersTabPage);
|
||||
this.pathsTabControl.Name = "pathsTabControl";
|
||||
this.pathsTabControl.SelectedIndex = 0;
|
||||
this.pathsTabControl.SelectedIndexChanged += new System.EventHandler(this.pathsTabControl_SelectedIndexChanged);
|
||||
//
|
||||
// feedingTabPage
|
||||
//
|
||||
resources.ApplyResources(this.feedingTabPage, "feedingTabPage");
|
||||
this.feedingTabPage.Controls.Add(this.pathsFeedingCtrl);
|
||||
this.feedingTabPage.Name = "feedingTabPage";
|
||||
this.feedingTabPage.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// pathsFeedingCtrl
|
||||
//
|
||||
resources.ApplyResources(this.pathsFeedingCtrl, "pathsFeedingCtrl");
|
||||
this.pathsFeedingCtrl.DoubleClickActivation = false;
|
||||
this.pathsFeedingCtrl.FullRowSelect = true;
|
||||
this.pathsFeedingCtrl.GridLines = true;
|
||||
this.pathsFeedingCtrl.Name = "pathsFeedingCtrl";
|
||||
this.pathsFeedingCtrl.UseCompatibleStateImageBehavior = false;
|
||||
this.pathsFeedingCtrl.View = System.Windows.Forms.View.Details;
|
||||
this.pathsFeedingCtrl.SelectedIndexChanged += new System.EventHandler(this.SelectedIndexChanged);
|
||||
//
|
||||
// benchTabPage
|
||||
//
|
||||
resources.ApplyResources(this.benchTabPage, "benchTabPage");
|
||||
this.benchTabPage.Controls.Add(this.pathsBenchCtrl);
|
||||
this.benchTabPage.Name = "benchTabPage";
|
||||
this.benchTabPage.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// pathsBenchCtrl
|
||||
//
|
||||
resources.ApplyResources(this.pathsBenchCtrl, "pathsBenchCtrl");
|
||||
this.pathsBenchCtrl.DoubleClickActivation = false;
|
||||
this.pathsBenchCtrl.FullRowSelect = true;
|
||||
this.pathsBenchCtrl.GridLines = true;
|
||||
this.pathsBenchCtrl.Name = "pathsBenchCtrl";
|
||||
this.pathsBenchCtrl.UseCompatibleStateImageBehavior = false;
|
||||
this.pathsBenchCtrl.View = System.Windows.Forms.View.Details;
|
||||
this.pathsBenchCtrl.SelectedIndexChanged += new System.EventHandler(this.SelectedIndexChanged);
|
||||
//
|
||||
// outputTabPage
|
||||
//
|
||||
resources.ApplyResources(this.outputTabPage, "outputTabPage");
|
||||
this.outputTabPage.Controls.Add(this.pathsOutputCtrl);
|
||||
this.outputTabPage.Name = "outputTabPage";
|
||||
this.outputTabPage.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// pathsOutputCtrl
|
||||
//
|
||||
resources.ApplyResources(this.pathsOutputCtrl, "pathsOutputCtrl");
|
||||
this.pathsOutputCtrl.DoubleClickActivation = false;
|
||||
this.pathsOutputCtrl.FullRowSelect = true;
|
||||
this.pathsOutputCtrl.GridLines = true;
|
||||
this.pathsOutputCtrl.Name = "pathsOutputCtrl";
|
||||
this.pathsOutputCtrl.UseCompatibleStateImageBehavior = false;
|
||||
this.pathsOutputCtrl.View = System.Windows.Forms.View.Details;
|
||||
this.pathsOutputCtrl.SelectedIndexChanged += new System.EventHandler(this.SelectedIndexChanged);
|
||||
//
|
||||
// metersTabPage
|
||||
//
|
||||
resources.ApplyResources(this.metersTabPage, "metersTabPage");
|
||||
this.metersTabPage.Controls.Add(this.pathsMetersCtrl);
|
||||
this.metersTabPage.Name = "metersTabPage";
|
||||
this.metersTabPage.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// pathsMetersCtrl
|
||||
//
|
||||
resources.ApplyResources(this.pathsMetersCtrl, "pathsMetersCtrl");
|
||||
this.pathsMetersCtrl.DoubleClickActivation = false;
|
||||
this.pathsMetersCtrl.FullRowSelect = true;
|
||||
this.pathsMetersCtrl.GridLines = true;
|
||||
this.pathsMetersCtrl.Name = "pathsMetersCtrl";
|
||||
this.pathsMetersCtrl.UseCompatibleStateImageBehavior = false;
|
||||
this.pathsMetersCtrl.View = System.Windows.Forms.View.Details;
|
||||
this.pathsMetersCtrl.SelectedIndexChanged += new System.EventHandler(this.SelectedIndexChanged);
|
||||
//
|
||||
// sharedButtons
|
||||
//
|
||||
resources.ApplyResources(this.sharedButtons, "sharedButtons");
|
||||
this.sharedButtons.Name = "sharedButtons";
|
||||
//
|
||||
// PathsDlg
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.splitContainer);
|
||||
this.Name = "PathsDlg";
|
||||
this.Load += new System.EventHandler(this.PathsDlg_Load);
|
||||
this.splitContainer.Panel1.ResumeLayout(false);
|
||||
this.splitContainer.Panel2.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer)).EndInit();
|
||||
this.splitContainer.ResumeLayout(false);
|
||||
this.pathsTabControl.ResumeLayout(false);
|
||||
this.feedingTabPage.ResumeLayout(false);
|
||||
this.benchTabPage.ResumeLayout(false);
|
||||
this.outputTabPage.ResumeLayout(false);
|
||||
this.metersTabPage.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PathsDlg));
|
||||
this.splitContainer = new System.Windows.Forms.SplitContainer();
|
||||
this.pathsTabControl = new System.Windows.Forms.TabControl();
|
||||
this.feedingTabPage = new System.Windows.Forms.TabPage();
|
||||
this.pathsFeedingCtrl = new TBF.UiControls.PathsFeedingCtrl();
|
||||
this.benchTabPage = new System.Windows.Forms.TabPage();
|
||||
this.pathsBenchCtrl = new TBF.UiControls.PathsBenchCtrl();
|
||||
this.outputTabPage = new System.Windows.Forms.TabPage();
|
||||
this.pathsOutputCtrl = new TBF.UiControls.PathsOutputCtrl();
|
||||
this.metersTabPage = new System.Windows.Forms.TabPage();
|
||||
this.pathsMetersCtrl = new TBF.UiControls.PathsMetersCtrl();
|
||||
this.sharedButtons = new TBF.UiControls.SharedButtons();
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer)).BeginInit();
|
||||
this.splitContainer.Panel1.SuspendLayout();
|
||||
this.splitContainer.Panel2.SuspendLayout();
|
||||
this.splitContainer.SuspendLayout();
|
||||
this.pathsTabControl.SuspendLayout();
|
||||
this.feedingTabPage.SuspendLayout();
|
||||
this.benchTabPage.SuspendLayout();
|
||||
this.outputTabPage.SuspendLayout();
|
||||
this.metersTabPage.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// splitContainer
|
||||
//
|
||||
resources.ApplyResources(this.splitContainer, "splitContainer");
|
||||
this.splitContainer.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
|
||||
this.splitContainer.Name = "splitContainer";
|
||||
//
|
||||
// splitContainer.Panel1
|
||||
//
|
||||
this.splitContainer.Panel1.Controls.Add(this.pathsTabControl);
|
||||
//
|
||||
// splitContainer.Panel2
|
||||
//
|
||||
this.splitContainer.Panel2.Controls.Add(this.sharedButtons);
|
||||
//
|
||||
// pathsTabControl
|
||||
//
|
||||
this.pathsTabControl.Controls.Add(this.feedingTabPage);
|
||||
this.pathsTabControl.Controls.Add(this.benchTabPage);
|
||||
this.pathsTabControl.Controls.Add(this.outputTabPage);
|
||||
this.pathsTabControl.Controls.Add(this.metersTabPage);
|
||||
resources.ApplyResources(this.pathsTabControl, "pathsTabControl");
|
||||
this.pathsTabControl.Name = "pathsTabControl";
|
||||
this.pathsTabControl.SelectedIndex = 0;
|
||||
this.pathsTabControl.SelectedIndexChanged += new System.EventHandler(this.pathsTabControl_SelectedIndexChanged);
|
||||
//
|
||||
// feedingTabPage
|
||||
//
|
||||
this.feedingTabPage.Controls.Add(this.pathsFeedingCtrl);
|
||||
resources.ApplyResources(this.feedingTabPage, "feedingTabPage");
|
||||
this.feedingTabPage.Name = "feedingTabPage";
|
||||
this.feedingTabPage.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// pathsFeedingCtrl
|
||||
//
|
||||
resources.ApplyResources(this.pathsFeedingCtrl, "pathsFeedingCtrl");
|
||||
this.pathsFeedingCtrl.DoubleClickActivation = false;
|
||||
this.pathsFeedingCtrl.FullRowSelect = true;
|
||||
this.pathsFeedingCtrl.GridLines = true;
|
||||
this.pathsFeedingCtrl.Name = "pathsFeedingCtrl";
|
||||
this.pathsFeedingCtrl.UseCompatibleStateImageBehavior = false;
|
||||
this.pathsFeedingCtrl.View = System.Windows.Forms.View.Details;
|
||||
this.pathsFeedingCtrl.SelectedIndexChanged += new System.EventHandler(this.SelectedIndexChanged);
|
||||
//
|
||||
// benchTabPage
|
||||
//
|
||||
this.benchTabPage.Controls.Add(this.pathsBenchCtrl);
|
||||
resources.ApplyResources(this.benchTabPage, "benchTabPage");
|
||||
this.benchTabPage.Name = "benchTabPage";
|
||||
this.benchTabPage.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// pathsBenchCtrl
|
||||
//
|
||||
resources.ApplyResources(this.pathsBenchCtrl, "pathsBenchCtrl");
|
||||
this.pathsBenchCtrl.DoubleClickActivation = false;
|
||||
this.pathsBenchCtrl.FullRowSelect = true;
|
||||
this.pathsBenchCtrl.GridLines = true;
|
||||
this.pathsBenchCtrl.Name = "pathsBenchCtrl";
|
||||
this.pathsBenchCtrl.UseCompatibleStateImageBehavior = false;
|
||||
this.pathsBenchCtrl.View = System.Windows.Forms.View.Details;
|
||||
this.pathsBenchCtrl.SelectedIndexChanged += new System.EventHandler(this.SelectedIndexChanged);
|
||||
//
|
||||
// outputTabPage
|
||||
//
|
||||
this.outputTabPage.Controls.Add(this.pathsOutputCtrl);
|
||||
resources.ApplyResources(this.outputTabPage, "outputTabPage");
|
||||
this.outputTabPage.Name = "outputTabPage";
|
||||
this.outputTabPage.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// pathsOutputCtrl
|
||||
//
|
||||
resources.ApplyResources(this.pathsOutputCtrl, "pathsOutputCtrl");
|
||||
this.pathsOutputCtrl.DoubleClickActivation = false;
|
||||
this.pathsOutputCtrl.FullRowSelect = true;
|
||||
this.pathsOutputCtrl.GridLines = true;
|
||||
this.pathsOutputCtrl.Name = "pathsOutputCtrl";
|
||||
this.pathsOutputCtrl.UseCompatibleStateImageBehavior = false;
|
||||
this.pathsOutputCtrl.View = System.Windows.Forms.View.Details;
|
||||
this.pathsOutputCtrl.SelectedIndexChanged += new System.EventHandler(this.SelectedIndexChanged);
|
||||
//
|
||||
// metersTabPage
|
||||
//
|
||||
this.metersTabPage.Controls.Add(this.pathsMetersCtrl);
|
||||
resources.ApplyResources(this.metersTabPage, "metersTabPage");
|
||||
this.metersTabPage.Name = "metersTabPage";
|
||||
this.metersTabPage.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// pathsMetersCtrl
|
||||
//
|
||||
resources.ApplyResources(this.pathsMetersCtrl, "pathsMetersCtrl");
|
||||
this.pathsMetersCtrl.DoubleClickActivation = false;
|
||||
this.pathsMetersCtrl.FullRowSelect = true;
|
||||
this.pathsMetersCtrl.GridLines = true;
|
||||
this.pathsMetersCtrl.Name = "pathsMetersCtrl";
|
||||
this.pathsMetersCtrl.UseCompatibleStateImageBehavior = false;
|
||||
this.pathsMetersCtrl.View = System.Windows.Forms.View.Details;
|
||||
this.pathsMetersCtrl.SelectedIndexChanged += new System.EventHandler(this.SelectedIndexChanged);
|
||||
//
|
||||
// sharedButtons
|
||||
//
|
||||
resources.ApplyResources(this.sharedButtons, "sharedButtons");
|
||||
this.sharedButtons.Name = "sharedButtons";
|
||||
//
|
||||
// PathsDlg
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.Controls.Add(this.splitContainer);
|
||||
this.Name = "PathsDlg";
|
||||
this.Load += new System.EventHandler(this.PathsDlg_Load);
|
||||
this.splitContainer.Panel1.ResumeLayout(false);
|
||||
this.splitContainer.Panel2.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer)).EndInit();
|
||||
this.splitContainer.ResumeLayout(false);
|
||||
this.pathsTabControl.ResumeLayout(false);
|
||||
this.feedingTabPage.ResumeLayout(false);
|
||||
this.benchTabPage.ResumeLayout(false);
|
||||
this.outputTabPage.ResumeLayout(false);
|
||||
this.metersTabPage.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
@ -186,10 +184,10 @@ namespace TBF
|
||||
private System.Windows.Forms.TabPage benchTabPage;
|
||||
private System.Windows.Forms.TabPage outputTabPage;
|
||||
private System.Windows.Forms.TabPage metersTabPage;
|
||||
private UiControls.SharedButtons sharedButtons;
|
||||
private UiControls.SharedButtons sharedButtons;
|
||||
private UiControls.PathsFeedingCtrl pathsFeedingCtrl;
|
||||
private UiControls.PathsBenchCtrl pathsBenchCtrl;
|
||||
private UiControls.PathsOutputCtrl pathsOutputCtrl;
|
||||
private UiControls.PathsMetersCtrl pathsMetersCtrl;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,5 +1,5 @@
|
||||
///
|
||||
/// Copyright (c) 2013-2015 Sensus Metering Systems
|
||||
/// Copyright (c) 2013-2016 Sensus Metering Systems
|
||||
///
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
@ -22,7 +22,8 @@ namespace TBF
|
||||
Feeding,
|
||||
Bench,
|
||||
Output,
|
||||
Meters,
|
||||
WaterMeters,
|
||||
HeatMeters,
|
||||
}
|
||||
|
||||
/// Used when re-scaling the dialog: 100% = 96dpi, 125% = 120dpi, 150% = 144dpi
|
||||
@ -33,6 +34,11 @@ namespace TBF
|
||||
public IList<IValve> Valves;
|
||||
public ISession Session; /// One common DB session passed also to the controls inside tab pages
|
||||
|
||||
#if HEAT_METERS_SUPPORT
|
||||
private System.Windows.Forms.TabPage heatMetersTabPage;
|
||||
private UiControls.PathsHeatMetersCtrl pathsHeatMetersCtrl;
|
||||
#endif
|
||||
|
||||
public PathsDlg()
|
||||
{
|
||||
/// Detect display setting: 100% = 96dpi, 125% = 120dpi, 150% = 144dpi.
|
||||
@ -64,14 +70,49 @@ namespace TBF
|
||||
pathsTabControl.TabPages[(int)PathsDlgTabs.Feeding].Tag = pathsFeedingCtrl;
|
||||
pathsTabControl.TabPages[(int)PathsDlgTabs.Bench].Tag = pathsBenchCtrl;
|
||||
pathsTabControl.TabPages[(int)PathsDlgTabs.Output].Tag = pathsOutputCtrl;
|
||||
pathsTabControl.TabPages[(int)PathsDlgTabs.Meters].Tag = pathsMetersCtrl;
|
||||
pathsTabControl.TabPages[(int)PathsDlgTabs.WaterMeters].Tag = pathsMetersCtrl;
|
||||
|
||||
// Requires 'Session' to be created
|
||||
// Requires 'Session' to be created
|
||||
pathsFeedingCtrl.Initialize(this, pathsTabControl.TabPages[(int)PathsDlgTabs.Feeding]);
|
||||
pathsBenchCtrl.Initialize(this, pathsTabControl.TabPages[(int)PathsDlgTabs.Bench]);
|
||||
pathsOutputCtrl.Initialize(this, pathsTabControl.TabPages[(int)PathsDlgTabs.Output]);
|
||||
pathsMetersCtrl.Initialize(this, pathsTabControl.TabPages[(int)PathsDlgTabs.Meters]);
|
||||
}
|
||||
pathsMetersCtrl.Initialize(this, pathsTabControl.TabPages[(int)PathsDlgTabs.WaterMeters]);
|
||||
|
||||
#if HEAT_METERS_SUPPORT
|
||||
this.heatMetersTabPage = new System.Windows.Forms.TabPage();
|
||||
this.pathsHeatMetersCtrl = new TBF.UiControls.PathsHeatMetersCtrl();
|
||||
|
||||
this.heatMetersTabPage.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
|
||||
this.pathsTabControl.Controls.Add(this.heatMetersTabPage);
|
||||
//
|
||||
// heatMetersTabPage
|
||||
//
|
||||
this.heatMetersTabPage.Controls.Add(this.pathsHeatMetersCtrl);
|
||||
this.heatMetersTabPage.Name = "heatMetersTabPage";
|
||||
this.heatMetersTabPage.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// pathsHeatMetersCtrl
|
||||
//
|
||||
this.pathsHeatMetersCtrl.DoubleClickActivation = false;
|
||||
this.pathsHeatMetersCtrl.FullRowSelect = true;
|
||||
this.pathsHeatMetersCtrl.GridLines = true;
|
||||
this.pathsHeatMetersCtrl.Name = "pathsHeatMetersCtrl";
|
||||
this.pathsHeatMetersCtrl.UseCompatibleStateImageBehavior = false;
|
||||
this.pathsHeatMetersCtrl.View = System.Windows.Forms.View.Details;
|
||||
this.pathsHeatMetersCtrl.SelectedIndexChanged += new System.EventHandler(this.SelectedIndexChanged);
|
||||
|
||||
this.heatMetersTabPage.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
|
||||
pathsTabControl.TabPages[(int)PathsDlgTabs.HeatMeters].Text = Strings.Heat_meter_sensors; /// Localization
|
||||
pathsTabControl.TabPages[(int)PathsDlgTabs.HeatMeters].Tag = pathsHeatMetersCtrl;
|
||||
|
||||
// Requires 'Session' to be created
|
||||
pathsHeatMetersCtrl.Initialize(this, pathsTabControl.TabPages[(int)PathsDlgTabs.HeatMeters]);
|
||||
#endif
|
||||
}
|
||||
|
||||
private void PathsDlg_Load(object sender, EventArgs e)
|
||||
{
|
||||
@ -89,8 +130,8 @@ namespace TBF
|
||||
pathsTabControl.TabPages[(int)PathsDlgTabs.Feeding].Text = Strings.FeedingTabPageTitle;
|
||||
pathsTabControl.TabPages[(int)PathsDlgTabs.Bench].Text = Strings.BenchTabPageTitle;
|
||||
pathsTabControl.TabPages[(int)PathsDlgTabs.Output].Text = Strings.OutputTabPageTitle;
|
||||
pathsTabControl.TabPages[(int)PathsDlgTabs.Meters].Text = Strings.MetersTabPageTitle;
|
||||
}
|
||||
pathsTabControl.TabPages[(int)PathsDlgTabs.WaterMeters].Text = Strings.MetersTabPageTitle;
|
||||
}
|
||||
|
||||
private void Unlocked(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
@ -117,331 +117,379 @@
|
||||
<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="outputTabPage.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>831, 277</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>pathsTabControl.Parent" xml:space="preserve">
|
||||
<value>splitContainer.Panel1</value>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="splitContainer.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="sharedButtons.TabIndex" type="System.Int32, mscorlib">
|
||||
<data name="splitContainer.IsSplitterFixed" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="splitContainer.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="pathsFeedingCtrl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="pathsFeedingCtrl.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>3, 3</value>
|
||||
</data>
|
||||
<data name="pathsFeedingCtrl.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>825, 271</value>
|
||||
</data>
|
||||
<data name="pathsFeedingCtrl.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>feedingTabPage.Parent" xml:space="preserve">
|
||||
<value>pathsTabControl</value>
|
||||
<data name=">>pathsFeedingCtrl.Name" xml:space="preserve">
|
||||
<value>pathsFeedingCtrl</value>
|
||||
</data>
|
||||
<data name=">>pathsFeedingCtrl.Type" xml:space="preserve">
|
||||
<value>TBF.UiControls.PathsFeedingCtrl, TBF, Version=2.8.315.1, Culture=neutral, PublicKeyToken=null</value>
|
||||
</data>
|
||||
<data name=">>pathsFeedingCtrl.Parent" xml:space="preserve">
|
||||
<value>feedingTabPage</value>
|
||||
</data>
|
||||
<data name=">>pathsFeedingCtrl.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="feedingTabPage.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 34</value>
|
||||
</data>
|
||||
<data name="feedingTabPage.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>3, 3, 3, 3</value>
|
||||
</data>
|
||||
<data name="feedingTabPage.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>831, 277</value>
|
||||
</data>
|
||||
<data name="feedingTabPage.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="feedingTabPage.Text" xml:space="preserve">
|
||||
<value> Feeding </value>
|
||||
</data>
|
||||
<data name=">>feedingTabPage.Name" xml:space="preserve">
|
||||
<value>feedingTabPage</value>
|
||||
</data>
|
||||
<data name=">>feedingTabPage.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="metersTabPage.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name=">>pathsOutputCtrl.Parent" xml:space="preserve">
|
||||
<value>outputTabPage</value>
|
||||
</data>
|
||||
<data name=">>benchTabPage.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>outputTabPage.Parent" xml:space="preserve">
|
||||
<data name=">>feedingTabPage.Parent" xml:space="preserve">
|
||||
<value>pathsTabControl</value>
|
||||
</data>
|
||||
<data name="pathsOutputCtrl.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<data name=">>feedingTabPage.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="pathsBenchCtrl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="pathsBenchCtrl.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>3, 3</value>
|
||||
</data>
|
||||
<data name="pathsBenchCtrl.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>825, 271</value>
|
||||
</data>
|
||||
<data name="pathsFeedingCtrl.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>825, 271</value>
|
||||
<data name="pathsBenchCtrl.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>pathsBenchCtrl.Name" xml:space="preserve">
|
||||
<value>pathsBenchCtrl</value>
|
||||
</data>
|
||||
<data name=">>pathsBenchCtrl.Type" xml:space="preserve">
|
||||
<value>TBF.UiControls.PathsBenchCtrl, TBF, Version=2.8.315.1, Culture=neutral, PublicKeyToken=null</value>
|
||||
</data>
|
||||
<data name=">>pathsBenchCtrl.Parent" xml:space="preserve">
|
||||
<value>benchTabPage</value>
|
||||
</data>
|
||||
<data name=">>pathsBenchCtrl.Type" xml:space="preserve">
|
||||
<value>TBF.UiControls.PathsBenchCtrl, TBF, Version=2.3.244.1, Culture=neutral, PublicKeyToken=null</value>
|
||||
<data name=">>pathsBenchCtrl.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="splitContainer.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<data name="benchTabPage.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 34</value>
|
||||
</data>
|
||||
<data name="benchTabPage.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>3, 3, 3, 3</value>
|
||||
</data>
|
||||
<data name="benchTabPage.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>831, 277</value>
|
||||
</data>
|
||||
<data name="benchTabPage.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="benchTabPage.Text" xml:space="preserve">
|
||||
<value> Bench </value>
|
||||
</data>
|
||||
<data name=">>benchTabPage.Name" xml:space="preserve">
|
||||
<value>benchTabPage</value>
|
||||
</data>
|
||||
<data name=">>benchTabPage.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>benchTabPage.Parent" xml:space="preserve">
|
||||
<value>pathsTabControl</value>
|
||||
</data>
|
||||
<data name=">>benchTabPage.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="pathsOutputCtrl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="pathsOutputCtrl.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>3, 3</value>
|
||||
</data>
|
||||
<data name="pathsOutputCtrl.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>825, 271</value>
|
||||
</data>
|
||||
<data name="pathsOutputCtrl.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>pathsOutputCtrl.Name" xml:space="preserve">
|
||||
<value>pathsOutputCtrl</value>
|
||||
</data>
|
||||
<data name=">>pathsOutputCtrl.Type" xml:space="preserve">
|
||||
<value>TBF.UiControls.PathsOutputCtrl, TBF, Version=2.8.315.1, Culture=neutral, PublicKeyToken=null</value>
|
||||
</data>
|
||||
<data name=">>pathsOutputCtrl.Parent" xml:space="preserve">
|
||||
<value>outputTabPage</value>
|
||||
</data>
|
||||
<data name=">>pathsOutputCtrl.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="outputTabPage.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 34</value>
|
||||
</data>
|
||||
<data name="outputTabPage.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>3, 3, 3, 3</value>
|
||||
</data>
|
||||
<data name="outputTabPage.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>831, 277</value>
|
||||
</data>
|
||||
<data name="outputTabPage.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="outputTabPage.Text" xml:space="preserve">
|
||||
<value> Output </value>
|
||||
</data>
|
||||
<data name=">>outputTabPage.Name" xml:space="preserve">
|
||||
<value>outputTabPage</value>
|
||||
</data>
|
||||
<data name=">>outputTabPage.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>outputTabPage.Parent" xml:space="preserve">
|
||||
<value>pathsTabControl</value>
|
||||
</data>
|
||||
<data name=">>outputTabPage.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="pathsMetersCtrl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="pathsMetersCtrl.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="pathsMetersCtrl.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>831, 277</value>
|
||||
</data>
|
||||
<data name="pathsMetersCtrl.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>pathsMetersCtrl.Name" xml:space="preserve">
|
||||
<value>pathsMetersCtrl</value>
|
||||
</data>
|
||||
<data name=">>pathsMetersCtrl.Type" xml:space="preserve">
|
||||
<value>TBF.UiControls.PathsMetersCtrl, TBF, Version=2.8.315.1, Culture=neutral, PublicKeyToken=null</value>
|
||||
</data>
|
||||
<data name=">>pathsMetersCtrl.Parent" xml:space="preserve">
|
||||
<value>metersTabPage</value>
|
||||
</data>
|
||||
<data name=">>pathsMetersCtrl.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="metersTabPage.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 34</value>
|
||||
</data>
|
||||
<data name="metersTabPage.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>831, 277</value>
|
||||
</data>
|
||||
<data name="metersTabPage.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name="metersTabPage.Text" xml:space="preserve">
|
||||
<value> Sensors </value>
|
||||
</data>
|
||||
<data name=">>metersTabPage.Name" xml:space="preserve">
|
||||
<value>metersTabPage</value>
|
||||
</data>
|
||||
<data name=">>metersTabPage.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>metersTabPage.Parent" xml:space="preserve">
|
||||
<value>pathsTabControl</value>
|
||||
</data>
|
||||
<data name=">>metersTabPage.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name="pathsHeatMetersCtrl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="pathsHeatMetersCtrl.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="pathsHeatMetersCtrl.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>831, 277</value>
|
||||
</data>
|
||||
<data name="pathsHeatMetersCtrl.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>pathsHeatMetersCtrl.Name" xml:space="preserve">
|
||||
<value>pathsHeatMetersCtrl</value>
|
||||
</data>
|
||||
<data name=">>pathsHeatMetersCtrl.Type" xml:space="preserve">
|
||||
<value>TBF.UiControls.PathsHeatMetersCtrl, TBF, Version=2.8.315.1, Culture=neutral, PublicKeyToken=null</value>
|
||||
</data>
|
||||
<data name=">>pathsHeatMetersCtrl.Parent" xml:space="preserve">
|
||||
<value>heatMetersTabPage</value>
|
||||
</data>
|
||||
<data name=">>pathsHeatMetersCtrl.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="heatMetersTabPage.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 34</value>
|
||||
</data>
|
||||
<data name="heatMetersTabPage.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>831, 277</value>
|
||||
</data>
|
||||
<data name="heatMetersTabPage.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name="heatMetersTabPage.Text" xml:space="preserve">
|
||||
<value>Heat meter sensors</value>
|
||||
</data>
|
||||
<data name=">>heatMetersTabPage.Name" xml:space="preserve">
|
||||
<value>heatMetersTabPage</value>
|
||||
</data>
|
||||
<data name=">>heatMetersTabPage.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>heatMetersTabPage.Parent" xml:space="preserve">
|
||||
<value>pathsTabControl</value>
|
||||
</data>
|
||||
<data name=">>heatMetersTabPage.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name="pathsTabControl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="pathsTabControl.ItemSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>42, 30</value>
|
||||
</data>
|
||||
<data name="pathsTabControl.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="pathsTabControl.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>839, 315</value>
|
||||
</data>
|
||||
<data name="pathsTabControl.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>pathsTabControl.Name" xml:space="preserve">
|
||||
<value>pathsTabControl</value>
|
||||
</data>
|
||||
<data name=">>pathsTabControl.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TabControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>pathsTabControl.Parent" xml:space="preserve">
|
||||
<value>splitContainer.Panel1</value>
|
||||
</data>
|
||||
<data name=">>pathsTabControl.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Panel1.Name" xml:space="preserve">
|
||||
<value>splitContainer.Panel1</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Panel1.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Panel1.Parent" xml:space="preserve">
|
||||
<value>splitContainer</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Panel1.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="sharedButtons.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>-2, 0</value>
|
||||
</data>
|
||||
<data name="sharedButtons.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>100, 521</value>
|
||||
</data>
|
||||
<data name="sharedButtons.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>sharedButtons.Name" xml:space="preserve">
|
||||
<value>sharedButtons</value>
|
||||
</data>
|
||||
<data name=">>sharedButtons.Type" xml:space="preserve">
|
||||
<value>TBF.UiControls.SharedButtons, TBF, Version=2.8.315.1, Culture=neutral, PublicKeyToken=null</value>
|
||||
</data>
|
||||
<data name=">>sharedButtons.Parent" xml:space="preserve">
|
||||
<value>splitContainer.Panel2</value>
|
||||
</data>
|
||||
<data name=">>sharedButtons.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Panel2.Name" xml:space="preserve">
|
||||
<value>splitContainer.Panel2</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Panel2.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Panel2.Parent" xml:space="preserve">
|
||||
<value>splitContainer</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Panel2.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name=">>feedingTabPage.Name" xml:space="preserve">
|
||||
<value>feedingTabPage</value>
|
||||
</data>
|
||||
<data name="benchTabPage.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>3, 3, 3, 3</value>
|
||||
</data>
|
||||
<data name=">>pathsOutputCtrl.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
|
||||
<value>6, 13</value>
|
||||
</data>
|
||||
<data name=">>metersTabPage.Parent" xml:space="preserve">
|
||||
<value>pathsTabControl</value>
|
||||
</data>
|
||||
<data name="pathsBenchCtrl.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="feedingTabPage.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 34</value>
|
||||
</data>
|
||||
<data name=">>outputTabPage.Name" xml:space="preserve">
|
||||
<value>outputTabPage</value>
|
||||
</data>
|
||||
<data name=">>pathsOutputCtrl.Name" xml:space="preserve">
|
||||
<value>pathsOutputCtrl</value>
|
||||
</data>
|
||||
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
|
||||
<value>CenterParent</value>
|
||||
</data>
|
||||
<data name=">>pathsFeedingCtrl.Type" xml:space="preserve">
|
||||
<value>TBF.UiControls.PathsFeedingCtrl, TBF, Version=2.3.244.1, Culture=neutral, PublicKeyToken=null</value>
|
||||
</data>
|
||||
<data name=">>benchTabPage.Parent" xml:space="preserve">
|
||||
<value>pathsTabControl</value>
|
||||
</data>
|
||||
<data name=">>pathsMetersCtrl.Type" xml:space="preserve">
|
||||
<value>TBF.UiControls.PathsMetersCtrl, TBF, Version=2.3.244.1, Culture=neutral, PublicKeyToken=null</value>
|
||||
</data>
|
||||
<data name="benchTabPage.Text" xml:space="preserve">
|
||||
<value> Bench </value>
|
||||
</data>
|
||||
<data name=">>outputTabPage.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>metersTabPage.Name" xml:space="preserve">
|
||||
<value>metersTabPage</value>
|
||||
</data>
|
||||
<data name="pathsFeedingCtrl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="pathsTabControl.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name=">>pathsFeedingCtrl.Name" xml:space="preserve">
|
||||
<value>pathsFeedingCtrl</value>
|
||||
</data>
|
||||
<data name="benchTabPage.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>831, 277</value>
|
||||
</data>
|
||||
<data name="splitContainer.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name=">>outputTabPage.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>sharedButtons.Parent" xml:space="preserve">
|
||||
<value>splitContainer.Panel2</value>
|
||||
</data>
|
||||
<data name=">>pathsMetersCtrl.Name" xml:space="preserve">
|
||||
<value>pathsMetersCtrl</value>
|
||||
<data name="splitContainer.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>941, 315</value>
|
||||
</data>
|
||||
<data name="splitContainer.SplitterDistance" type="System.Int32, mscorlib">
|
||||
<value>839</value>
|
||||
</data>
|
||||
<data name="splitContainer.IsSplitterFixed" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="pathsBenchCtrl.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>3, 3</value>
|
||||
</data>
|
||||
<data name=">>sharedButtons.Name" xml:space="preserve">
|
||||
<value>sharedButtons</value>
|
||||
</data>
|
||||
<data name="sharedButtons.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>-2, 0</value>
|
||||
</data>
|
||||
<data name="outputTabPage.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name=">>pathsTabControl.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TabControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="pathsTabControl.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>839, 315</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Panel2.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="feedingTabPage.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>3, 3, 3, 3</value>
|
||||
</data>
|
||||
<data name=">>$this.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="pathsTabControl.ItemSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>42, 30</value>
|
||||
</data>
|
||||
<data name="pathsMetersCtrl.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="outputTabPage.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>3, 3, 3, 3</value>
|
||||
</data>
|
||||
<data name=">>sharedButtons.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>sharedButtons.Type" xml:space="preserve">
|
||||
<value>TBF.UiControls.SharedButtons, TBF, Version=2.3.244.1, Culture=neutral, PublicKeyToken=null</value>
|
||||
</data>
|
||||
<data name=">>metersTabPage.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>pathsMetersCtrl.Parent" xml:space="preserve">
|
||||
<value>metersTabPage</value>
|
||||
</data>
|
||||
<data name=">>$this.Name" xml:space="preserve">
|
||||
<value>PathsDlg</value>
|
||||
</data>
|
||||
<data name="pathsMetersCtrl.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>831, 277</value>
|
||||
</data>
|
||||
<data name="outputTabPage.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 34</value>
|
||||
</data>
|
||||
<data name="pathsTabControl.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>metersTabPage.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Panel1.Name" xml:space="preserve">
|
||||
<value>splitContainer.Panel1</value>
|
||||
</data>
|
||||
<data name=">>pathsFeedingCtrl.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>pathsMetersCtrl.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="pathsBenchCtrl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="feedingTabPage.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="outputTabPage.Text" xml:space="preserve">
|
||||
<value> Output </value>
|
||||
</data>
|
||||
<data name=">>benchTabPage.Name" xml:space="preserve">
|
||||
<value>benchTabPage</value>
|
||||
</data>
|
||||
<data name="feedingTabPage.Text" xml:space="preserve">
|
||||
<value> Feeding </value>
|
||||
</data>
|
||||
<data name=">>pathsBenchCtrl.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="pathsOutputCtrl.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>benchTabPage.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name=">>pathsOutputCtrl.Type" xml:space="preserve">
|
||||
<value>TBF.UiControls.PathsOutputCtrl, TBF, Version=2.3.244.1, Culture=neutral, PublicKeyToken=null</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.SplitContainer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Panel1.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Panel1.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.SplitterPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="metersTabPage.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>831, 277</value>
|
||||
</data>
|
||||
<data name="pathsMetersCtrl.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>pathsFeedingCtrl.Parent" xml:space="preserve">
|
||||
<value>feedingTabPage</value>
|
||||
</data>
|
||||
<data name="pathsOutputCtrl.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>825, 271</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Panel2.Name" xml:space="preserve">
|
||||
<value>splitContainer.Panel2</value>
|
||||
</data>
|
||||
<data name=">>pathsTabControl.Name" xml:space="preserve">
|
||||
<value>pathsTabControl</value>
|
||||
</data>
|
||||
<data name="splitContainer.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="benchTabPage.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="pathsTabControl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="sharedButtons.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>100, 521</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Name" xml:space="preserve">
|
||||
<value>splitContainer</value>
|
||||
</data>
|
||||
<data name="splitContainer.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>941, 315</value>
|
||||
<data name=">>splitContainer.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.SplitContainer, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="pathsMetersCtrl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
<data name=">>splitContainer.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name="benchTabPage.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 34</value>
|
||||
</data>
|
||||
<data name=">>pathsBenchCtrl.Name" xml:space="preserve">
|
||||
<value>pathsBenchCtrl</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>Bench - Paths</value>
|
||||
</data>
|
||||
<data name="pathsFeedingCtrl.TabIndex" type="System.Int32, mscorlib">
|
||||
<data name=">>splitContainer.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>941, 315</value>
|
||||
</data>
|
||||
<data name="pathsFeedingCtrl.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>3, 3</value>
|
||||
</data>
|
||||
<data name="feedingTabPage.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>831, 277</value>
|
||||
</data>
|
||||
<data name=">>feedingTabPage.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>pathsTabControl.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="metersTabPage.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 34</value>
|
||||
</data>
|
||||
<data name=">>splitContainer.Panel1.Parent" xml:space="preserve">
|
||||
<value>splitContainer</value>
|
||||
</data>
|
||||
<data name="pathsOutputCtrl.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
|
||||
<value>6, 13</value>
|
||||
</data>
|
||||
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>941, 315</value>
|
||||
</data>
|
||||
<data name="$this.StartPosition" type="System.Windows.Forms.FormStartPosition, System.Windows.Forms">
|
||||
<value>CenterParent</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>Bench - Paths</value>
|
||||
</data>
|
||||
<data name=">>$this.Name" xml:space="preserve">
|
||||
<value>PathsDlg</value>
|
||||
</data>
|
||||
<data name=">>$this.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
</root>
|
||||
81
TestBenchFramework/ProcedureDlg.Designer.cs
generated
81
TestBenchFramework/ProcedureDlg.Designer.cs
generated
@ -80,6 +80,7 @@ namespace TBF
|
||||
this.parametersTabPage = new System.Windows.Forms.TabPage();
|
||||
this.parametersListViewEx = new TBF.UiControls.ListViewEx();
|
||||
this.sharedButtons = new TBF.UiControls.SharedButtons();
|
||||
this.metersKindRadioButton3 = new System.Windows.Forms.RadioButton();
|
||||
((System.ComponentModel.ISupportInitialize)(this.mainSplitContainer)).BeginInit();
|
||||
this.mainSplitContainer.Panel1.SuspendLayout();
|
||||
this.mainSplitContainer.Panel2.SuspendLayout();
|
||||
@ -101,30 +102,28 @@ namespace TBF
|
||||
//
|
||||
// mainSplitContainer.Panel1
|
||||
//
|
||||
resources.ApplyResources(this.mainSplitContainer.Panel1, "mainSplitContainer.Panel1");
|
||||
this.mainSplitContainer.Panel1.Controls.Add(this.tabControl);
|
||||
//
|
||||
// mainSplitContainer.Panel2
|
||||
//
|
||||
resources.ApplyResources(this.mainSplitContainer.Panel2, "mainSplitContainer.Panel2");
|
||||
this.mainSplitContainer.Panel2.Controls.Add(this.sharedButtons);
|
||||
//
|
||||
// tabControl
|
||||
//
|
||||
resources.ApplyResources(this.tabControl, "tabControl");
|
||||
this.tabControl.Controls.Add(this.generalTabPage);
|
||||
this.tabControl.Controls.Add(this.historyTabPage);
|
||||
this.tabControl.Controls.Add(this.metrology1TabPage);
|
||||
this.tabControl.Controls.Add(this.metrology2TabPage);
|
||||
this.tabControl.Controls.Add(this.processTabPage);
|
||||
this.tabControl.Controls.Add(this.parametersTabPage);
|
||||
resources.ApplyResources(this.tabControl, "tabControl");
|
||||
this.tabControl.Name = "tabControl";
|
||||
this.tabControl.SelectedIndex = 0;
|
||||
this.tabControl.SelectedIndexChanged += new System.EventHandler(this.tabControl_SelectedIndexChanged);
|
||||
//
|
||||
// generalTabPage
|
||||
//
|
||||
resources.ApplyResources(this.generalTabPage, "generalTabPage");
|
||||
this.generalTabPage.Controls.Add(this.metersKindRadioButton3);
|
||||
this.generalTabPage.Controls.Add(this.fileWriter4ComboBox);
|
||||
this.generalTabPage.Controls.Add(this.fileWriter3ComboBox);
|
||||
this.generalTabPage.Controls.Add(this.printer2ComboBox);
|
||||
@ -159,33 +158,32 @@ namespace TBF
|
||||
this.generalTabPage.Controls.Add(this.label12);
|
||||
this.generalTabPage.Controls.Add(this.procNameTextBox);
|
||||
this.generalTabPage.Controls.Add(this.label1);
|
||||
this.generalTabPage.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
resources.ApplyResources(this.generalTabPage, "generalTabPage");
|
||||
this.generalTabPage.Name = "generalTabPage";
|
||||
this.generalTabPage.ToolTipText = global::TBF.Resources.Strings.Camera;
|
||||
this.generalTabPage.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// fileWriter4ComboBox
|
||||
//
|
||||
resources.ApplyResources(this.fileWriter4ComboBox, "fileWriter4ComboBox");
|
||||
this.fileWriter4ComboBox.FormattingEnabled = true;
|
||||
resources.ApplyResources(this.fileWriter4ComboBox, "fileWriter4ComboBox");
|
||||
this.fileWriter4ComboBox.Name = "fileWriter4ComboBox";
|
||||
//
|
||||
// fileWriter3ComboBox
|
||||
//
|
||||
resources.ApplyResources(this.fileWriter3ComboBox, "fileWriter3ComboBox");
|
||||
this.fileWriter3ComboBox.FormattingEnabled = true;
|
||||
resources.ApplyResources(this.fileWriter3ComboBox, "fileWriter3ComboBox");
|
||||
this.fileWriter3ComboBox.Name = "fileWriter3ComboBox";
|
||||
//
|
||||
// printer2ComboBox
|
||||
//
|
||||
resources.ApplyResources(this.printer2ComboBox, "printer2ComboBox");
|
||||
this.printer2ComboBox.FormattingEnabled = true;
|
||||
resources.ApplyResources(this.printer2ComboBox, "printer2ComboBox");
|
||||
this.printer2ComboBox.Name = "printer2ComboBox";
|
||||
//
|
||||
// fileWriter2ComboBox
|
||||
//
|
||||
resources.ApplyResources(this.fileWriter2ComboBox, "fileWriter2ComboBox");
|
||||
this.fileWriter2ComboBox.FormattingEnabled = true;
|
||||
resources.ApplyResources(this.fileWriter2ComboBox, "fileWriter2ComboBox");
|
||||
this.fileWriter2ComboBox.Name = "fileWriter2ComboBox";
|
||||
//
|
||||
// protocolTitleTextBox
|
||||
@ -202,7 +200,6 @@ namespace TBF
|
||||
// metersKindRadioButton2
|
||||
//
|
||||
resources.ApplyResources(this.metersKindRadioButton2, "metersKindRadioButton2");
|
||||
this.metersKindRadioButton2.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
this.metersKindRadioButton2.Name = "metersKindRadioButton2";
|
||||
this.metersKindRadioButton2.TabStop = true;
|
||||
this.metersKindRadioButton2.UseVisualStyleBackColor = true;
|
||||
@ -210,69 +207,63 @@ namespace TBF
|
||||
// metersKindRadioButton1
|
||||
//
|
||||
resources.ApplyResources(this.metersKindRadioButton1, "metersKindRadioButton1");
|
||||
this.metersKindRadioButton1.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
this.metersKindRadioButton1.Name = "metersKindRadioButton1";
|
||||
this.metersKindRadioButton1.TabStop = true;
|
||||
this.metersKindRadioButton1.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// transitionEndComboBox
|
||||
//
|
||||
resources.ApplyResources(this.transitionEndComboBox, "transitionEndComboBox");
|
||||
this.transitionEndComboBox.FormattingEnabled = true;
|
||||
resources.ApplyResources(this.transitionEndComboBox, "transitionEndComboBox");
|
||||
this.transitionEndComboBox.Name = "transitionEndComboBox";
|
||||
//
|
||||
// transitionEndLabel
|
||||
//
|
||||
resources.ApplyResources(this.transitionEndLabel, "transitionEndLabel");
|
||||
this.transitionEndLabel.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
this.transitionEndLabel.Name = "transitionEndLabel";
|
||||
//
|
||||
// transitionStartComboBox
|
||||
//
|
||||
resources.ApplyResources(this.transitionStartComboBox, "transitionStartComboBox");
|
||||
this.transitionStartComboBox.FormattingEnabled = true;
|
||||
resources.ApplyResources(this.transitionStartComboBox, "transitionStartComboBox");
|
||||
this.transitionStartComboBox.Name = "transitionStartComboBox";
|
||||
//
|
||||
// transitionStartLabel
|
||||
//
|
||||
resources.ApplyResources(this.transitionStartLabel, "transitionStartLabel");
|
||||
this.transitionStartLabel.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
this.transitionStartLabel.Name = "transitionStartLabel";
|
||||
//
|
||||
// fileWriter1ComboBox
|
||||
//
|
||||
resources.ApplyResources(this.fileWriter1ComboBox, "fileWriter1ComboBox");
|
||||
this.fileWriter1ComboBox.FormattingEnabled = true;
|
||||
resources.ApplyResources(this.fileWriter1ComboBox, "fileWriter1ComboBox");
|
||||
this.fileWriter1ComboBox.Name = "fileWriter1ComboBox";
|
||||
//
|
||||
// printer1ComboBox
|
||||
//
|
||||
resources.ApplyResources(this.printer1ComboBox, "printer1ComboBox");
|
||||
this.printer1ComboBox.FormattingEnabled = true;
|
||||
resources.ApplyResources(this.printer1ComboBox, "printer1ComboBox");
|
||||
this.printer1ComboBox.Name = "printer1ComboBox";
|
||||
//
|
||||
// dataEntryComboBox
|
||||
//
|
||||
resources.ApplyResources(this.dataEntryComboBox, "dataEntryComboBox");
|
||||
this.dataEntryComboBox.FormattingEnabled = true;
|
||||
resources.ApplyResources(this.dataEntryComboBox, "dataEntryComboBox");
|
||||
this.dataEntryComboBox.Name = "dataEntryComboBox";
|
||||
//
|
||||
// resultsWriterLabel
|
||||
//
|
||||
resources.ApplyResources(this.resultsWriterLabel, "resultsWriterLabel");
|
||||
this.resultsWriterLabel.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
this.resultsWriterLabel.Name = "resultsWriterLabel";
|
||||
//
|
||||
// resultsPrinterLabel
|
||||
//
|
||||
resources.ApplyResources(this.resultsPrinterLabel, "resultsPrinterLabel");
|
||||
this.resultsPrinterLabel.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
this.resultsPrinterLabel.Name = "resultsPrinterLabel";
|
||||
//
|
||||
// dataEntryLabel
|
||||
//
|
||||
resources.ApplyResources(this.dataEntryLabel, "dataEntryLabel");
|
||||
this.dataEntryLabel.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
this.dataEntryLabel.Name = "dataEntryLabel";
|
||||
//
|
||||
// notesTextBox
|
||||
@ -283,7 +274,6 @@ namespace TBF
|
||||
// label18
|
||||
//
|
||||
resources.ApplyResources(this.label18, "label18");
|
||||
this.label18.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
this.label18.Name = "label18";
|
||||
//
|
||||
// watermetersTextBox
|
||||
@ -294,7 +284,6 @@ namespace TBF
|
||||
// watermetersLabel
|
||||
//
|
||||
resources.ApplyResources(this.watermetersLabel, "watermetersLabel");
|
||||
this.watermetersLabel.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
this.watermetersLabel.Name = "watermetersLabel";
|
||||
//
|
||||
// lastChangedOnTextBox
|
||||
@ -305,7 +294,6 @@ namespace TBF
|
||||
// label15
|
||||
//
|
||||
resources.ApplyResources(this.label15, "label15");
|
||||
this.label15.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
this.label15.Name = "label15";
|
||||
//
|
||||
// lastChangedByTextBox
|
||||
@ -316,7 +304,6 @@ namespace TBF
|
||||
// label16
|
||||
//
|
||||
resources.ApplyResources(this.label16, "label16");
|
||||
this.label16.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
this.label16.Name = "label16";
|
||||
//
|
||||
// createdOnTextBox
|
||||
@ -327,7 +314,6 @@ namespace TBF
|
||||
// label14
|
||||
//
|
||||
resources.ApplyResources(this.label14, "label14");
|
||||
this.label14.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
this.label14.Name = "label14";
|
||||
//
|
||||
// createdByTextBox
|
||||
@ -338,7 +324,6 @@ namespace TBF
|
||||
// label13
|
||||
//
|
||||
resources.ApplyResources(this.label13, "label13");
|
||||
this.label13.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
this.label13.Name = "label13";
|
||||
//
|
||||
// descriptionTextBox
|
||||
@ -349,7 +334,6 @@ namespace TBF
|
||||
// label12
|
||||
//
|
||||
resources.ApplyResources(this.label12, "label12");
|
||||
this.label12.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
this.label12.Name = "label12";
|
||||
//
|
||||
// procNameTextBox
|
||||
@ -360,22 +344,19 @@ namespace TBF
|
||||
// label1
|
||||
//
|
||||
resources.ApplyResources(this.label1, "label1");
|
||||
this.label1.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
this.label1.Name = "label1";
|
||||
//
|
||||
// historyTabPage
|
||||
//
|
||||
resources.ApplyResources(this.historyTabPage, "historyTabPage");
|
||||
this.historyTabPage.Controls.Add(this.historyListViewEx);
|
||||
this.historyTabPage.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
resources.ApplyResources(this.historyTabPage, "historyTabPage");
|
||||
this.historyTabPage.Name = "historyTabPage";
|
||||
this.historyTabPage.ToolTipText = global::TBF.Resources.Strings.Camera;
|
||||
this.historyTabPage.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// historyListViewEx
|
||||
//
|
||||
resources.ApplyResources(this.historyListViewEx, "historyListViewEx");
|
||||
this.historyListViewEx.AllowColumnReorder = true;
|
||||
resources.ApplyResources(this.historyListViewEx, "historyListViewEx");
|
||||
this.historyListViewEx.DoubleClickActivation = false;
|
||||
this.historyListViewEx.FullRowSelect = true;
|
||||
this.historyListViewEx.GridLines = true;
|
||||
@ -385,17 +366,15 @@ namespace TBF
|
||||
//
|
||||
// metrology1TabPage
|
||||
//
|
||||
resources.ApplyResources(this.metrology1TabPage, "metrology1TabPage");
|
||||
this.metrology1TabPage.Controls.Add(this.metrology1ListViewEx);
|
||||
this.metrology1TabPage.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
resources.ApplyResources(this.metrology1TabPage, "metrology1TabPage");
|
||||
this.metrology1TabPage.Name = "metrology1TabPage";
|
||||
this.metrology1TabPage.ToolTipText = global::TBF.Resources.Strings.Camera;
|
||||
this.metrology1TabPage.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// metrology1ListViewEx
|
||||
//
|
||||
resources.ApplyResources(this.metrology1ListViewEx, "metrology1ListViewEx");
|
||||
this.metrology1ListViewEx.AllowColumnReorder = true;
|
||||
resources.ApplyResources(this.metrology1ListViewEx, "metrology1ListViewEx");
|
||||
this.metrology1ListViewEx.DoubleClickActivation = false;
|
||||
this.metrology1ListViewEx.FullRowSelect = true;
|
||||
this.metrology1ListViewEx.GridLines = true;
|
||||
@ -406,17 +385,15 @@ namespace TBF
|
||||
//
|
||||
// metrology2TabPage
|
||||
//
|
||||
resources.ApplyResources(this.metrology2TabPage, "metrology2TabPage");
|
||||
this.metrology2TabPage.Controls.Add(this.metrology2ListViewEx);
|
||||
this.metrology2TabPage.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
resources.ApplyResources(this.metrology2TabPage, "metrology2TabPage");
|
||||
this.metrology2TabPage.Name = "metrology2TabPage";
|
||||
this.metrology2TabPage.ToolTipText = global::TBF.Resources.Strings.Camera;
|
||||
this.metrology2TabPage.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// metrology2ListViewEx
|
||||
//
|
||||
resources.ApplyResources(this.metrology2ListViewEx, "metrology2ListViewEx");
|
||||
this.metrology2ListViewEx.AllowColumnReorder = true;
|
||||
resources.ApplyResources(this.metrology2ListViewEx, "metrology2ListViewEx");
|
||||
this.metrology2ListViewEx.DoubleClickActivation = false;
|
||||
this.metrology2ListViewEx.FullRowSelect = true;
|
||||
this.metrology2ListViewEx.GridLines = true;
|
||||
@ -427,17 +404,15 @@ namespace TBF
|
||||
//
|
||||
// processTabPage
|
||||
//
|
||||
resources.ApplyResources(this.processTabPage, "processTabPage");
|
||||
this.processTabPage.Controls.Add(this.processListViewEx);
|
||||
this.processTabPage.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
resources.ApplyResources(this.processTabPage, "processTabPage");
|
||||
this.processTabPage.Name = "processTabPage";
|
||||
this.processTabPage.ToolTipText = global::TBF.Resources.Strings.Camera;
|
||||
this.processTabPage.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// processListViewEx
|
||||
//
|
||||
resources.ApplyResources(this.processListViewEx, "processListViewEx");
|
||||
this.processListViewEx.AllowColumnReorder = true;
|
||||
resources.ApplyResources(this.processListViewEx, "processListViewEx");
|
||||
this.processListViewEx.DoubleClickActivation = false;
|
||||
this.processListViewEx.FullRowSelect = true;
|
||||
this.processListViewEx.GridLines = true;
|
||||
@ -448,17 +423,15 @@ namespace TBF
|
||||
//
|
||||
// parametersTabPage
|
||||
//
|
||||
resources.ApplyResources(this.parametersTabPage, "parametersTabPage");
|
||||
this.parametersTabPage.Controls.Add(this.parametersListViewEx);
|
||||
this.parametersTabPage.ImageKey = global::TBF.Resources.Strings.Camera;
|
||||
resources.ApplyResources(this.parametersTabPage, "parametersTabPage");
|
||||
this.parametersTabPage.Name = "parametersTabPage";
|
||||
this.parametersTabPage.ToolTipText = global::TBF.Resources.Strings.Camera;
|
||||
this.parametersTabPage.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// parametersListViewEx
|
||||
//
|
||||
resources.ApplyResources(this.parametersListViewEx, "parametersListViewEx");
|
||||
this.parametersListViewEx.AllowColumnReorder = true;
|
||||
resources.ApplyResources(this.parametersListViewEx, "parametersListViewEx");
|
||||
this.parametersListViewEx.DoubleClickActivation = false;
|
||||
this.parametersListViewEx.FullRowSelect = true;
|
||||
this.parametersListViewEx.Name = "parametersListViewEx";
|
||||
@ -470,6 +443,13 @@ namespace TBF
|
||||
resources.ApplyResources(this.sharedButtons, "sharedButtons");
|
||||
this.sharedButtons.Name = "sharedButtons";
|
||||
//
|
||||
// metersKindRadioButton3
|
||||
//
|
||||
resources.ApplyResources(this.metersKindRadioButton3, "metersKindRadioButton3");
|
||||
this.metersKindRadioButton3.Name = "metersKindRadioButton3";
|
||||
this.metersKindRadioButton3.TabStop = true;
|
||||
this.metersKindRadioButton3.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// ProcedureDlg
|
||||
//
|
||||
resources.ApplyResources(this, "$this");
|
||||
@ -543,5 +523,6 @@ namespace TBF
|
||||
private System.Windows.Forms.ComboBox fileWriter3ComboBox;
|
||||
private System.Windows.Forms.ComboBox printer2ComboBox;
|
||||
private System.Windows.Forms.ComboBox fileWriter4ComboBox;
|
||||
private System.Windows.Forms.RadioButton metersKindRadioButton3;
|
||||
}
|
||||
}
|
||||
@ -43,7 +43,8 @@ namespace TBF
|
||||
IList<BenchPath> benchPaths;
|
||||
IList<OutputPath> outputPaths;
|
||||
IList<MetersPath> metersPaths;
|
||||
IList<TransitionSequence> transitionSequences;
|
||||
IList<HeatMetersPath> heatMetersPaths;
|
||||
IList<TransitionSequence> transitionSequences;
|
||||
|
||||
IList<TestParamsCtrl> testParamsCtrls;
|
||||
IList<ProcedureParamsCtrl> procedureParamsCtrls;
|
||||
@ -131,7 +132,10 @@ namespace TBF
|
||||
benchPaths = session.CreateQuery("FROM BenchPath").List<BenchPath>();
|
||||
outputPaths = session.CreateQuery("FROM OutputPath").List<OutputPath>();
|
||||
metersPaths = session.CreateQuery("FROM MetersPath").List<MetersPath>();
|
||||
transitionSequences = session.CreateQuery("FROM TransitionSequence").List<TransitionSequence>();
|
||||
#if HEAT_METERS_SUPPORT
|
||||
heatMetersPaths = session.CreateQuery("FROM HeatMetersPath").List<HeatMetersPath>();
|
||||
#endif
|
||||
transitionSequences = session.CreateQuery("FROM TransitionSequence").List<TransitionSequence>();
|
||||
}
|
||||
|
||||
transitionStartComboBox.Items.Add("---");
|
||||
@ -294,8 +298,11 @@ namespace TBF
|
||||
fileWriter4ComboBox.Enabled = false;
|
||||
metersKindRadioButton1.Enabled = false;
|
||||
metersKindRadioButton2.Enabled = false;
|
||||
notesTextBox.Enabled = false;
|
||||
|
||||
metersKindRadioButton3.Enabled = false;
|
||||
notesTextBox.Enabled = false;
|
||||
#if !HEAT_METERS_SUPPORT
|
||||
metersKindRadioButton3.Visible = false;
|
||||
#endif
|
||||
/// Make some controls readonly
|
||||
createdByTextBox.ReadOnly = true;
|
||||
createdOnTextBox.ReadOnly = true;
|
||||
@ -317,9 +324,34 @@ namespace TBF
|
||||
|
||||
void Localize()
|
||||
{
|
||||
Text = Strings.Procedure;
|
||||
|
||||
generalTabPage.Text = Strings.General;
|
||||
historyTabPage.Text = Strings.History_of_changes;
|
||||
metrology1TabPage.Text = Strings.Metrology + " I.";
|
||||
metrology2TabPage.Text = Strings.Metrology + " II.";
|
||||
processTabPage.Text = Strings.Process;
|
||||
parametersTabPage.Text = Strings.Parameters;
|
||||
|
||||
label1.Text = Strings.Procedure_name;
|
||||
label12.Text = Strings.Short_description;
|
||||
label13.Text = Strings.Created_by;
|
||||
label16.Text = Strings.Last_changed_by;
|
||||
label14.Text = Strings.Date;
|
||||
label15.Text = Strings.Date;
|
||||
label18.Text = Strings.Notes;
|
||||
watermetersLabel.Text = Strings.Meter_types_tested;
|
||||
protocolTitleLabel.Text = Strings.Protocol_title;
|
||||
dataEntryLabel.Text = Strings.Data_entry;
|
||||
transitionStartLabel.Text = Strings.Purge_Begin;
|
||||
transitionEndLabel.Text = Strings.Purge_End;
|
||||
resultsPrinterLabel.Text = Strings.Printing;
|
||||
resultsWriterLabel.Text = Strings.Saving_results;
|
||||
|
||||
metersKindRadioButton1.Text = Strings.SingleBtnText;
|
||||
metersKindRadioButton2.Text = Strings.CombinedBtnText;
|
||||
}
|
||||
metersKindRadioButton2.Text = Strings.Compound;
|
||||
metersKindRadioButton3.Text = Strings.Heat_meter;
|
||||
}
|
||||
|
||||
void RefreshAllTabs()
|
||||
{
|
||||
@ -377,9 +409,12 @@ namespace TBF
|
||||
fileWriter4ComboBox.Text = (fields.Length >= 4) ? fields[3] : "---";
|
||||
}
|
||||
|
||||
metersKindRadioButton1.Checked = (LoadedProcedure.MetersKind == MetersKind.Single);
|
||||
metersKindRadioButton1.Checked = (LoadedProcedure.MetersKind == MetersKind.Single
|
||||
|| (LoadedProcedure.MetersKind != MetersKind.Combined && LoadedProcedure.MetersKind != MetersKind.HeatMeter));
|
||||
metersKindRadioButton2.Checked = (LoadedProcedure.MetersKind == MetersKind.Combined);
|
||||
notesTextBox.Text = LoadedProcedure.LongDescription;
|
||||
metersKindRadioButton3.Checked = (LoadedProcedure.MetersKind == MetersKind.HeatMeter);
|
||||
|
||||
notesTextBox.Text = LoadedProcedure.LongDescription;
|
||||
}
|
||||
|
||||
void UpdateFromGeneralTab()
|
||||
@ -447,7 +482,9 @@ namespace TBF
|
||||
LoadedProcedure.ResultsWriter = sb.ToString();
|
||||
}
|
||||
|
||||
LoadedProcedure.MetersKind = (metersKindRadioButton1.Checked ? MetersKind.Single : MetersKind.Combined);
|
||||
LoadedProcedure.MetersKind = (metersKindRadioButton1.Checked ? MetersKind.Single
|
||||
: (metersKindRadioButton2.Checked ? MetersKind.Combined
|
||||
: MetersKind.HeatMeter));
|
||||
LoadedProcedure.LongDescription = notesTextBox.Text;
|
||||
}
|
||||
|
||||
@ -659,7 +696,10 @@ namespace TBF
|
||||
Bench,
|
||||
Output,
|
||||
Sensor,
|
||||
TrnStart,
|
||||
#if HEAT_METERS_SUPPORT
|
||||
HeatMeterSensors,
|
||||
#endif
|
||||
TrnStart,
|
||||
TrnStop,
|
||||
ProcessClmnCount
|
||||
}
|
||||
@ -672,10 +712,13 @@ namespace TBF
|
||||
processListViewEx.Columns.Add(new ColumnHeader { Text = Strings.Part, Width = 40 });
|
||||
processListViewEx.Columns.Add(new ColumnHeader { Text = Strings.Q_from_m3h, Width = 80 });
|
||||
processListViewEx.Columns.Add(new ColumnHeader { Text = Strings.Q_to_m3h, Width = 80 });
|
||||
processListViewEx.Columns.Add(new ColumnHeader { Text = Strings.Feeding_chdr, Width = 90 });
|
||||
processListViewEx.Columns.Add(new ColumnHeader { Text = Strings.Bench_chdr, Width = 90 });
|
||||
processListViewEx.Columns.Add(new ColumnHeader { Text = Strings.Output_chdr, Width = 90 });
|
||||
processListViewEx.Columns.Add(new ColumnHeader { Text = Strings.Sensors_chdr, Width = 90 });
|
||||
processListViewEx.Columns.Add(new ColumnHeader { Text = Strings.Feeding_chdr, Width = 80 });
|
||||
processListViewEx.Columns.Add(new ColumnHeader { Text = Strings.Bench_chdr, Width = 80 });
|
||||
processListViewEx.Columns.Add(new ColumnHeader { Text = Strings.Output_chdr, Width = 80 });
|
||||
processListViewEx.Columns.Add(new ColumnHeader { Text = Strings.Sensors_chdr, Width = 80 });
|
||||
#if HEAT_METERS_SUPPORT
|
||||
processListViewEx.Columns.Add(new ColumnHeader { Text = Strings.Heat_meter_sensors, Width = 110 });
|
||||
#endif
|
||||
processListViewEx.Columns.Add(new ColumnHeader { Text = Strings.TransitionStart_chdr, Width = 100 });
|
||||
processListViewEx.Columns.Add(new ColumnHeader { Text = Strings.TransitionEnd_chdr, Width = 100 });
|
||||
|
||||
@ -689,6 +732,9 @@ namespace TBF
|
||||
new ComboBox(), /// Table
|
||||
new ComboBox(), /// Output
|
||||
new ComboBox(), /// Meters
|
||||
#if HEAT_METERS_SUPPORT
|
||||
new ComboBox(), /// Heat meters
|
||||
#endif
|
||||
new ComboBox(), /// TransitionStart
|
||||
new ComboBox(), /// TransitionEnd
|
||||
};
|
||||
@ -697,6 +743,9 @@ namespace TBF
|
||||
foreach (var path in benchPaths) ((ComboBox)processEditors[(int)ProcessClmn.Bench]).Items.Add(path.Name);
|
||||
foreach (var path in outputPaths) ((ComboBox)processEditors[(int)ProcessClmn.Output]).Items.Add(path.Name);
|
||||
foreach (var path in metersPaths) ((ComboBox)processEditors[(int)ProcessClmn.Sensor]).Items.Add(path.Name);
|
||||
#if HEAT_METERS_SUPPORT
|
||||
foreach (var path in heatMetersPaths) ((ComboBox)processEditors[(int)ProcessClmn.HeatMeterSensors]).Items.Add(path.Name);
|
||||
#endif
|
||||
|
||||
((ComboBox)processEditors[(int)ProcessClmn.TrnStart]).Items.Add("---");
|
||||
((ComboBox)processEditors[(int)ProcessClmn.TrnStop]).Items.Add("---");
|
||||
@ -859,6 +908,9 @@ namespace TBF
|
||||
lviProcess.SubItems.Add(test.BenchPath);
|
||||
lviProcess.SubItems.Add(test.OutputPath);
|
||||
lviProcess.SubItems.Add(test.MetersPath);
|
||||
#if HEAT_METERS_SUPPORT
|
||||
lviProcess.SubItems.Add(test.HeatMetersPath);
|
||||
#endif
|
||||
lviProcess.SubItems.Add(string.IsNullOrEmpty(test.RelTransBefore) ? "---" : test.RelTransBefore);
|
||||
lviProcess.SubItems.Add(string.IsNullOrEmpty(test.TransitionAfter) ? "---" : test.TransitionAfter);
|
||||
|
||||
@ -992,6 +1044,12 @@ namespace TBF
|
||||
{
|
||||
entity.MetersPath = lvi.SubItems[(int)ProcessClmn.Sensor].Text;
|
||||
}
|
||||
#if HEAT_METERS_SUPPORT
|
||||
if ((processEditors[(int)ProcessClmn.HeatMeterSensors] as ComboBox).Items.Contains(lvi.SubItems[(int)ProcessClmn.HeatMeterSensors].Text))
|
||||
{
|
||||
entity.HeatMetersPath = lvi.SubItems[(int)ProcessClmn.HeatMeterSensors].Text;
|
||||
}
|
||||
#endif
|
||||
if ((processEditors[(int)ProcessClmn.TrnStart] as ComboBox).Items.Contains(lvi.SubItems[(int)ProcessClmn.TrnStart].Text))
|
||||
{
|
||||
entity.RelTransBefore = lvi.SubItems[(int)ProcessClmn.TrnStart].Text.Equals("---") ? string.Empty : lvi.SubItems[(int)ProcessClmn.TrnStart].Text;
|
||||
@ -1291,6 +1349,9 @@ namespace TBF
|
||||
dataEntryComboBox.Enabled = true;
|
||||
metersKindRadioButton1.Enabled = true;
|
||||
metersKindRadioButton2.Enabled = true;
|
||||
#if HEAT_METERS_SUPPORT
|
||||
metersKindRadioButton3.Enabled = true;
|
||||
#endif
|
||||
printer1ComboBox.Enabled = true;
|
||||
printer2ComboBox.Enabled = true;
|
||||
fileWriter1ComboBox.Enabled = true;
|
||||
|
||||
@ -1,238 +0,0 @@
|
||||
<?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="protocolTitleLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>85, 13</value>
|
||||
</data>
|
||||
<data name="protocolTitleLabel.Text" xml:space="preserve">
|
||||
<value>Název protokolu</value>
|
||||
</data>
|
||||
<data name="metersKindRadioButton2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>90, 17</value>
|
||||
</data>
|
||||
<data name="metersKindRadioButton2.Text" xml:space="preserve">
|
||||
<value>Kombinované</value>
|
||||
</data>
|
||||
<data name="metersKindRadioButton1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>48, 17</value>
|
||||
</data>
|
||||
<data name="metersKindRadioButton1.Text" xml:space="preserve">
|
||||
<value>Singl</value>
|
||||
</data>
|
||||
<data name="transitionEndLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>55, 13</value>
|
||||
</data>
|
||||
<data name="transitionEndLabel.Text" xml:space="preserve">
|
||||
<value>Vypuštění</value>
|
||||
</data>
|
||||
<data name="transitionStartLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>38, 13</value>
|
||||
</data>
|
||||
<data name="transitionStartLabel.Text" xml:space="preserve">
|
||||
<value>Plnění</value>
|
||||
</data>
|
||||
<data name="resultsWriterLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>33, 13</value>
|
||||
</data>
|
||||
<data name="resultsWriterLabel.Text" xml:space="preserve">
|
||||
<value>Uložit</value>
|
||||
</data>
|
||||
<data name="resultsPrinterLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>48, 13</value>
|
||||
</data>
|
||||
<data name="resultsPrinterLabel.Text" xml:space="preserve">
|
||||
<value>Tisknout</value>
|
||||
</data>
|
||||
<data name="dataEntryLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>60, 13</value>
|
||||
</data>
|
||||
<data name="dataEntryLabel.Text" xml:space="preserve">
|
||||
<value>Vložte data</value>
|
||||
</data>
|
||||
<data name="label18.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>56, 13</value>
|
||||
</data>
|
||||
<data name="label18.Text" xml:space="preserve">
|
||||
<value>Poznámky</value>
|
||||
</data>
|
||||
<data name="watermetersLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>115, 13</value>
|
||||
</data>
|
||||
<data name="watermetersLabel.Text" xml:space="preserve">
|
||||
<value>Testované typy měřičů</value>
|
||||
</data>
|
||||
<data name="label15.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>38, 13</value>
|
||||
</data>
|
||||
<data name="label15.Text" xml:space="preserve">
|
||||
<value>Datum</value>
|
||||
</data>
|
||||
<data name="label16.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>83, 13</value>
|
||||
</data>
|
||||
<data name="label16.Text" xml:space="preserve">
|
||||
<value>Poslední změna</value>
|
||||
</data>
|
||||
<data name="label14.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>38, 13</value>
|
||||
</data>
|
||||
<data name="label14.Text" xml:space="preserve">
|
||||
<value>Datum</value>
|
||||
</data>
|
||||
<data name="label13.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>42, 13</value>
|
||||
</data>
|
||||
<data name="label13.Text" xml:space="preserve">
|
||||
<value>Vytvořil</value>
|
||||
</data>
|
||||
<data name="label12.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>71, 13</value>
|
||||
</data>
|
||||
<data name="label12.Text" xml:space="preserve">
|
||||
<value>Stručný popis</value>
|
||||
</data>
|
||||
<data name="label1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>79, 13</value>
|
||||
</data>
|
||||
<data name="label1.Text" xml:space="preserve">
|
||||
<value>Jméno postupu</value>
|
||||
</data>
|
||||
<data name="generalTabPage.Text" xml:space="preserve">
|
||||
<value>Obecné</value>
|
||||
</data>
|
||||
<data name="historyTabPage.Text" xml:space="preserve">
|
||||
<value>Historie změn</value>
|
||||
</data>
|
||||
<data name="metrology1TabPage.Text" xml:space="preserve">
|
||||
<value>Metrologie I.</value>
|
||||
</data>
|
||||
<data name="metrology2TabPage.Text" xml:space="preserve">
|
||||
<value>Metrologie II.</value>
|
||||
</data>
|
||||
<data name="processTabPage.Text" xml:space="preserve">
|
||||
<value>Proces</value>
|
||||
</data>
|
||||
<data name="parametersTabPage.Text" xml:space="preserve">
|
||||
<value>Parametry</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>Procedura</value>
|
||||
</data>
|
||||
</root>
|
||||
@ -1,328 +0,0 @@
|
||||
<?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="protocolTitleTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>148, 105</value>
|
||||
</data>
|
||||
<data name="protocolTitleTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>526, 20</value>
|
||||
</data>
|
||||
<data name="protocolTitleLabel.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>20, 108</value>
|
||||
</data>
|
||||
<data name="metersKindRadioButton2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>428, 162</value>
|
||||
</data>
|
||||
<data name="metersKindRadioButton2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>65, 17</value>
|
||||
</data>
|
||||
<data name="metersKindRadioButton2.Text" xml:space="preserve">
|
||||
<value>Verbund</value>
|
||||
</data>
|
||||
<data name="metersKindRadioButton1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>357, 162</value>
|
||||
</data>
|
||||
<data name="metersKindRadioButton1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>53, 17</value>
|
||||
</data>
|
||||
<data name="metersKindRadioButton1.Text" xml:space="preserve">
|
||||
<value>Einzel</value>
|
||||
</data>
|
||||
<data name="transitionEndLabel.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>20, 200</value>
|
||||
</data>
|
||||
<data name="transitionEndLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>62, 13</value>
|
||||
</data>
|
||||
<data name="transitionEndLabel.Text" xml:space="preserve">
|
||||
<value>Entwässern</value>
|
||||
</data>
|
||||
<data name="transitionStartLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>45, 13</value>
|
||||
</data>
|
||||
<data name="transitionStartLabel.Text" xml:space="preserve">
|
||||
<value>Befüllen</value>
|
||||
</data>
|
||||
<data name="resultsWriterLabel.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>20, 269</value>
|
||||
</data>
|
||||
<data name="resultsWriterLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>122, 13</value>
|
||||
</data>
|
||||
<data name="resultsWriterLabel.Text" xml:space="preserve">
|
||||
<value>Speichern auf Festplatte</value>
|
||||
</data>
|
||||
<data name="resultsPrinterLabel.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>20, 223</value>
|
||||
</data>
|
||||
<data name="resultsPrinterLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>45, 13</value>
|
||||
</data>
|
||||
<data name="resultsPrinterLabel.Text" xml:space="preserve">
|
||||
<value>Drucker</value>
|
||||
</data>
|
||||
<data name="dataEntryLabel.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>20, 154</value>
|
||||
</data>
|
||||
<data name="dataEntryLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>112, 13</value>
|
||||
</data>
|
||||
<data name="dataEntryLabel.Text" xml:space="preserve">
|
||||
<value>Zählernummereingabe</value>
|
||||
</data>
|
||||
<data name="notesTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>357, 195</value>
|
||||
</data>
|
||||
<data name="label18.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>290, 200</value>
|
||||
</data>
|
||||
<data name="label18.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>61, 13</value>
|
||||
</data>
|
||||
<data name="label18.Text" xml:space="preserve">
|
||||
<value>Bemerkung</value>
|
||||
</data>
|
||||
<data name="watermetersTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>148, 128</value>
|
||||
</data>
|
||||
<data name="watermetersTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>526, 20</value>
|
||||
</data>
|
||||
<data name="watermetersLabel.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>20, 131</value>
|
||||
</data>
|
||||
<data name="watermetersLabel.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>70, 13</value>
|
||||
</data>
|
||||
<data name="watermetersLabel.Text" xml:space="preserve">
|
||||
<value>Wasserzellen</value>
|
||||
</data>
|
||||
<data name="lastChangedOnTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>357, 82</value>
|
||||
</data>
|
||||
<data name="label15.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>290, 85</value>
|
||||
</data>
|
||||
<data name="label15.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>38, 13</value>
|
||||
</data>
|
||||
<data name="label15.Text" xml:space="preserve">
|
||||
<value>Datum</value>
|
||||
</data>
|
||||
<data name="label16.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>102, 13</value>
|
||||
</data>
|
||||
<data name="label16.Text" xml:space="preserve">
|
||||
<value>letzte Änderung von</value>
|
||||
</data>
|
||||
<data name="createdOnTextBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>357, 59</value>
|
||||
</data>
|
||||
<data name="label14.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>290, 62</value>
|
||||
</data>
|
||||
<data name="label14.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>38, 13</value>
|
||||
</data>
|
||||
<data name="label14.Text" xml:space="preserve">
|
||||
<value>Datum</value>
|
||||
</data>
|
||||
<data name="label13.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>62, 13</value>
|
||||
</data>
|
||||
<data name="label13.Text" xml:space="preserve">
|
||||
<value>Errstellt von</value>
|
||||
</data>
|
||||
<data name="descriptionTextBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>526, 20</value>
|
||||
</data>
|
||||
<data name="label12.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>92, 13</value>
|
||||
</data>
|
||||
<data name="label12.Text" xml:space="preserve">
|
||||
<value>Kurzbeschreibung</value>
|
||||
</data>
|
||||
<data name="label1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>75, 13</value>
|
||||
</data>
|
||||
<data name="label1.Text" xml:space="preserve">
|
||||
<value>Prüfungsname</value>
|
||||
</data>
|
||||
<data name="generalTabPage.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>923, 371</value>
|
||||
</data>
|
||||
<data name="generalTabPage.Text" xml:space="preserve">
|
||||
<value> Allgemein </value>
|
||||
</data>
|
||||
<data name="historyListViewEx.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>917, 365</value>
|
||||
</data>
|
||||
<data name="historyTabPage.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>923, 371</value>
|
||||
</data>
|
||||
<data name="historyTabPage.Text" xml:space="preserve">
|
||||
<value>Änderungen</value>
|
||||
</data>
|
||||
<data name="metrology1ListViewEx.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>917, 365</value>
|
||||
</data>
|
||||
<data name="metrology1TabPage.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>923, 371</value>
|
||||
</data>
|
||||
<data name="metrology1TabPage.Text" xml:space="preserve">
|
||||
<value> Metrologie I. </value>
|
||||
</data>
|
||||
<data name="metrology2ListViewEx.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>917, 365</value>
|
||||
</data>
|
||||
<data name="metrology2TabPage.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>923, 371</value>
|
||||
</data>
|
||||
<data name="metrology2TabPage.Text" xml:space="preserve">
|
||||
<value> Metrologie II. </value>
|
||||
</data>
|
||||
<data name="processListViewEx.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>917, 365</value>
|
||||
</data>
|
||||
<data name="processTabPage.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>923, 371</value>
|
||||
</data>
|
||||
<data name="processTabPage.Text" xml:space="preserve">
|
||||
<value> Prüfstrecke </value>
|
||||
</data>
|
||||
<data name="parametersListViewEx.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>923, 371</value>
|
||||
</data>
|
||||
<data name="parametersTabPage.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>923, 371</value>
|
||||
</data>
|
||||
<data name="tabControl.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>931, 409</value>
|
||||
</data>
|
||||
<data name="mainSplitContainer.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>1034, 409</value>
|
||||
</data>
|
||||
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>1034, 409</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>Prüfung</value>
|
||||
</data>
|
||||
</root>
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,193 +0,0 @@
|
||||
<?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="label1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>79, 13</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>程序</value>
|
||||
</data>
|
||||
<data name="dataEntryLabel.Text" xml:space="preserve">
|
||||
<value>输入数据</value>
|
||||
</data>
|
||||
<data name="generalTabPage.Text" xml:space="preserve">
|
||||
<value>总体情况</value>
|
||||
</data>
|
||||
<data name="historyTabPage.Text" xml:space="preserve">
|
||||
<value>变更历史记录</value>
|
||||
</data>
|
||||
<data name="label1.Text" xml:space="preserve">
|
||||
<value>程序名</value>
|
||||
</data>
|
||||
<data name="label12.Text" xml:space="preserve">
|
||||
<value>简短描述</value>
|
||||
</data>
|
||||
<data name="label13.Text" xml:space="preserve">
|
||||
<value>创建者</value>
|
||||
</data>
|
||||
<data name="label14.Text" xml:space="preserve">
|
||||
<value>日期</value>
|
||||
</data>
|
||||
<data name="label15.Text" xml:space="preserve">
|
||||
<value>日期</value>
|
||||
</data>
|
||||
<data name="label16.Text" xml:space="preserve">
|
||||
<value>最后修改者</value>
|
||||
</data>
|
||||
<data name="label18.Text" xml:space="preserve">
|
||||
<value>记录</value>
|
||||
</data>
|
||||
<data name="metersKindRadioButton1.Text" xml:space="preserve">
|
||||
<value>单个的</value>
|
||||
</data>
|
||||
<data name="metersKindRadioButton2.Text" xml:space="preserve">
|
||||
<value>组合的</value>
|
||||
</data>
|
||||
<data name="metrology1TabPage.Text" xml:space="preserve">
|
||||
<value>计量 I.</value>
|
||||
</data>
|
||||
<data name="metrology2TabPage.Text" xml:space="preserve">
|
||||
<value>计量 II.</value>
|
||||
</data>
|
||||
<data name="parametersTabPage.Text" xml:space="preserve">
|
||||
<value>参数</value>
|
||||
</data>
|
||||
<data name="processTabPage.Text" xml:space="preserve">
|
||||
<value>进程</value>
|
||||
</data>
|
||||
<data name="protocolTitleLabel.Text" xml:space="preserve">
|
||||
<value>方案标题</value>
|
||||
</data>
|
||||
<data name="resultsPrinterLabel.Text" xml:space="preserve">
|
||||
<value>打印结果</value>
|
||||
</data>
|
||||
<data name="resultsWriterLabel.Text" xml:space="preserve">
|
||||
<value>写入结果</value>
|
||||
</data>
|
||||
<data name="transitionEndLabel.Text" xml:space="preserve">
|
||||
<value>清除 - 结束</value>
|
||||
</data>
|
||||
<data name="transitionStartLabel.Text" xml:space="preserve">
|
||||
<value>清除 - 开始</value>
|
||||
</data>
|
||||
<data name="watermetersLabel.Text" xml:space="preserve">
|
||||
<value>测试仪表型号</value>
|
||||
</data>
|
||||
</root>
|
||||
234
TestBenchFramework/Resources/Strings.Designer.cs
generated
234
TestBenchFramework/Resources/Strings.Designer.cs
generated
@ -609,24 +609,6 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Combined meters.
|
||||
/// </summary>
|
||||
internal static string Combined_meters {
|
||||
get {
|
||||
return ResourceManager.GetString("Combined_meters", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Combined.
|
||||
/// </summary>
|
||||
internal static string CombinedBtnText {
|
||||
get {
|
||||
return ResourceManager.GetString("CombinedBtnText", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Communication.
|
||||
/// </summary>
|
||||
@ -645,6 +627,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Compound.
|
||||
/// </summary>
|
||||
internal static string Compound {
|
||||
get {
|
||||
return ResourceManager.GetString("Compound", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Compound meter {0}.
|
||||
/// </summary>
|
||||
@ -654,6 +645,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Compound meters.
|
||||
/// </summary>
|
||||
internal static string Compound_meters {
|
||||
get {
|
||||
return ResourceManager.GetString("Compound_meters", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Configuration.
|
||||
/// </summary>
|
||||
@ -771,6 +771,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Created by.
|
||||
/// </summary>
|
||||
internal static string Created_by {
|
||||
get {
|
||||
return ResourceManager.GetString("Created_by", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Data.
|
||||
/// </summary>
|
||||
@ -780,6 +789,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Data entry.
|
||||
/// </summary>
|
||||
internal static string Data_entry {
|
||||
get {
|
||||
return ResourceManager.GetString("Data_entry", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Database Settings.
|
||||
/// </summary>
|
||||
@ -1347,6 +1365,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to General.
|
||||
/// </summary>
|
||||
internal static string General {
|
||||
get {
|
||||
return ResourceManager.GetString("General", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Get mass of water in the tank.
|
||||
/// </summary>
|
||||
@ -1383,6 +1410,33 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Heat meter.
|
||||
/// </summary>
|
||||
internal static string Heat_meter {
|
||||
get {
|
||||
return ResourceManager.GetString("Heat_meter", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Heat meter sensors.
|
||||
/// </summary>
|
||||
internal static string Heat_meter_sensors {
|
||||
get {
|
||||
return ResourceManager.GetString("Heat_meter_sensors", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to History of changes.
|
||||
/// </summary>
|
||||
internal static string History_of_changes {
|
||||
get {
|
||||
return ResourceManager.GetString("History_of_changes", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Horizontally.
|
||||
/// </summary>
|
||||
@ -1500,6 +1554,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Last changed by.
|
||||
/// </summary>
|
||||
internal static string Last_changed_by {
|
||||
get {
|
||||
return ResourceManager.GetString("Last_changed_by", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Less.
|
||||
/// </summary>
|
||||
@ -1725,6 +1788,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Meter types tested.
|
||||
/// </summary>
|
||||
internal static string Meter_types_tested {
|
||||
get {
|
||||
return ResourceManager.GetString("Meter_types_tested", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Sensors.
|
||||
/// </summary>
|
||||
@ -1833,6 +1905,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to PHeat.
|
||||
/// </summary>
|
||||
internal static string New_heat_meters_path_name {
|
||||
get {
|
||||
return ResourceManager.GetString("New_heat_meters_path_name", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to - Copy.
|
||||
/// </summary>
|
||||
@ -1950,6 +2031,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Notes.
|
||||
/// </summary>
|
||||
internal static string Notes {
|
||||
get {
|
||||
return ResourceManager.GetString("Notes", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to <nothing to configure>.
|
||||
/// </summary>
|
||||
@ -2364,6 +2454,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Printing.
|
||||
/// </summary>
|
||||
internal static string Printing {
|
||||
get {
|
||||
return ResourceManager.GetString("Printing", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Procedure.
|
||||
/// </summary>
|
||||
@ -2391,6 +2490,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Procedure name.
|
||||
/// </summary>
|
||||
internal static string Procedure_name {
|
||||
get {
|
||||
return ResourceManager.GetString("Procedure_name", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Procedures.
|
||||
/// </summary>
|
||||
@ -2400,6 +2508,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Process.
|
||||
/// </summary>
|
||||
internal static string Process {
|
||||
get {
|
||||
return ResourceManager.GetString("Process", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Producer.
|
||||
/// </summary>
|
||||
@ -2454,6 +2571,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Protocol title.
|
||||
/// </summary>
|
||||
internal static string Protocol_title {
|
||||
get {
|
||||
return ResourceManager.GetString("Protocol_title", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Publish.
|
||||
/// </summary>
|
||||
@ -2517,6 +2643,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Purge - Begin.
|
||||
/// </summary>
|
||||
internal static string Purge_Begin {
|
||||
get {
|
||||
return ResourceManager.GetString("Purge_Begin", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Fill the test bench with water?.
|
||||
/// </summary>
|
||||
@ -2526,6 +2661,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Purge - End.
|
||||
/// </summary>
|
||||
internal static string Purge_End {
|
||||
get {
|
||||
return ResourceManager.GetString("Purge_End", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Purging.
|
||||
/// </summary>
|
||||
@ -2913,6 +3057,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Saving results.
|
||||
/// </summary>
|
||||
internal static string Saving_results {
|
||||
get {
|
||||
return ResourceManager.GetString("Saving_results", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Screen.
|
||||
/// </summary>
|
||||
@ -3048,6 +3201,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Short description.
|
||||
/// </summary>
|
||||
internal static string Short_description {
|
||||
get {
|
||||
return ResourceManager.GetString("Short_description", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Show cycle end form.
|
||||
/// </summary>
|
||||
@ -3237,6 +3399,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to T cold.
|
||||
/// </summary>
|
||||
internal static string T_cold {
|
||||
get {
|
||||
return ResourceManager.GetString("T_cold", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to T div..
|
||||
/// </summary>
|
||||
@ -3273,6 +3444,15 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to T inlet.
|
||||
/// </summary>
|
||||
internal static string T_inlet {
|
||||
get {
|
||||
return ResourceManager.GetString("T_inlet", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to T out.
|
||||
/// </summary>
|
||||
@ -3291,6 +3471,24 @@ namespace TBF.Resources {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to T outlet.
|
||||
/// </summary>
|
||||
internal static string T_outlet {
|
||||
get {
|
||||
return ResourceManager.GetString("T_outlet", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to T warm.
|
||||
/// </summary>
|
||||
internal static string T_warm {
|
||||
get {
|
||||
return ResourceManager.GetString("T_warm", resourceCulture);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized string similar to Target flow high [m3/h]:.
|
||||
/// </summary>
|
||||
|
||||
@ -252,10 +252,10 @@
|
||||
<data name="cold" xml:space="preserve">
|
||||
<value>Studený</value>
|
||||
</data>
|
||||
<data name="Combined_meters" xml:space="preserve">
|
||||
<data name="Compound_meters" xml:space="preserve">
|
||||
<value>Kombinovaná měřidla</value>
|
||||
</data>
|
||||
<data name="CombinedBtnText" xml:space="preserve">
|
||||
<data name="Compound" xml:space="preserve">
|
||||
<value>Kombinovaný</value>
|
||||
</data>
|
||||
<data name="Communication" xml:space="preserve">
|
||||
@ -1215,4 +1215,55 @@
|
||||
<data name="Purchase_order_may_have_max_N_characters" xml:space="preserve">
|
||||
<value>Objednávka může mít maximálně {0} znaků</value>
|
||||
</data>
|
||||
<data name="Heat_meter" xml:space="preserve">
|
||||
<value>Měřič tepla</value>
|
||||
</data>
|
||||
<data name="Heat_meter_sensors" xml:space="preserve">
|
||||
<value>Senzory měřičů tepla</value>
|
||||
</data>
|
||||
<data name="Created_by" xml:space="preserve">
|
||||
<value>Vytvořil</value>
|
||||
</data>
|
||||
<data name="Data_entry" xml:space="preserve">
|
||||
<value>Vkládání údajů</value>
|
||||
</data>
|
||||
<data name="General" xml:space="preserve">
|
||||
<value>Obecné</value>
|
||||
</data>
|
||||
<data name="History_of_changes" xml:space="preserve">
|
||||
<value>Historie změn</value>
|
||||
</data>
|
||||
<data name="Last_changed_by" xml:space="preserve">
|
||||
<value>Poslední změna</value>
|
||||
</data>
|
||||
<data name="Meter_types_tested" xml:space="preserve">
|
||||
<value>Testované typy měřičů</value>
|
||||
</data>
|
||||
<data name="Notes" xml:space="preserve">
|
||||
<value>Poznámky</value>
|
||||
</data>
|
||||
<data name="Printing" xml:space="preserve">
|
||||
<value>Tisk výsledků</value>
|
||||
</data>
|
||||
<data name="Procedure_name" xml:space="preserve">
|
||||
<value>Jméno postupu</value>
|
||||
</data>
|
||||
<data name="Process" xml:space="preserve">
|
||||
<value>Proces</value>
|
||||
</data>
|
||||
<data name="Protocol_title" xml:space="preserve">
|
||||
<value>Název protokolu</value>
|
||||
</data>
|
||||
<data name="Purge_Begin" xml:space="preserve">
|
||||
<value>Plnění</value>
|
||||
</data>
|
||||
<data name="Purge_End" xml:space="preserve">
|
||||
<value>Vypuštění</value>
|
||||
</data>
|
||||
<data name="Saving_results" xml:space="preserve">
|
||||
<value>Ukládání výsledků</value>
|
||||
</data>
|
||||
<data name="Short_dercription" xml:space="preserve">
|
||||
<value>Stručný popis</value>
|
||||
</data>
|
||||
</root>
|
||||
@ -741,9 +741,6 @@
|
||||
<data name="Method_selection" xml:space="preserve">
|
||||
<value>Auswahl Prüfart</value>
|
||||
</data>
|
||||
<data name="String1" xml:space="preserve">
|
||||
<value />
|
||||
</data>
|
||||
<data name="Test_method2" xml:space="preserve">
|
||||
<value>Prüfart</value>
|
||||
</data>
|
||||
@ -843,10 +840,10 @@
|
||||
<data name="Changes_will_be_lost_Do_you_want_to_proceed" xml:space="preserve">
|
||||
<value>Ergebnisse gehen verloren! Wollen sie fortfahren?</value>
|
||||
</data>
|
||||
<data name="CombinedBtnText" xml:space="preserve">
|
||||
<data name="Compound" xml:space="preserve">
|
||||
<value>Verbund</value>
|
||||
</data>
|
||||
<data name="Combined_meters" xml:space="preserve">
|
||||
<data name="Compound_meters" xml:space="preserve">
|
||||
<value>Verbund Wasserzähler</value>
|
||||
</data>
|
||||
<data name="Detection_completed" xml:space="preserve">
|
||||
@ -1281,4 +1278,67 @@
|
||||
<data name="stable" xml:space="preserve">
|
||||
<value>stabil</value>
|
||||
</data>
|
||||
<data name="Heat_meter" xml:space="preserve">
|
||||
<value>Wärmezähler</value>
|
||||
</data>
|
||||
<data name="Heat_meter_sensors" xml:space="preserve">
|
||||
<value>Wärmezählersensoren</value>
|
||||
</data>
|
||||
<data name="T_cold" xml:space="preserve">
|
||||
<value>T kalt</value>
|
||||
</data>
|
||||
<data name="T_inlet" xml:space="preserve">
|
||||
<value>T einlass</value>
|
||||
</data>
|
||||
<data name="T_outlet" xml:space="preserve">
|
||||
<value>T auslauf</value>
|
||||
</data>
|
||||
<data name="T_warm" xml:space="preserve">
|
||||
<value>T warm</value>
|
||||
</data>
|
||||
<data name="Created_by" xml:space="preserve">
|
||||
<value>Errstellt von</value>
|
||||
</data>
|
||||
<data name="Data_entry" xml:space="preserve">
|
||||
<value>Zählernummereingabe</value>
|
||||
</data>
|
||||
<data name="General" xml:space="preserve">
|
||||
<value>Allgemein</value>
|
||||
</data>
|
||||
<data name="History_of_changes" xml:space="preserve">
|
||||
<value>Änderungen</value>
|
||||
</data>
|
||||
<data name="Last_changed_by" xml:space="preserve">
|
||||
<value>letzte Änderung von</value>
|
||||
</data>
|
||||
<data name="Meter_types_tested" xml:space="preserve">
|
||||
<value>Wasserzellen</value>
|
||||
</data>
|
||||
<data name="Notes" xml:space="preserve">
|
||||
<value>Bemerkung</value>
|
||||
</data>
|
||||
<data name="Printing" xml:space="preserve">
|
||||
<value>Drucker</value>
|
||||
</data>
|
||||
<data name="Procedure_name" xml:space="preserve">
|
||||
<value>Prüfungsname</value>
|
||||
</data>
|
||||
<data name="Process" xml:space="preserve">
|
||||
<value>Prüfstrecke</value>
|
||||
</data>
|
||||
<data name="Protocol_title" xml:space="preserve">
|
||||
<value>Protokoll</value>
|
||||
</data>
|
||||
<data name="Purge_Begin" xml:space="preserve">
|
||||
<value>Befüllen</value>
|
||||
</data>
|
||||
<data name="Purge_End" xml:space="preserve">
|
||||
<value>Entwässern</value>
|
||||
</data>
|
||||
<data name="Saving_results" xml:space="preserve">
|
||||
<value>Speichern auf Festplatte</value>
|
||||
</data>
|
||||
<data name="Short_dercription" xml:space="preserve">
|
||||
<value>Kurzbeschreibung</value>
|
||||
</data>
|
||||
</root>
|
||||
@ -225,10 +225,10 @@
|
||||
<data name="Closing_valve_Pump_off" xml:space="preserve">
|
||||
<value>Zamknięcie zaworu wejściowego, wyłączanie pompy</value>
|
||||
</data>
|
||||
<data name="Combined_meters" xml:space="preserve">
|
||||
<data name="Compound_meters" xml:space="preserve">
|
||||
<value>Wodomierze sprzężone</value>
|
||||
</data>
|
||||
<data name="CombinedBtnText" xml:space="preserve">
|
||||
<data name="Compound" xml:space="preserve">
|
||||
<value>Sprzężone</value>
|
||||
</data>
|
||||
<data name="Communication" xml:space="preserve">
|
||||
@ -1050,4 +1050,10 @@
|
||||
<data name="Water_Meter_nr" xml:space="preserve">
|
||||
<value>Wodomierz {0}</value>
|
||||
</data>
|
||||
<data name="Heat_meter" xml:space="preserve">
|
||||
<value>Licznik ciepła</value>
|
||||
</data>
|
||||
<data name="Heat_meter_sensors" xml:space="preserve">
|
||||
<value>Ciepłomierza czujniki</value>
|
||||
</data>
|
||||
</root>
|
||||
@ -552,8 +552,8 @@
|
||||
<data name="TargetQ" xml:space="preserve">
|
||||
<value>Target Q [m3/h]</value>
|
||||
</data>
|
||||
<data name="Combined_meters" xml:space="preserve">
|
||||
<value>Combined meters</value>
|
||||
<data name="Compound_meters" xml:space="preserve">
|
||||
<value>Compound meters</value>
|
||||
</data>
|
||||
<data name="DetectionThresholdPct" xml:space="preserve">
|
||||
<value>Detection threshold [%]</value>
|
||||
@ -883,8 +883,8 @@
|
||||
<data name="Timeout" xml:space="preserve">
|
||||
<value>Timeout</value>
|
||||
</data>
|
||||
<data name="CombinedBtnText" xml:space="preserve">
|
||||
<value>Combined</value>
|
||||
<data name="Compound" xml:space="preserve">
|
||||
<value>Compound</value>
|
||||
</data>
|
||||
<data name="Device" xml:space="preserve">
|
||||
<value>Device</value>
|
||||
@ -1435,4 +1435,70 @@
|
||||
<data name="stable" xml:space="preserve">
|
||||
<value>stable</value>
|
||||
</data>
|
||||
<data name="Heat_meter" xml:space="preserve">
|
||||
<value>Heat meter</value>
|
||||
</data>
|
||||
<data name="Heat_meter_sensors" xml:space="preserve">
|
||||
<value>Heat meter sensors</value>
|
||||
</data>
|
||||
<data name="T_cold" xml:space="preserve">
|
||||
<value>T cold</value>
|
||||
</data>
|
||||
<data name="T_inlet" xml:space="preserve">
|
||||
<value>T inlet</value>
|
||||
</data>
|
||||
<data name="T_outlet" xml:space="preserve">
|
||||
<value>T outlet</value>
|
||||
</data>
|
||||
<data name="T_warm" xml:space="preserve">
|
||||
<value>T warm</value>
|
||||
</data>
|
||||
<data name="New_heat_meters_path_name" xml:space="preserve">
|
||||
<value>PHeat</value>
|
||||
</data>
|
||||
<data name="Created_by" xml:space="preserve">
|
||||
<value>Created by</value>
|
||||
</data>
|
||||
<data name="Data_entry" xml:space="preserve">
|
||||
<value>Data entry</value>
|
||||
</data>
|
||||
<data name="General" xml:space="preserve">
|
||||
<value>General</value>
|
||||
</data>
|
||||
<data name="History_of_changes" xml:space="preserve">
|
||||
<value>History of changes</value>
|
||||
</data>
|
||||
<data name="Last_changed_by" xml:space="preserve">
|
||||
<value>Last changed by</value>
|
||||
</data>
|
||||
<data name="Meter_types_tested" xml:space="preserve">
|
||||
<value>Meter types tested</value>
|
||||
</data>
|
||||
<data name="Notes" xml:space="preserve">
|
||||
<value>Notes</value>
|
||||
</data>
|
||||
<data name="Printing" xml:space="preserve">
|
||||
<value>Printing</value>
|
||||
</data>
|
||||
<data name="Procedure_name" xml:space="preserve">
|
||||
<value>Procedure name</value>
|
||||
</data>
|
||||
<data name="Process" xml:space="preserve">
|
||||
<value>Process</value>
|
||||
</data>
|
||||
<data name="Protocol_title" xml:space="preserve">
|
||||
<value>Protocol title</value>
|
||||
</data>
|
||||
<data name="Purge_Begin" xml:space="preserve">
|
||||
<value>Purge - Begin</value>
|
||||
</data>
|
||||
<data name="Purge_End" xml:space="preserve">
|
||||
<value>Purge - End</value>
|
||||
</data>
|
||||
<data name="Saving_results" xml:space="preserve">
|
||||
<value>Saving results</value>
|
||||
</data>
|
||||
<data name="Short_description" xml:space="preserve">
|
||||
<value>Short description</value>
|
||||
</data>
|
||||
</root>
|
||||
@ -189,10 +189,10 @@
|
||||
<data name="cold" xml:space="preserve">
|
||||
<value>rece</value>
|
||||
</data>
|
||||
<data name="Combined_meters" xml:space="preserve">
|
||||
<data name="Compound_meters" xml:space="preserve">
|
||||
<value>Contor combinat</value>
|
||||
</data>
|
||||
<data name="CombinedBtnText" xml:space="preserve">
|
||||
<data name="Compound" xml:space="preserve">
|
||||
<value>Combinat</value>
|
||||
</data>
|
||||
<data name="Communication" xml:space="preserve">
|
||||
|
||||
@ -123,6 +123,12 @@
|
||||
<data name="CancelBtnText" xml:space="preserve">
|
||||
<value>Zrušiť</value>
|
||||
</data>
|
||||
<data name="Compound" xml:space="preserve">
|
||||
<value>Združený</value>
|
||||
</data>
|
||||
<data name="Compound_meters" xml:space="preserve">
|
||||
<value>Združené vodomery</value>
|
||||
</data>
|
||||
<data name="Language" xml:space="preserve">
|
||||
<value>Jazyk</value>
|
||||
</data>
|
||||
|
||||
@ -249,10 +249,10 @@
|
||||
<data name="cold" xml:space="preserve">
|
||||
<value>冷</value>
|
||||
</data>
|
||||
<data name="Combined_meters" xml:space="preserve">
|
||||
<data name="Compound_meters" xml:space="preserve">
|
||||
<value>组合水表</value>
|
||||
</data>
|
||||
<data name="CombinedBtnText" xml:space="preserve">
|
||||
<data name="Compound" xml:space="preserve">
|
||||
<value>组合的</value>
|
||||
</data>
|
||||
<data name="Communication" xml:space="preserve">
|
||||
@ -1170,4 +1170,49 @@
|
||||
<data name="Water_Meter_nr" xml:space="preserve">
|
||||
<value>水表 {0}</value>
|
||||
</data>
|
||||
<data name="Created_by" xml:space="preserve">
|
||||
<value>创建者</value>
|
||||
</data>
|
||||
<data name="Data_entry" xml:space="preserve">
|
||||
<value>输入数据</value>
|
||||
</data>
|
||||
<data name="General" xml:space="preserve">
|
||||
<value>总体情况</value>
|
||||
</data>
|
||||
<data name="History_of_changes" xml:space="preserve">
|
||||
<value>变更历史记录</value>
|
||||
</data>
|
||||
<data name="Lats_changed_by" xml:space="preserve">
|
||||
<value>最后修改者</value>
|
||||
</data>
|
||||
<data name="Meter_types_tested" xml:space="preserve">
|
||||
<value>测试仪表型号</value>
|
||||
</data>
|
||||
<data name="Notes" xml:space="preserve">
|
||||
<value>记录</value>
|
||||
</data>
|
||||
<data name="Printing" xml:space="preserve">
|
||||
<value>打印结果</value>
|
||||
</data>
|
||||
<data name="Procedure_name" xml:space="preserve">
|
||||
<value>程序名</value>
|
||||
</data>
|
||||
<data name="Process" xml:space="preserve">
|
||||
<value>进程</value>
|
||||
</data>
|
||||
<data name="Protocol_title" xml:space="preserve">
|
||||
<value>方案标题</value>
|
||||
</data>
|
||||
<data name="Purge_Begin" xml:space="preserve">
|
||||
<value>清除 - 开始</value>
|
||||
</data>
|
||||
<data name="Purge_End" xml:space="preserve">
|
||||
<value>清除 - 结束</value>
|
||||
</data>
|
||||
<data name="Saving_results" xml:space="preserve">
|
||||
<value>写入结果</value>
|
||||
</data>
|
||||
<data name="Short_description" xml:space="preserve">
|
||||
<value>简短描述</value>
|
||||
</data>
|
||||
</root>
|
||||
@ -203,7 +203,7 @@ namespace TBF.Screens
|
||||
|
||||
void UpdateVisibility(MetersKind metersKind)
|
||||
{
|
||||
bool visible = (metersKind == MetersKind.Single);
|
||||
bool visible = (metersKind == MetersKind.Single || metersKind == MetersKind.HeatMeter);
|
||||
|
||||
for (int i = 2 * Config.Data.CompoundWMsCount; i < textBoxesCount; i++)
|
||||
{
|
||||
@ -249,7 +249,7 @@ namespace TBF.Screens
|
||||
|
||||
scaleCmpntLabel.Text = "---";
|
||||
|
||||
if (currentMetersKind == MetersKind.Single)
|
||||
if (currentMetersKind == MetersKind.Single || currentMetersKind == MetersKind.HeatMeter)
|
||||
{
|
||||
watermeterPictureBox1.Visible = true;
|
||||
watermeterPictureBox2.Visible = true;
|
||||
@ -332,7 +332,7 @@ namespace TBF.Screens
|
||||
error1Label.Text = "---";
|
||||
passed1Label.Text = "---";
|
||||
|
||||
if (currentMetersKind == MetersKind.Single)
|
||||
if (currentMetersKind == MetersKind.Single || currentMetersKind == MetersKind.HeatMeter)
|
||||
{
|
||||
for (int i = 0; i < textBoxesCount; i++)
|
||||
{
|
||||
@ -450,7 +450,7 @@ namespace TBF.Screens
|
||||
double refError = TBF.BenchControl.Formulas.ErrorFromVolumes(refVolume, volumeCtv);
|
||||
refErrorLabel.Text = refError.ToString("F3");
|
||||
|
||||
if (currentMetersKind == MetersKind.Single)
|
||||
if (currentMetersKind == MetersKind.Single || currentMetersKind == MetersKind.HeatMeter)
|
||||
{
|
||||
for (int i = 0; i < Math.Min(textBoxesCount, ProcessData.RegisterReaders.Length); i++)
|
||||
{
|
||||
|
||||
@ -341,6 +341,7 @@
|
||||
<Compile Include="BenchControl\GenericDevices\IModbus.cs" />
|
||||
<Compile Include="BenchControl\GenericDevices\IBenchInfo.cs" />
|
||||
<Compile Include="BenchControl\GenericDevices\ISimultTestMethod.cs" />
|
||||
<Compile Include="BenchControl\HeatMetersPath.cs" />
|
||||
<Compile Include="BenchControl\Keithley\RS232\Factory.cs" />
|
||||
<Compile Include="BenchControl\Keithley\RS232\Multimeter.cs" />
|
||||
<Compile Include="BenchControl\Keithley\RS232\MultimeterCfg.cs" />
|
||||
@ -1415,6 +1416,9 @@
|
||||
<Compile Include="UiControls\PathsFeedingCtrl.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="UiControls\PathsHeatMetersCtrl.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="UiControls\PathsMetersCtrl.cs">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
@ -1773,12 +1777,6 @@
|
||||
<EmbeddedResource Include="PrintOrderDocument.resx">
|
||||
<DependentUpon>PrintOrderDocument.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="ProcedureDlg.cs.resx">
|
||||
<DependentUpon>ProcedureDlg.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="ProcedureDlg.zh-CN.resx">
|
||||
<DependentUpon>ProcedureDlg.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Resources\Strings.cs.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
@ -1865,9 +1863,6 @@
|
||||
<SubType>Designer</SubType>
|
||||
<DependentUpon>PreferencesDlg.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="ProcedureDlg.de.resx">
|
||||
<DependentUpon>ProcedureDlg.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="ProcedureDlg.resx">
|
||||
<DependentUpon>ProcedureDlg.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
|
||||
177
TestBenchFramework/UiControls/PathsHeatMetersCtrl.cs
Normal file
177
TestBenchFramework/UiControls/PathsHeatMetersCtrl.cs
Normal file
@ -0,0 +1,177 @@
|
||||
///
|
||||
/// Copyright (c) 2016 Sensus Metering Systems
|
||||
///
|
||||
using System.Windows.Forms;
|
||||
using log4net;
|
||||
using TBF.Resources;
|
||||
|
||||
namespace TBF.UiControls
|
||||
{
|
||||
public class PathsHeatMetersCtrl : BaseWithListViewEx<Config.Entities.HeatMetersPath>, ITabWithListViewEx
|
||||
{
|
||||
static readonly ILog log = LogManager.GetLogger(typeof(PathsHeatMetersCtrl));
|
||||
|
||||
/// <summary>
|
||||
/// Fixed ListViewEx columns
|
||||
/// </summary>
|
||||
enum Column
|
||||
{
|
||||
Name,
|
||||
Twarm,
|
||||
Tcold,
|
||||
FixedColumnsCount,
|
||||
}
|
||||
readonly int fixedColumnsCount = (int)Column.FixedColumnsCount;
|
||||
|
||||
PathsDlg parent;
|
||||
Control parentControl;
|
||||
Control[] editors;
|
||||
|
||||
public PathsHeatMetersCtrl()
|
||||
: base()
|
||||
{
|
||||
}
|
||||
|
||||
public void Initialize(PathsDlg parent, Control parentControl)
|
||||
{
|
||||
this.parent = parent;
|
||||
this.parentControl = parentControl;
|
||||
|
||||
#if HEAT_METERS_SUPPORT
|
||||
/// Load the paths
|
||||
MyItems = parent.Session
|
||||
.CreateQuery("FROM HeatMetersPath ORDER BY ItemNr")
|
||||
.List<Config.Entities.HeatMetersPath>();
|
||||
|
||||
SubItemClicked += new SubItemEventHandler(listViewEx_SubItemClicked);
|
||||
SubItemEndEditing += new SubItemEndEditingEventHandler(listViewEx_SubItemEndEditing);
|
||||
|
||||
/// ListViewEx columns
|
||||
TBF.LocalSettings ls = Program.LocalSettings;
|
||||
Columns.Add(Strings.Name, (ls.HeatMetersColumnCount > (int)Column.Name) ? ls.HeatMetersColumnWidths[(int)Column.Name] : 60 * parent.Dpi / PathsDlg.Dpi100pct);
|
||||
Columns.Add(Strings.T_warm, (ls.HeatMetersColumnCount > (int)Column.Twarm) ? ls.HeatMetersColumnWidths[(int)Column.Twarm] : 50 * parent.Dpi / PathsDlg.Dpi100pct);
|
||||
Columns.Add(Strings.T_cold, (ls.HeatMetersColumnCount > (int)Column.Tcold) ? ls.HeatMetersColumnWidths[(int)Column.Tcold] : 50 * parent.Dpi / PathsDlg.Dpi100pct);
|
||||
|
||||
/// Temperatures, pressures
|
||||
ComboBox tWarmCBox = new ComboBox();
|
||||
ComboBox tColdCBox = new ComboBox();
|
||||
foreach (var cmpnt in parent.TbfComponents)
|
||||
{
|
||||
if (cmpnt is BenchControl.GenericDevices.ITempMeter)
|
||||
{
|
||||
tWarmCBox.Items.Add(cmpnt.Cfg.Name);
|
||||
tColdCBox.Items.Add(cmpnt.Cfg.Name);
|
||||
}
|
||||
}
|
||||
|
||||
editors = new Control[fixedColumnsCount];
|
||||
///
|
||||
editors[(int)Column.Name] = new TextBox(); /// Name
|
||||
editors[(int)Column.Twarm] = tWarmCBox;
|
||||
editors[(int)Column.Tcold] = tColdCBox;
|
||||
///
|
||||
for (int i = 0; i < editors.Length; i++)
|
||||
{
|
||||
editors[i].Visible = false;
|
||||
parent.Controls.Add(editors[i]);
|
||||
}
|
||||
|
||||
base.RedrawAll();
|
||||
#endif
|
||||
}
|
||||
|
||||
void listViewEx_SubItemClicked(object sender, SubItemEventArgs e)
|
||||
{
|
||||
if (!Unlocked || e.SubItem >= editors.Length) return;
|
||||
if ((e.Item.Tag is Config.Entities.IHasItemNr) &&
|
||||
((e.Item.Tag as Config.Entities.IHasItemNr).ItemNr < FixedRowsCount) &&
|
||||
(e.SubItem < fixedColumnsCount))
|
||||
{
|
||||
return;
|
||||
}
|
||||
StartEditing(editors[e.SubItem], e.Item, e.SubItem);
|
||||
}
|
||||
|
||||
void listViewEx_SubItemEndEditing(object sender, SubItemEndEditingEventArgs e)
|
||||
{
|
||||
}
|
||||
|
||||
public override void DrawOne(object myItem)
|
||||
{
|
||||
Config.Entities.HeatMetersPath entity = (Config.Entities.HeatMetersPath)myItem;
|
||||
BenchControl.HeatMetersPath path = new BenchControl.HeatMetersPath(entity, parent.TbfComponents);
|
||||
|
||||
ListViewItem lvi = new ListViewItem(entity.Name);
|
||||
lvi.SubItems.Add(path.TempWarm != null ? path.TempWarm.Cfg.Name : "---");
|
||||
lvi.SubItems.Add(path.TempCold != null ? path.TempCold.Cfg.Name : "---");
|
||||
|
||||
lvi.Tag = entity;
|
||||
|
||||
Items.Add(lvi);
|
||||
}
|
||||
|
||||
public override void UpdateOne(ListViewItem lvi, object myItem)
|
||||
{
|
||||
Config.Entities.HeatMetersPath entity = (Config.Entities.HeatMetersPath)myItem;
|
||||
|
||||
entity.Name = lvi.Text;
|
||||
|
||||
entity.TempWarm = lvi.SubItems[(int)Column.Twarm].Text;
|
||||
entity.TempCold = lvi.SubItems[(int)Column.Tcold].Text;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Update the entities and save them to the database
|
||||
/// </summary>
|
||||
public new void OkBtnClicked()
|
||||
{
|
||||
base.OkBtnClicked();
|
||||
|
||||
#if HEAT_METERS_SUPPORT
|
||||
/// Update the database
|
||||
foreach (var entity in ToBeRemovedItems)
|
||||
{
|
||||
Config.FluentCommon.DeleteFromDb(parent.Session, entity);
|
||||
}
|
||||
foreach (var entity in MyItems)
|
||||
{
|
||||
Config.FluentCommon.SaveToDb(parent.Session, entity);
|
||||
}
|
||||
|
||||
/// Update the column widths
|
||||
Program.LocalSettings.HeatMetersColumnWidths = new int[Columns.Count];
|
||||
for (int i = 0; i < Columns.Count; i++)
|
||||
{
|
||||
Program.LocalSettings.HeatMetersColumnWidths[i] = Columns[i].Width;
|
||||
}
|
||||
Program.LocalSettings.Save();
|
||||
#endif
|
||||
}
|
||||
|
||||
public void AddOne()
|
||||
{
|
||||
/// Find an unused test name
|
||||
string newName;
|
||||
for (int nameId = 1; true; nameId++)
|
||||
{
|
||||
newName = Strings.New_heat_meters_path_name + nameId.ToString();
|
||||
bool notUsed = true;
|
||||
foreach (var t in MyItems) if (t.Name.Equals(newName)) notUsed = false;
|
||||
if (notUsed) break;
|
||||
}
|
||||
|
||||
Config.Entities.HeatMetersPath entity = new Config.Entities.HeatMetersPath(newName, MyItems.Count);
|
||||
|
||||
base.AddOne(entity);
|
||||
}
|
||||
|
||||
public new void RemoveSelected()
|
||||
{
|
||||
bool lastOneRemoved = base.RemoveSelected();
|
||||
if (lastOneRemoved && parent != null)
|
||||
{
|
||||
parent.UpdateButtonStates(SharedButtons.SelectedItemPos.None);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user