4 #include "xmlhandler.h"
8 /** XML content handler for NCX format. */
9 class NcxHandler: public XmlHandler
12 NcxHandler(Book &b): book(b) {
13 book.chapters.clear();
16 bool endElement(const QString &namespaceUri, const QString &name,
17 const QString &qName) {
21 contentTitle = currentText;
22 } else if (name == "navPoint") {
23 qDebug() << "NcxHander::endElement: url" << contentUrl << "title"
24 << contentTitle << "id" << contentId;
25 Book::ContentItem item;
26 item.href = contentUrl;
27 item.name = contentTitle;
28 book.content[contentId] = item;
29 book.chapters.append(contentId);
34 bool startElement(const QString &namespaceUri, const QString &name,
35 const QString &qName, const QXmlAttributes &attrs) {
39 if (name == "navPoint") {
40 contentId = attrs.value("id");
41 } else if (name == "content") {
42 contentUrl = attrs.value("src");
54 #endif // NCXHANDLER_H