void BookReader::addHyperlinkControl(FBTextKind kind, const std::string &label) { myHyperlinkKind = kind; std::string type; switch (myHyperlinkKind) { case INTERNAL_HYPERLINK: case FOOTNOTE: myHyperlinkType = HYPERLINK_INTERNAL; type = "internal"; break; case EXTERNAL_HYPERLINK: myHyperlinkType = HYPERLINK_EXTERNAL; type = "external"; break; /*case BOOK_HYPERLINK: myHyperlinkType = HYPERLINK_BOOK; type = "book"; break;*/ default: myHyperlinkType = HYPERLINK_NONE; break; } ZLLogger::Instance().println( "hyperlink", " + control (" + type + "): " + label ); if (paragraphIsOpen()) { flushTextBufferToParagraph(); myCurrentTextModel->addHyperlinkControl(kind, myHyperlinkType, label); } myHyperlinkReference = label; }
void BookReader::addHyperlinkControl(FBTextKind kind, const std::string &label) { myHyperlinkKind = kind; switch (myHyperlinkKind) { case INTERNAL_HYPERLINK: case FOOTNOTE: myHyperlinkType = "internal"; break; case EXTERNAL_HYPERLINK: myHyperlinkType = "external"; break; case BOOK_HYPERLINK: myHyperlinkType = "book"; break; default: myHyperlinkType.erase(); break; } ZLLogger::Instance().println( "hyperlink", " + control (" + myHyperlinkType + "): " + label ); if (myTextParagraphExists) { flushTextBufferToParagraph(); myCurrentTextModel->addHyperlinkControl(kind, label, myHyperlinkType); } myHyperlinkReference = label; }
void BookReader::addControl(FBTextKind kind, bool start) { if (myTextParagraphExists) { flushTextBufferToParagraph(); myCurrentTextModel->addControl(kind, start); } if (!start && !myHyperlinkReference.empty() && (kind == myHyperlinkKind)) { myHyperlinkReference.erase(); } }
void BookReader::addImageReference(const std::string &id, short vOffset) { if (myCurrentTextModel != 0) { mySectionContainsRegularContents = true; if (myTextParagraphExists) { flushTextBufferToParagraph(); myCurrentTextModel->addImage(id, myModel.imageMap(), vOffset); } else { beginParagraph(); myCurrentTextModel->addControl(IMAGE, true); myCurrentTextModel->addImage(id, myModel.imageMap(), vOffset); myCurrentTextModel->addControl(IMAGE, false); endParagraph(); } } }
void BookReader::addImageReference(const std::string &id, short vOffset, bool isCover) { if (myCurrentTextModel != 0) { mySectionContainsRegularContents = true; if (paragraphIsOpen()) { flushTextBufferToParagraph(); myCurrentTextModel->addImage(id, vOffset, isCover); } else { beginParagraph(); myCurrentTextModel->addControl(IMAGE, true); myCurrentTextModel->addImage(id, vOffset, isCover); myCurrentTextModel->addControl(IMAGE, false); endParagraph(); } } }
void BookReader::endParagraph() { if (myTextParagraphExists) { flushTextBufferToParagraph(); myTextParagraphExists = false; } }
void BookReader::addControl(const ZLTextStyleEntry &entry) { if (myTextParagraphExists) { flushTextBufferToParagraph(); myCurrentTextModel->addControl(entry); } }
void BookReader::addStyleCloseEntry() { if (paragraphIsOpen()) { flushTextBufferToParagraph(); myCurrentTextModel->addStyleCloseEntry(); } }
void BookReader::addStyleEntry(const ZLTextStyleEntry &entry) { if (paragraphIsOpen()) { flushTextBufferToParagraph(); myCurrentTextModel->addStyleEntry(entry); } }
void BookReader::endParagraph() { if (paragraphIsOpen()) { flushTextBufferToParagraph(); myModelsWithOpenParagraphs.remove(myCurrentTextModel); } }
void BookReader::addFixedHSpace(unsigned char length) { if (paragraphIsOpen()) { flushTextBufferToParagraph(); myCurrentTextModel->addFixedHSpace(length); } }
void BookReader::addStyleEntry(const ZLTextStyleEntry &entry, const std::vector<std::string> &fontFamilies, unsigned char depth) { if (paragraphIsOpen()) { flushTextBufferToParagraph(); myCurrentTextModel->addStyleEntry(entry, fontFamilies, depth); } }
void BookReader::addStyleCloseEntry() { if (myTextParagraphExists) { flushTextBufferToParagraph(); myCurrentTextModel->addStyleCloseEntry(); } }