[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [calligra/export-epub-moji] filters/words/epub: Break out generation of HTML head into its own funct
From:       Inge Wallin <inge () lysator ! liu ! se>
Date:       2012-07-31 22:22:11
Message-ID: 20120731222211.F2F35A6094 () git ! kde ! org
[Download RAW message or body]

Git commit 868f8db03a0e3eb4e5dd60958c0ae5d1b751f189 by Inge Wallin.
Committed on 31/07/2012 at 23:04.
Pushed by ingwa into branch 'export-epub-moji'.

Break out generation of HTML head into its own function

M  +2    -0    filters/words/epub/exportepub2.cpp
M  +46   -31   filters/words/epub/htmlconvert.cpp

http://commits.kde.org/calligra/868f8db03a0e3eb4e5dd60958c0ae5d1b751f189

diff --git a/filters/words/epub/exportepub2.cpp b/filters/words/epub/exportepub2.cpp
index 72da396..4342ddd 100644
--- a/filters/words/epub/exportepub2.cpp
+++ b/filters/words/epub/exportepub2.cpp
@@ -117,6 +117,8 @@ KoFilter::ConversionStatus ExportEpub2::convert(const QByteArray \
&from, const QB  bool moreFiles = false;
     QString prefix = "body";    // FIXME: Change to "chapter". Beware of hardcoded \
"body" here and there.  while (1) {
+        // first: conversion status. Must be OK, otherwise we break off the process
+        // second: true if there is more to convert
         QPair<KoFilter::ConversionStatus, bool> pair
             = convertContent(odfStore, m_meta, &epub, htmlContent
                              , m_pBreakStylesList, startNode, moreFiles);
diff --git a/filters/words/epub/htmlconvert.cpp b/filters/words/epub/htmlconvert.cpp
index e50e6f0..5b69ec7 100644
--- a/filters/words/epub/htmlconvert.cpp
+++ b/filters/words/epub/htmlconvert.cpp
@@ -38,6 +38,10 @@
 #include "libepub/EpubFile.h"
 
 
+static void createHtmlHead(KoXmlWriter *writer, QHash<QString, QString> &metaData);
+
+
+
 KoFilter::ConversionStatus stylesParse(KoStore *odfStore,
                                        QHash<QString, QList<QString> > &styles,
                                        QHash<QString, QString> &stylesInUse, \
QList<QString> &breakBeforeStylesList) @@ -373,38 +377,8 @@ \
QPair<KoFilter::ConversionStatus, bool> convertContent(KoStore *odfStore, QHash<  \
KoXmlWriter *bodyWriter = new KoXmlWriter(&outBuf);  
     bodyWriter->startElement("html");
-    bodyWriter->addAttribute("xmlns", "http://www.w3.org/1999/xhtml");
-    bodyWriter->startElement("head");
-
-    bodyWriter->startElement("title");
-    bodyWriter->addTextNode(metaData.value("title"));
-    bodyWriter->endElement(); // title
 
-    bodyWriter->startElement("meta");
-    bodyWriter->addAttribute("http-equiv", "Content-Type");
-    bodyWriter->addAttribute("content", "text/html; charset=utf-8");
-    bodyWriter->endElement(); // meta
-
-    // write meta tag
-    // m-meta <Tagname, Text>
-    // <meta content = "Text" name = "Tagname" />
-
-    metaData.remove("title");
-
-    foreach (QString name, metaData.keys() ) {
-        bodyWriter->startElement("meta");
-        bodyWriter->addAttribute("name", name);
-        bodyWriter->addAttribute("content", metaData.value(name));
-        bodyWriter->endElement(); // meta
-    }
-
-    bodyWriter->startElement("link");
-    bodyWriter->addAttribute("href", "styleSheet.css");
-    bodyWriter->addAttribute("type", "text/css");
-    bodyWriter->addAttribute("rel", "stylesheet");
-    bodyWriter->endElement(); // link
-
-    bodyWriter->endElement(); // head
+    createHtmlHead(bodyWriter, metaData);
 
     // ----------------------------------------------------------------
     // Parse body from content.xml
@@ -698,3 +672,44 @@ QPair<KoFilter::ConversionStatus, bool> convertContent(KoStore \
*odfStore, QHash<  odfStore->close();
     return qMakePair(KoFilter::OK, false);
 }
+
+
+void createHtmlHead(KoXmlWriter *writer, QHash<QString, QString> &metaData)
+{
+    writer->addAttribute("xmlns", "http://www.w3.org/1999/xhtml");
+    writer->startElement("head");
+
+    writer->startElement("title");
+    writer->addTextNode(metaData.value("title"));
+    writer->endElement(); // title
+
+    writer->startElement("meta");
+    writer->addAttribute("http-equiv", "Content-Type");
+    writer->addAttribute("content", "text/html; charset=utf-8");
+    writer->endElement(); // meta
+
+    // write meta tag
+    // m-meta <Tagname, Text>
+    // <meta content = "Text" name = "Tagname" />
+
+    //metaData.remove("title");
+
+    foreach (QString name, metaData.keys() ) {
+        // Title is handled above.
+        if (name == "title")
+            continue;
+
+        writer->startElement("meta");
+        writer->addAttribute("name", name);
+        writer->addAttribute("content", metaData.value(name));
+        writer->endElement(); // meta
+    }
+
+    writer->startElement("link");
+    writer->addAttribute("href", "styleSheet.css");
+    writer->addAttribute("type", "text/css");
+    writer->addAttribute("rel", "stylesheet");
+    writer->endElement(); // link
+
+    writer->endElement(); // head
+}


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic