private void setBookBackupCounts(LibraryCommands.LibraryStats libraryStats) { var backupsCountsLbl_Format = "BACKUPS: No progress: {0} In process: {1} Fully backed up: {2}"; // enable/disable export var hasResults = 0 < (libraryStats.booksFullyBackedUp + libraryStats.booksDownloadedOnly + libraryStats.booksNoProgress + libraryStats.booksError); exportLibraryToolStripMenuItem.Enabled = hasResults; // update bottom numbers var pending = libraryStats.booksNoProgress + libraryStats.booksDownloadedOnly; var statusStripText = !hasResults ? "No books. Begin by importing your library" : libraryStats.booksError > 0 ? string.Format(backupsCountsLbl_Format + " Errors: {3}", libraryStats.booksNoProgress, libraryStats.booksDownloadedOnly, libraryStats.booksFullyBackedUp, libraryStats.booksError) : pending > 0 ? string.Format(backupsCountsLbl_Format, libraryStats.booksNoProgress, libraryStats.booksDownloadedOnly, libraryStats.booksFullyBackedUp) : $"All {"book".PluralizeWithCount(libraryStats.booksFullyBackedUp)} backed up"; // update menu item var menuItemText = pending > 0 ? $"{pending} remaining" : "All books have been liberated"; // update UI statusStrip1.UIThreadAsync(() => backupsCountsLbl.Text = statusStripText); menuStrip1.UIThreadAsync(() => beginBookBackupsToolStripMenuItem.Enabled = pending > 0); menuStrip1.UIThreadAsync(() => beginBookBackupsToolStripMenuItem.Text = string.Format(beginBookBackupsToolStripMenuItem_format, menuItemText)); }
private void setPdfBackupCounts(LibraryCommands.LibraryStats libraryStats) { var pdfsCountsLbl_Format = "| PDFs: NOT d/l\'ed: {0} Downloaded: {1}"; // update bottom numbers var hasResults = 0 < (libraryStats.pdfsNotDownloaded + libraryStats.pdfsDownloaded); var statusStripText = !hasResults ? "" : libraryStats.pdfsNotDownloaded > 0 ? string.Format(pdfsCountsLbl_Format, libraryStats.pdfsNotDownloaded, libraryStats.pdfsDownloaded) : $"| All {libraryStats.pdfsDownloaded} PDFs downloaded"; // update menu item var menuItemText = libraryStats.pdfsNotDownloaded > 0 ? $"{libraryStats.pdfsNotDownloaded} remaining" : "All PDFs have been downloaded"; // update UI statusStrip1.UIThreadAsync(() => pdfsCountsLbl.Text = statusStripText); menuStrip1.UIThreadAsync(() => beginPdfBackupsToolStripMenuItem.Enabled = libraryStats.pdfsNotDownloaded > 0); menuStrip1.UIThreadAsync(() => beginPdfBackupsToolStripMenuItem.Text = string.Format(beginPdfBackupsToolStripMenuItem_format, menuItemText)); }