File indexing completed on 2024-06-16 04:20:02
0001 /* 0002 Kchmviewer - a CHM and EPUB file viewer with broad language support 0003 SPDX-FileCopyrightText: 2004-2014 George Yunaev gyunaev@ulduzsoft.com 0004 0005 SPDX-License-Identifier: GPL-3.0-or-later 0006 */ 0007 0008 #ifndef HELPERXMLHANDLER_EPUBTOC_H 0009 #define HELPERXMLHANDLER_EPUBTOC_H 0010 0011 #include "ebook_epub.h" 0012 #include <QXmlDefaultHandler> 0013 0014 class HelperXmlHandler_EpubTOC : public QXmlDefaultHandler 0015 { 0016 public: 0017 explicit HelperXmlHandler_EpubTOC(EBook_EPUB *epub); 0018 0019 QList<EBookTocEntry> entries; 0020 0021 private: 0022 // Overridden members 0023 bool startElement(const QString &namespaceURI, const QString &localName, const QString &qName, const QXmlAttributes &atts) override; 0024 bool characters(const QString &ch) override; 0025 bool endElement(const QString &namespaceURI, const QString &localName, const QString &qName) override; 0026 void checkNewTocEntry(); 0027 0028 bool m_inNavMap; 0029 bool m_inText; 0030 unsigned int m_indent; 0031 QString m_lastId; 0032 QString m_lastTitle; 0033 EBook_EPUB *m_epub; 0034 }; 0035 0036 #endif // HELPERXMLHANDLER_EPUBTOC_H