Example #1
0
        private void AddBookmark(string text, TextRenderData first, TextRenderData last, Color color)
        {
            BookmarkModel bookmark = _bookmarkRepository.AddBookmark(
                ViewModel.BookId,
                PageCanvas.Bookmarks,
                text,
                ColorHelper.ToInt32(color),
                first.TokenID,
                last.TokenID);

            var previousPageWord = PageCanvas.PreviousTexts.LastOrDefault() ?? new TextRenderData();

            if (first.TokenID == previousPageWord.TokenID)
            {
                PageCanvas.Highlight(PageCanvas.GetPrevPagePanel(), previousPageWord.Rect, previousPageWord.Rect, bookmark, color);
            }

            var nextPageWord = PageCanvas.NextTexts.FirstOrDefault() ?? new TextRenderData();

            if (last.TokenID == nextPageWord.TokenID)
            {
                PageCanvas.Highlight(PageCanvas.GetNextPagePanel(), nextPageWord.Rect, nextPageWord.Rect, bookmark, color);
            }

            PageCanvas.Highlight(PageCanvas.GetCurrentPagePanel(), first.Rect, last.Rect, bookmark, color);
        }