public void RefreshControlsWithTotalsData(SlotTotals totals) { SetNotifyIconText(String.Format("{0} Working Slots{3}{1} Non-Working Slots{3}{2:" + _prefs.PpdFormatString + "} PPD", totals.WorkingSlots, totals.NonWorkingSlots, totals.PPD, Environment.NewLine)); string clientLabel = totals.WorkingSlots == 1 ? "Slot" : "Slots"; SetStatusLabelHostsText(String.Format(CultureInfo.CurrentCulture, "{0} {1}", totals.WorkingSlots, clientLabel)); SetStatusLabelPPDText(String.Format(CultureInfo.CurrentCulture, "{0:" + _prefs.PpdFormatString + "} PPD", totals.PPD)); }
/// <summary> /// Get the totals for all slots. /// </summary> /// <returns>The totals for all slots.</returns> public static SlotTotals GetSlotTotals(this IEnumerable<SlotModel> slots) { var totals = new SlotTotals(); // If no slots return initialized totals. if (slots == null) { return totals; } totals.TotalSlots = slots.Count(); foreach (SlotModel slot in slots) { totals.PPD += slot.PPD; totals.UPD += slot.UPD; totals.TotalRunCompletedUnits += slot.TotalRunCompletedUnits; totals.TotalRunFailedUnits += slot.TotalRunFailedUnits; totals.TotalCompletedUnits += slot.TotalCompletedUnits; if (slot.ProductionValuesOk) { totals.WorkingSlots++; } } return totals; }