Configuration of results: Display on screen completed - to be tested

This commit is contained in:
Milan Hanajik
2015-01-12 17:18:34 +01:00
parent 42fbc501a9
commit f2b4bfe39d
3 changed files with 97 additions and 162 deletions
+33 -137
View File
@@ -212,30 +212,6 @@ namespace TBF.Screens
return rslt;
}
IList<string> GetAllResultNames(bool combined)
{
IList<string> rslt = new List<string>();
if (combined)
{
rslt.Add("Q [l/h]");
rslt.Add("Ref.volume [l]");
rslt.Add("WM1 volume [l]");
rslt.Add("WM2 volume [l]");
rslt.Add("WM volume [l]");
rslt.Add("Error [%]");
rslt.Add("Result");
}
else
{
rslt.Add("Q [l/h]");
rslt.Add("Ref.volume [l]");
rslt.Add("WM volume [l]");
rslt.Add("Error [%]");
rslt.Add("Result");
}
return rslt;
}
/// <summary>
/// Get a ListView control filled with results of the meter 'mtr'
/// </summary>
@@ -244,12 +220,12 @@ namespace TBF.Screens
ListView GetResultsTestsAreRows(int mtr, bool combined)
{
if (tests == null) return null;
IList<Forms.ResultItemSpec> items = (combined ? SelectedItems_CombinedWM : SelectedItems_SingleWM);
ListView lview = GetListView();
// Header
lview.Columns.Add((mtr + 1).ToString());
foreach (var str in GetAllResultNames(combined)) lview.Columns.Add(str);
foreach (var item in items) lview.Columns.Add(item.ClmnHeaderText);
IList<string> testNames = GetAllDecoratedTestNames();
int ix = 0;
@@ -258,29 +234,20 @@ namespace TBF.Screens
ListViewItem lvi = new ListViewItem(testNames[ix++]);
if (testRslt != null)
{
if (combined)
{
lvi.SubItems.Add(testRslt.FlowMass.ToString("F1"));
lvi.SubItems.Add(testRslt.VolumeCTV.ToString("F2"));
lvi.SubItems.Add(testRslt.Meters[2 * mtr].VolumeMeter.ToString("F2"));
lvi.SubItems.Add(testRslt.Meters[2 * mtr + 1].VolumeMeter.ToString("F2"));
lvi.SubItems.Add(testRslt.CombinedMeters[mtr].VolumeMeter.ToString("F2"));
lvi.SubItems.Add(testRslt.CombinedMeters[mtr].VolumeErrorPct.ToString("F2"));
lvi.SubItems.Add(testRslt.CombinedMeters[mtr].Passed ? Strings.Passed : Strings.Failed);
lvi.UseItemStyleForSubItems = false;
lvi.SubItems[7].BackColor = (testRslt.CombinedMeters[mtr].Passed ? Color.Green : Color.Red);
}
else
{
lvi.SubItems.Add(testRslt.FlowMass.ToString("F1"));
lvi.SubItems.Add(testRslt.VolumeCTV.ToString("F2"));
lvi.SubItems.Add(testRslt.Meters[mtr].VolumeMeter.ToString("F2"));
lvi.SubItems.Add(testRslt.Meters[mtr].VolumeErrorPct.ToString("F2"));
lvi.SubItems.Add(testRslt.Meters[mtr].Passed ? Strings.Passed : Strings.Failed);
lvi.UseItemStyleForSubItems = false;
lvi.SubItems[5].BackColor = (testRslt.Meters[mtr].Passed ? Color.Green : Color.Red);
foreach (var item in items)
{
if (combined)
{
lvi.SubItems.Add((item.PrintCombined == null) ? string.Empty : item.PrintCombined(testRslt.Meters[2 * mtr],
testRslt.Meters[2 * mtr + 1],
testRslt.CombinedMeters[mtr]));
}
else
{
lvi.SubItems.Add((item.Print == null) ? string.Empty : item.Print(testRslt.Meters[mtr]));
}
}
}
}
lview.Items.Add(lvi);
}
@@ -295,7 +262,7 @@ namespace TBF.Screens
ListView GetResultsTestsAreColumns(int mtr, bool combined)
{
if (tests == null) return null;
IList<Forms.ResultItemSpec> items = (combined ? SelectedItems_CombinedWM : SelectedItems_SingleWM);
ListView lview = GetListView();
// Header
@@ -304,96 +271,25 @@ namespace TBF.Screens
IList<Entities.TestResult> trs = GetCurrentTestResults();
int rsltId = 0;
foreach (var rsltName in GetAllResultNames(combined))
foreach (var item in items)
{
ListViewItem lvi = new ListViewItem(rsltName);
if (combined)
{
switch (rsltId++)
{
case 0:
foreach (var tr in trs) lvi.SubItems.Add((tr != null) ? tr.FlowMass.ToString("F1") : string.Empty);
break;
case 1:
foreach (var tr in trs) lvi.SubItems.Add((tr != null) ? tr.VolumeCTV.ToString("F2") : string.Empty);
break;
case 2:
foreach (var tr in trs) lvi.SubItems.Add((tr != null) ? tr.Meters[2 * mtr].VolumeMeter.ToString("F2") : string.Empty);
break;
case 3:
foreach (var tr in trs) lvi.SubItems.Add((tr != null) ? tr.Meters[2 * mtr + 1].VolumeMeter.ToString("F2") : string.Empty);
break;
case 4:
foreach (var tr in trs) lvi.SubItems.Add((tr != null) ? tr.CombinedMeters[mtr].VolumeMeter.ToString("F2") : string.Empty);
break;
case 5:
foreach (var tr in trs) lvi.SubItems.Add((tr != null) ? tr.CombinedMeters[mtr].VolumeErrorPct.ToString("F2") : string.Empty);
break;
case 6:
int i = 1;
lvi.UseItemStyleForSubItems = false;
foreach (var tr in trs)
{
if (tr == null)
{
lvi.SubItems.Add(string.Empty);
}
else if (tr.CombinedMeters[mtr].Passed)
{
lvi.SubItems.Add(Strings.Passed);
lvi.SubItems[i].BackColor = Color.Green;
}
else
{
lvi.SubItems.Add(Strings.Failed);
lvi.SubItems[i].BackColor = Color.Red;
}
i++;
}
break;
}
}
else
{
switch (rsltId++)
{
case 0:
foreach (var tr in trs) lvi.SubItems.Add((tr != null) ? tr.FlowMass.ToString("F1") : string.Empty);
break;
case 1:
foreach (var tr in trs) lvi.SubItems.Add((tr != null) ? tr.VolumeCTV.ToString("F2") : string.Empty);
break;
case 2:
foreach (var tr in trs) lvi.SubItems.Add((tr != null) ? tr.Meters[mtr].VolumeMeter.ToString("F2") : string.Empty);
break;
case 3:
foreach (var tr in trs) lvi.SubItems.Add((tr != null) ? tr.Meters[mtr].VolumeErrorPct.ToString("F2") : string.Empty);
break;
case 4:
int i = 1;
lvi.UseItemStyleForSubItems = false;
foreach (var tr in trs)
{
if (tr == null)
{
lvi.SubItems.Add(string.Empty);
}
else if (tr.Meters[mtr].Passed)
{
lvi.SubItems.Add(Strings.Passed);
lvi.SubItems[i].BackColor = Color.Green;
}
else
{
lvi.SubItems.Add(Strings.Failed);
lvi.SubItems[i].BackColor = Color.Red;
}
i++;
}
break;
ListViewItem lvi = new ListViewItem(item.ClmnHeaderText);
if (combined)
{
foreach (var tr in trs)
{
lvi.SubItems.Add((item.PrintCombined == null) ? string.Empty : item.PrintCombined(tr.Meters[2 * mtr],
tr.Meters[2 * mtr + 1],
tr.CombinedMeters[mtr]));
}
}
}
else
{
foreach (var tr in trs)
{
lvi.SubItems.Add((item.Print == null) ? string.Empty : item.Print(tr.Meters[mtr]));
}
}
lview.Items.Add(lvi);
}