commonBackColor for ListView-s in ResultsTabPage, CompletedFromTests() method in Results.Entities.WaterMeter

This commit is contained in:
Milan Hanajik 2017-06-16 15:13:03 +02:00
parent ddebe7f8d5
commit 2ac97aa809
2 changed files with 23 additions and 8 deletions

View File

@ -92,6 +92,20 @@ namespace Results.Entities
return passed;
}
public virtual bool CompletedFromTests()
{
bool completed = true;
foreach (var mtr in MeterTestRslts)
{
if (mtr.Evaluate() && !mtr.TestDone)
{
completed = false;
break;
}
}
return completed;
}
public virtual string PassedColorStr()
{

View File

@ -248,7 +248,7 @@ namespace TBF.Screens
/// Get an empty ListView control with appropriate parameters.
/// </summary>
/// <returns>ListView control</returns>
ListView GetListView()
ListView GetListView(Color backColor)
{
ListView lview = new ListView();
lview.AllowColumnReorder = false;
@ -260,7 +260,8 @@ namespace TBF.Screens
lview.TabIndex = 0;
lview.UseCompatibleStateImageBehavior = false;
lview.View = System.Windows.Forms.View.Details;
return lview;
lview.BackColor = backColor;
return lview;
}
@ -296,8 +297,8 @@ namespace TBF.Screens
ListView GetResultsTestsAreRows(Results.Entities.WaterMeter wMtr, int printedWMNr)
{
metersKind = wMtr.Compound() ? MetersKind.Combined : (wMtr.HeatMeter() ? MetersKind.HeatMeter : MetersKind.Single);
ListView lview = GetListView();
Color commonBackColor = wMtr.PassedFromTests() ? Color.LightGreen : (wMtr.CompletedFromTests() ? Color.LightPink : Color.White);
ListView lview = GetListView(commonBackColor);
IList<Results.WMeterRsltItemSpec> items = GetRsltItems(metersKind);
@ -340,7 +341,7 @@ namespace TBF.Screens
}
else if (texts.Length == 2)
{
Color color = texts[1].Equals("Green") ? Color.Green : (texts[1].Equals("Red") ? Color.Red : Color.White);
Color color = texts[1].Equals("Green") ? Color.Green : (texts[1].Equals("Red") ? Color.Red : commonBackColor);
lvi.UseItemStyleForSubItems = false;
lvi.SubItems.Add(texts[0]);
lvi.SubItems[lvi.SubItems.Count - 1].BackColor = color;
@ -367,8 +368,8 @@ namespace TBF.Screens
ListView GetResultsTestsAreColumns(Results.Entities.WaterMeter wMtr, int printedWMNr)
{
metersKind = wMtr.Compound() ? MetersKind.Combined : (wMtr.HeatMeter() ? MetersKind.HeatMeter : MetersKind.Single);
ListView lview = GetListView();
Color commonBackColor = wMtr.PassedFromTests() ? Color.LightGreen : (wMtr.CompletedFromTests() ? Color.LightPink : Color.White);
ListView lview = GetListView(commonBackColor);
IList<Results.WMeterRsltItemSpec> items = GetRsltItems(metersKind);
@ -407,7 +408,7 @@ namespace TBF.Screens
}
else if (texts.Length == 2)
{
Color color = texts[1].Equals("Green") ? Color.Green : (texts[1].Equals("Red") ? Color.Red : Color.White);
Color color = texts[1].Equals("Green") ? Color.Green : (texts[1].Equals("Red") ? Color.Red : commonBackColor);
lvi.UseItemStyleForSubItems = false;
lvi.SubItems.Add(texts[0]);
lvi.SubItems[lvi.SubItems.Count - 1].BackColor = color;