public void DoUpdatesOfAllBooks(IProgress progress)
        {
            int i = 0;

            foreach (var bookInfo in TheOneEditableCollection.GetBookInfos())
            {
                i++;
                var book = _bookServer.GetBookFromBookInfo(bookInfo);
                //gets overwritten: progress.WriteStatus(book.TitleBestForUserDisplay);
                progress.WriteMessage("Processing " + book.TitleBestForUserDisplay + " " + i + "/" + TheOneEditableCollection.GetBookInfos().Count());
                book.BringBookUpToDate(progress);
            }
        }
示例#2
0
        public void DuplicateBook(Book.Book book)
        {
            var newBookDir = book.Storage.Duplicate();

            // Get rid of any TC status we copied from the original, so Bloom treats it correctly as a new book.
            BookStorage.RemoveLocalOnlyFiles(newBookDir);

            ReloadEditableCollection();

            var dupInfo = TheOneEditableCollection.GetBookInfos()
                          .FirstOrDefault(info => info.FolderPath == newBookDir);

            if (dupInfo != null)
            {
                var newBook = GetBookFromBookInfo(dupInfo);
                SelectBook(newBook);
                BookHistory.AddEvent(newBook, BookHistoryEventType.Created, $"Duplicated from existing book \"{book.Title}\"");
            }
        }
        public void DoChecksOfAllBooksBackgroundWork(ProgressDialogBackground dialog, string pathToFolderOfReplacementImages)
        {
            var bookInfos = TheOneEditableCollection.GetBookInfos();
            var count     = bookInfos.Count();

            if (count == 0)
            {
                return;
            }

            foreach (var bookInfo in bookInfos)
            {
                //not allowed in this thread: dialog.ProgressBar.Value++;
                dialog.Progress.ProgressIndicator.PercentCompleted += 100 / count;

                var book = _bookServer.GetBookFromBookInfo(bookInfo);

                dialog.Progress.WriteMessage("Checking " + book.TitleBestForUserDisplay);
                book.CheckBook(dialog.Progress, pathToFolderOfReplacementImages);
                dialog.ProgressString.WriteMessage("");
            }
            dialog.ProgressBar.Value++;
        }