Kandrashin Denis пре 13 година
родитељ
комит
debae83ac8
4 измењених фајлова са 86 додато и 82 уклоњено
  1. 45 41
      source/fb2read.cpp
  2. 15 15
      source/fb2read.h
  3. 19 19
      source/fb2save.cpp
  4. 7 7
      source/fb2save.h

+ 45 - 41
source/fb2read.cpp

@@ -96,12 +96,12 @@ Fb2ReadHandler::RootHandler::RootHandler(Fb2ReadWriter &writer, const QString &n
     m_writer.writeStartElement("body");
     m_writer.writeStartElement("body");
 }
 }
 
 
-Fb2XmlHandler::NodeHandler * Fb2ReadHandler::RootHandler::NewTag(const QString &name, const QXmlAttributes &attributes)
+Fb2XmlHandler::NodeHandler * Fb2ReadHandler::RootHandler::NewTag(const QString &name, const QXmlAttributes &atts)
 {
 {
     switch (toKeyword(name)) {
     switch (toKeyword(name)) {
-        case Body   : return new TextHandler(m_writer, name, attributes, "div", name);
-        case Descr  : return new DescrHandler(m_writer, name);
-        case Binary : return new BinaryHandler(m_writer, name, attributes);
+        case Body   : return new TextHandler(m_writer, name, atts, "div", name);
+        case Descr  : return new DescrHandler(m_writer, name, atts);
+        case Binary : return new BinaryHandler(m_writer, name, atts);
         default: return NULL;
         default: return NULL;
     }
     }
 }
 }
@@ -121,22 +121,26 @@ FB2_BEGIN_KEYHASH(Fb2ReadHandler::HeadHandler)
     FB2_KEY( Image , "image" );
     FB2_KEY( Image , "image" );
 FB2_END_KEYHASH
 FB2_END_KEYHASH
 
 
-Fb2ReadHandler::HeadHandler::HeadHandler(Fb2ReadWriter &writer, const QString &name, bool hide)
+Fb2ReadHandler::HeadHandler::HeadHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &atts, bool hide)
     : BaseHandler(writer, name)
     : BaseHandler(writer, name)
     , m_empty(true)
     , m_empty(true)
 {
 {
     m_writer.writeStartElement("div");
     m_writer.writeStartElement("div");
     m_writer.writeAttribute("class", name);
     m_writer.writeAttribute("class", name);
     if (hide) m_writer.writeAttribute("style", "display:none");
     if (hide) m_writer.writeAttribute("style", "display:none");
+    int count = atts.count();
+    for (int i = 0; i < count; i++) {
+        m_writer.writeAttribute("fb2", atts.qName(i), atts.value(i));
+    }
 }
 }
 
 
-Fb2XmlHandler::NodeHandler * Fb2ReadHandler::HeadHandler::NewTag(const QString &name, const QXmlAttributes &attributes)
+Fb2XmlHandler::NodeHandler * Fb2ReadHandler::HeadHandler::NewTag(const QString &name, const QXmlAttributes &atts)
 {
 {
-    Q_UNUSED(attributes);
+    Q_UNUSED(atts);
     m_empty = false;
     m_empty = false;
     switch (toKeyword(name)) {
     switch (toKeyword(name)) {
-        case Image: return new ImageHandler(m_writer, name, attributes);
-        default: return new HeadHandler(m_writer, name);
+        case Image: return new ImageHandler(m_writer, name, atts);
+        default: return new HeadHandler(m_writer, name, atts);
     }
     }
 }
 }
 
 
@@ -164,22 +168,22 @@ FB2_BEGIN_KEYHASH(Fb2ReadHandler::DescrHandler)
     FB2_KEY( Custom   , "custom-info"   );
     FB2_KEY( Custom   , "custom-info"   );
 FB2_END_KEYHASH
 FB2_END_KEYHASH
 
 
-Fb2ReadHandler::DescrHandler::DescrHandler(Fb2ReadWriter &writer, const QString &name)
-    : HeadHandler(writer, name)
+Fb2ReadHandler::DescrHandler::DescrHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &atts)
+    : HeadHandler(writer, name, atts)
 {
 {
     m_writer.writeAttribute("id", m_writer.newId());
     m_writer.writeAttribute("id", m_writer.newId());
 }
 }
 
 
-Fb2XmlHandler::NodeHandler * Fb2ReadHandler::DescrHandler::NewTag(const QString &name, const QXmlAttributes &attributes)
+Fb2XmlHandler::NodeHandler * Fb2ReadHandler::DescrHandler::NewTag(const QString &name, const QXmlAttributes &atts)
 {
 {
-    Q_UNUSED(attributes);
+    Q_UNUSED(atts);
     switch (toKeyword(name)) {
     switch (toKeyword(name)) {
         case Title :
         case Title :
-            return new TitleHandler(m_writer, name);
+            return new TitleHandler(m_writer, name, atts);
         case Document :
         case Document :
         case Publish :
         case Publish :
         case Custom :
         case Custom :
-            return new HeadHandler(m_writer, name, true);
+            return new HeadHandler(m_writer, name, atts, true);
         default:
         default:
             return NULL;
             return NULL;
     }
     }
@@ -189,16 +193,16 @@ Fb2XmlHandler::NodeHandler * Fb2ReadHandler::DescrHandler::NewTag(const QString
 //  Fb2ReadHandler::TitleHandler
 //  Fb2ReadHandler::TitleHandler
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
 
 
-Fb2ReadHandler::TitleHandler::TitleHandler(Fb2ReadWriter &writer, const QString &name)
-    : HeadHandler(writer, name)
+Fb2ReadHandler::TitleHandler::TitleHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &atts)
+    : HeadHandler(writer, name, atts)
 {
 {
     m_writer.writeAttribute("id", m_writer.newId());
     m_writer.writeAttribute("id", m_writer.newId());
 }
 }
 
 
-Fb2XmlHandler::NodeHandler * Fb2ReadHandler::TitleHandler::NewTag(const QString &name, const QXmlAttributes &attributes)
+Fb2XmlHandler::NodeHandler * Fb2ReadHandler::TitleHandler::NewTag(const QString &name, const QXmlAttributes &atts)
 {
 {
-    if (name == "annotation") return new TextHandler(m_writer, name, attributes, "div", name);
-    return new HeadHandler(m_writer, name, true);
+    if (name == "annotation") return new TextHandler(m_writer, name, atts, "div", name);
+    return new HeadHandler(m_writer, name, atts, true);
 }
 }
 
 
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
@@ -234,29 +238,29 @@ FB2_BEGIN_KEYHASH(Fb2ReadHandler::TextHandler)
     FB2_KEY( Code    , "code"          );
     FB2_KEY( Code    , "code"          );
 FB2_END_KEYHASH
 FB2_END_KEYHASH
 
 
-Fb2ReadHandler::TextHandler::TextHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &attributes, const QString &tag, const QString &style)
+Fb2ReadHandler::TextHandler::TextHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &atts, const QString &tag, const QString &style)
     : BaseHandler(writer, name)
     : BaseHandler(writer, name)
     , m_parent(NULL)
     , m_parent(NULL)
     , m_tag(tag)
     , m_tag(tag)
     , m_style(style)
     , m_style(style)
 {
 {
-    Init(attributes);
+    Init(atts);
 }
 }
 
 
-Fb2ReadHandler::TextHandler::TextHandler(TextHandler *parent, const QString &name, const QXmlAttributes &attributes, const QString &tag, const QString &style)
+Fb2ReadHandler::TextHandler::TextHandler(TextHandler *parent, const QString &name, const QXmlAttributes &atts, const QString &tag, const QString &style)
     : BaseHandler(parent->m_writer, name)
     : BaseHandler(parent->m_writer, name)
     , m_parent(parent)
     , m_parent(parent)
     , m_tag(tag)
     , m_tag(tag)
     , m_style(style)
     , m_style(style)
 {
 {
-    Init(attributes);
+    Init(atts);
 }
 }
 
 
-void Fb2ReadHandler::TextHandler::Init(const QXmlAttributes &attributes)
+void Fb2ReadHandler::TextHandler::Init(const QXmlAttributes &atts)
 {
 {
     if (m_tag.isEmpty()) return;
     if (m_tag.isEmpty()) return;
     m_writer.writeStartElement(m_tag);
     m_writer.writeStartElement(m_tag);
-    QString id = Value(attributes, "id");
+    QString id = Value(atts, "id");
     if (!id.isEmpty()) {
     if (!id.isEmpty()) {
         if (m_style == "section" && isNotes()) m_style = "note";
         if (m_style == "section" && isNotes()) m_style = "note";
         m_writer.writeAttribute("id", id);
         m_writer.writeAttribute("id", id);
@@ -264,17 +268,17 @@ void Fb2ReadHandler::TextHandler::Init(const QXmlAttributes &attributes)
         m_writer.writeAttribute("id", m_writer.newId());
         m_writer.writeAttribute("id", m_writer.newId());
     }
     }
     if (!m_style.isEmpty()) {
     if (!m_style.isEmpty()) {
-        if (m_style == "body" && Value(attributes, "name").toLower() == "notes") m_style = "notes";
+        if (m_style == "body" && Value(atts, "name").toLower() == "notes") m_style = "notes";
         m_writer.writeAttribute("class", m_style);
         m_writer.writeAttribute("class", m_style);
     }
     }
 }
 }
 
 
-Fb2XmlHandler::NodeHandler * Fb2ReadHandler::TextHandler::NewTag(const QString &name, const QXmlAttributes &attributes)
+Fb2XmlHandler::NodeHandler * Fb2ReadHandler::TextHandler::NewTag(const QString &name, const QXmlAttributes &atts)
 {
 {
     QString tag, style;
     QString tag, style;
     switch (toKeyword(name)) {
     switch (toKeyword(name)) {
-        case Anchor    : return new AnchorHandler(this, name, attributes);
-        case Image     : return new ImageHandler(m_writer, name, attributes);
+        case Anchor    : return new AnchorHandler(this, name, atts);
+        case Image     : return new ImageHandler(m_writer, name, atts);
         case Section   : tag = "div"; style = name; break;
         case Section   : tag = "div"; style = name; break;
         case Parag     : tag = "p";   break;
         case Parag     : tag = "p";   break;
         case Strong    : tag = "b";   break;
         case Strong    : tag = "b";   break;
@@ -284,7 +288,7 @@ Fb2XmlHandler::NodeHandler * Fb2ReadHandler::TextHandler::NewTag(const QString &
         case Sub       : tag = "sub"; break;
         case Sub       : tag = "sub"; break;
         case Sup       : tag = "sup"; break;
         case Sup       : tag = "sup"; break;
     }
     }
-    return new TextHandler(this, name, attributes, tag, style);
+    return new TextHandler(this, name, atts, tag, style);
 }
 }
 
 
 void Fb2ReadHandler::TextHandler::TxtTag(const QString &text)
 void Fb2ReadHandler::TextHandler::TxtTag(const QString &text)
@@ -310,10 +314,10 @@ bool Fb2ReadHandler::TextHandler::isNotes() const
 //  Fb2ReadHandler::AnchorHandler
 //  Fb2ReadHandler::AnchorHandler
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
 
 
-Fb2ReadHandler::AnchorHandler::AnchorHandler(TextHandler *parent, const QString &name, const QXmlAttributes &attributes)
-    : TextHandler(parent, name, attributes, "a")
+Fb2ReadHandler::AnchorHandler::AnchorHandler(TextHandler *parent, const QString &name, const QXmlAttributes &atts)
+    : TextHandler(parent, name, atts, "a")
 {
 {
-    QString href = Value(attributes, "href");
+    QString href = Value(atts, "href");
     m_writer.writeAttribute("href", href);
     m_writer.writeAttribute("href", href);
 }
 }
 
 
@@ -321,10 +325,10 @@ Fb2ReadHandler::AnchorHandler::AnchorHandler(TextHandler *parent, const QString
 //  Fb2ReadHandler::ImageHandler
 //  Fb2ReadHandler::ImageHandler
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
 
 
-Fb2ReadHandler::ImageHandler::ImageHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &attributes)
-    : TextHandler(writer, name, attributes, "img")
+Fb2ReadHandler::ImageHandler::ImageHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &atts)
+    : TextHandler(writer, name, atts, "img")
 {
 {
-    QString href = Value(attributes, "href");
+    QString href = Value(atts, "href");
     while (href.left(1) == "#") href.remove(0, 1);
     while (href.left(1) == "#") href.remove(0, 1);
     QString path = m_writer.getFile(href);
     QString path = m_writer.getFile(href);
     m_writer.writeAttribute("src", path);
     m_writer.writeAttribute("src", path);
@@ -335,9 +339,9 @@ Fb2ReadHandler::ImageHandler::ImageHandler(Fb2ReadWriter &writer, const QString
 //  Fb2ReadHandler::BinaryHandler
 //  Fb2ReadHandler::BinaryHandler
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
 
 
-Fb2ReadHandler::BinaryHandler::BinaryHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &attributes)
+Fb2ReadHandler::BinaryHandler::BinaryHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &atts)
     : BaseHandler(writer, name)
     : BaseHandler(writer, name)
-    , m_file(Value(attributes, "id"))
+    , m_file(Value(atts, "id"))
 {
 {
 }
 }
 
 
@@ -364,9 +368,9 @@ Fb2ReadHandler::Fb2ReadHandler(Fb2ReadThread &thread)
 {
 {
 }
 }
 
 
-Fb2XmlHandler::NodeHandler * Fb2ReadHandler::CreateRoot(const QString &name, const QXmlAttributes &attributes)
+Fb2XmlHandler::NodeHandler * Fb2ReadHandler::CreateRoot(const QString &name, const QXmlAttributes &atts)
 {
 {
-    Q_UNUSED(attributes);
+    Q_UNUSED(atts);
     if (name == "fictionbook") return new RootHandler(m_writer, name);
     if (name == "fictionbook") return new RootHandler(m_writer, name);
     m_error = QObject::tr("The file is not an FB2 file.");
     m_error = QObject::tr("The file is not an FB2 file.");
     return 0;
     return 0;

+ 15 - 15
source/fb2read.h

@@ -77,7 +77,7 @@ private:
     public:
     public:
         explicit RootHandler(Fb2ReadWriter &writer, const QString &name);
         explicit RootHandler(Fb2ReadWriter &writer, const QString &name);
     protected:
     protected:
-        virtual NodeHandler * NewTag(const QString & name, const QXmlAttributes &attributes);
+        virtual NodeHandler * NewTag(const QString & name, const QXmlAttributes &atts);
         virtual void EndTag(const QString &name);
         virtual void EndTag(const QString &name);
     };
     };
 
 
@@ -87,9 +87,9 @@ private:
             Image,
             Image,
         FB2_END_KEYLIST
         FB2_END_KEYLIST
     public:
     public:
-        explicit HeadHandler(Fb2ReadWriter &writer, const QString &name, bool hide = false);
+        explicit HeadHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &atts, bool hide = false);
     protected:
     protected:
-        virtual NodeHandler * NewTag(const QString &name, const QXmlAttributes &attributes);
+        virtual NodeHandler * NewTag(const QString &name, const QXmlAttributes &atts);
         virtual void TxtTag(const QString &text);
         virtual void TxtTag(const QString &text);
         virtual void EndTag(const QString &name);
         virtual void EndTag(const QString &name);
     private:
     private:
@@ -105,17 +105,17 @@ private:
             Custom,
             Custom,
         FB2_END_KEYLIST
         FB2_END_KEYLIST
     public:
     public:
-        explicit DescrHandler(Fb2ReadWriter &writer, const QString &name);
+        explicit DescrHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &atts);
     protected:
     protected:
-        virtual NodeHandler * NewTag(const QString &name, const QXmlAttributes &attributes);
+        virtual NodeHandler * NewTag(const QString &name, const QXmlAttributes &atts);
     };
     };
 
 
     class TitleHandler : public HeadHandler
     class TitleHandler : public HeadHandler
     {
     {
     public:
     public:
-        explicit TitleHandler(Fb2ReadWriter &writer, const QString &name);
+        explicit TitleHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &atts);
     protected:
     protected:
-        virtual NodeHandler * NewTag(const QString &name, const QXmlAttributes &attributes);
+        virtual NodeHandler * NewTag(const QString &name, const QXmlAttributes &atts);
     };
     };
 
 
     class TextHandler : public BaseHandler
     class TextHandler : public BaseHandler
@@ -135,14 +135,14 @@ private:
             Code,
             Code,
        FB2_END_KEYLIST
        FB2_END_KEYLIST
     public:
     public:
-        explicit TextHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &attributes, const QString &tag, const QString &style = QString());
-        explicit TextHandler(TextHandler *parent, const QString &name, const QXmlAttributes &attributes, const QString &tag, const QString &style = QString());
+        explicit TextHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &atts, const QString &tag, const QString &style = QString());
+        explicit TextHandler(TextHandler *parent, const QString &name, const QXmlAttributes &atts, const QString &tag, const QString &style = QString());
     protected:
     protected:
-        virtual NodeHandler * NewTag(const QString &name, const QXmlAttributes &attributes);
+        virtual NodeHandler * NewTag(const QString &name, const QXmlAttributes &atts);
         virtual void TxtTag(const QString &text);
         virtual void TxtTag(const QString &text);
         virtual void EndTag(const QString &name);
         virtual void EndTag(const QString &name);
     protected:
     protected:
-        void Init(const QXmlAttributes &attributes);
+        void Init(const QXmlAttributes &atts);
         bool isNotes() const;
         bool isNotes() const;
     protected:
     protected:
         TextHandler *m_parent;
         TextHandler *m_parent;
@@ -153,19 +153,19 @@ private:
     class AnchorHandler : public TextHandler
     class AnchorHandler : public TextHandler
     {
     {
     public:
     public:
-        explicit AnchorHandler(TextHandler *parent, const QString &name, const QXmlAttributes &attributes);
+        explicit AnchorHandler(TextHandler *parent, const QString &name, const QXmlAttributes &atts);
     };
     };
 
 
     class ImageHandler : public TextHandler
     class ImageHandler : public TextHandler
     {
     {
     public:
     public:
-        explicit ImageHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &attributes);
+        explicit ImageHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &atts);
     };
     };
 
 
     class BinaryHandler : public BaseHandler
     class BinaryHandler : public BaseHandler
     {
     {
     public:
     public:
-        explicit BinaryHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &attributes);
+        explicit BinaryHandler(Fb2ReadWriter &writer, const QString &name, const QXmlAttributes &atts);
     protected:
     protected:
         virtual void TxtTag(const QString &text);
         virtual void TxtTag(const QString &text);
         virtual void EndTag(const QString &name);
         virtual void EndTag(const QString &name);
@@ -175,7 +175,7 @@ private:
     };
     };
 
 
 protected:
 protected:
-    virtual NodeHandler * CreateRoot(const QString &name, const QXmlAttributes &attributes);
+    virtual NodeHandler * CreateRoot(const QString &name, const QXmlAttributes &atts);
 
 
 private:
 private:
     Fb2ReadWriter m_writer;
     Fb2ReadWriter m_writer;

+ 19 - 19
source/fb2save.cpp

@@ -127,30 +127,30 @@ FB2_BEGIN_KEYHASH(Fb2SaveHandler::BodyHandler)
     FB2_KEY( Code    , "tt"            );
     FB2_KEY( Code    , "tt"            );
 FB2_END_KEYHASH
 FB2_END_KEYHASH
 
 
-Fb2SaveHandler::BodyHandler::BodyHandler(Fb2SaveWriter &writer, const QString &name, const QXmlAttributes &attributes, const QString &tag, const QString &style)
+Fb2SaveHandler::BodyHandler::BodyHandler(Fb2SaveWriter &writer, const QString &name, const QXmlAttributes &atts, const QString &tag, const QString &style)
     : NodeHandler(name)
     : NodeHandler(name)
     , m_writer(writer)
     , m_writer(writer)
     , m_tag(tag)
     , m_tag(tag)
     , m_style(style)
     , m_style(style)
 {
 {
-    Init(attributes);
+    Init(atts);
 }
 }
 
 
-Fb2SaveHandler::BodyHandler::BodyHandler(BodyHandler *parent, const QString &name, const QXmlAttributes &attributes, const QString &tag, const QString &style)
+Fb2SaveHandler::BodyHandler::BodyHandler(BodyHandler *parent, const QString &name, const QXmlAttributes &atts, const QString &tag, const QString &style)
     : NodeHandler(name)
     : NodeHandler(name)
     , m_writer(parent->m_writer)
     , m_writer(parent->m_writer)
     , m_tag(tag)
     , m_tag(tag)
     , m_style(style)
     , m_style(style)
 {
 {
-    Init(attributes);
+    Init(atts);
 }
 }
 
 
-void Fb2SaveHandler::BodyHandler::Init(const QXmlAttributes &attributes)
+void Fb2SaveHandler::BodyHandler::Init(const QXmlAttributes &atts)
 {
 {
     if (m_tag.isEmpty()) return;
     if (m_tag.isEmpty()) return;
     m_writer.writeStartElement(m_tag);
     m_writer.writeStartElement(m_tag);
 /*
 /*
-    QString id = Value(attributes, "id");
+    QString id = Value(atts, "id");
     if (!id.isEmpty()) {
     if (!id.isEmpty()) {
         if (m_style == "section" && isNotes()) m_style = "note";
         if (m_style == "section" && isNotes()) m_style = "note";
         m_writer.writeAttribute("id", id);
         m_writer.writeAttribute("id", id);
@@ -158,18 +158,18 @@ void Fb2SaveHandler::BodyHandler::Init(const QXmlAttributes &attributes)
         m_writer.writeAttribute("id", m_writer.newId());
         m_writer.writeAttribute("id", m_writer.newId());
     }
     }
     if (!m_style.isEmpty()) {
     if (!m_style.isEmpty()) {
-        if (m_style == "body" && Value(attributes, "name").toLower() == "notes") m_style = "notes";
+        if (m_style == "body" && Value(atts, "name").toLower() == "notes") m_style = "notes";
         m_writer.writeAttribute("class", m_style);
         m_writer.writeAttribute("class", m_style);
     }
     }
 */
 */
 }
 }
 
 
-Fb2XmlHandler::NodeHandler * Fb2SaveHandler::BodyHandler::NewTag(const QString &name, const QXmlAttributes &attributes)
+Fb2XmlHandler::NodeHandler * Fb2SaveHandler::BodyHandler::NewTag(const QString &name, const QXmlAttributes &atts)
 {
 {
     QString tag, style;
     QString tag, style;
     switch (toKeyword(name)) {
     switch (toKeyword(name)) {
-        case Anchor    : return new AnchorHandler(this, name, attributes);
-        case Image     : return new ImageHandler(this, name, attributes);
+        case Anchor    : return new AnchorHandler(this, name, atts);
+        case Image     : return new ImageHandler(this, name, atts);
         case Section   : tag = "div"; style = name; break;
         case Section   : tag = "div"; style = name; break;
         case Parag     : tag = "p";   break;
         case Parag     : tag = "p";   break;
 
 
@@ -180,7 +180,7 @@ Fb2XmlHandler::NodeHandler * Fb2SaveHandler::BodyHandler::NewTag(const QString &
         case Sub       : tag = "sub"           ; break;
         case Sub       : tag = "sub"           ; break;
         case Sup       : tag = "sup"           ; break;
         case Sup       : tag = "sup"           ; break;
     }
     }
-    return new BodyHandler(this, name, attributes, tag, style);
+    return new BodyHandler(this, name, atts, tag, style);
 }
 }
 
 
 void Fb2SaveHandler::BodyHandler::TxtTag(const QString &text)
 void Fb2SaveHandler::BodyHandler::TxtTag(const QString &text)
@@ -200,10 +200,10 @@ void Fb2SaveHandler::BodyHandler::EndTag(const QString &name)
 //  Fb2SaveHandler::AnchorHandler
 //  Fb2SaveHandler::AnchorHandler
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
 
 
-Fb2SaveHandler::AnchorHandler::AnchorHandler(BodyHandler *parent, const QString &name, const QXmlAttributes &attributes)
-    : BodyHandler(parent, name, attributes, "a")
+Fb2SaveHandler::AnchorHandler::AnchorHandler(BodyHandler *parent, const QString &name, const QXmlAttributes &atts)
+    : BodyHandler(parent, name, atts, "a")
 {
 {
-    QString href = Value(attributes, "href");
+    QString href = Value(atts, "href");
     m_writer.writeAttribute("href", href);
     m_writer.writeAttribute("href", href);
 }
 }
 
 
@@ -211,10 +211,10 @@ Fb2SaveHandler::AnchorHandler::AnchorHandler(BodyHandler *parent, const QString
 //  Fb2SaveHandler::ImageHandler
 //  Fb2SaveHandler::ImageHandler
 //---------------------------------------------------------------------------
 //---------------------------------------------------------------------------
 
 
-Fb2SaveHandler::ImageHandler::ImageHandler(BodyHandler *parent, const QString &name, const QXmlAttributes &attributes)
-    : BodyHandler(parent, name, attributes, "img")
+Fb2SaveHandler::ImageHandler::ImageHandler(BodyHandler *parent, const QString &name, const QXmlAttributes &atts)
+    : BodyHandler(parent, name, atts, "img")
 {
 {
-    QString href = Value(attributes, "href");
+    QString href = Value(atts, "href");
     while (href.left(1) == "#") href.remove(0, 1);
     while (href.left(1) == "#") href.remove(0, 1);
     QString path = m_writer.getFile(href);
     QString path = m_writer.getFile(href);
     m_writer.writeAttribute("src", path);
     m_writer.writeAttribute("src", path);
@@ -231,9 +231,9 @@ Fb2SaveHandler::Fb2SaveHandler(Fb2SaveThread &thread)
 {
 {
 }
 }
 
 
-Fb2XmlHandler::NodeHandler * Fb2SaveHandler::CreateRoot(const QString &name, const QXmlAttributes &attributes)
+Fb2XmlHandler::NodeHandler * Fb2SaveHandler::CreateRoot(const QString &name, const QXmlAttributes &atts)
 {
 {
-    if (name == "body") return new BodyHandler(m_writer, name, attributes, "fictionbook");
+    if (name == "body") return new BodyHandler(m_writer, name, atts, "fictionbook");
     m_error = QObject::tr("The tag <body> was not found.");
     m_error = QObject::tr("The tag <body> was not found.");
     return 0;
     return 0;
 }
 }

+ 7 - 7
source/fb2save.h

@@ -75,14 +75,14 @@ private:
             Code,
             Code,
        FB2_END_KEYLIST
        FB2_END_KEYLIST
     public:
     public:
-        explicit BodyHandler(Fb2SaveWriter &writer, const QString &name, const QXmlAttributes &attributes, const QString &tag, const QString &style = QString());
-        explicit BodyHandler(BodyHandler *parent, const QString &name, const QXmlAttributes &attributes, const QString &tag, const QString &style = QString());
+        explicit BodyHandler(Fb2SaveWriter &writer, const QString &name, const QXmlAttributes &atts, const QString &tag, const QString &style = QString());
+        explicit BodyHandler(BodyHandler *parent, const QString &name, const QXmlAttributes &atts, const QString &tag, const QString &style = QString());
     protected:
     protected:
-        virtual NodeHandler * NewTag(const QString &name, const QXmlAttributes &attributes);
+        virtual NodeHandler * NewTag(const QString &name, const QXmlAttributes &atts);
         virtual void TxtTag(const QString &text);
         virtual void TxtTag(const QString &text);
         virtual void EndTag(const QString &name);
         virtual void EndTag(const QString &name);
     protected:
     protected:
-        void Init(const QXmlAttributes &attributes);
+        void Init(const QXmlAttributes &atts);
     protected:
     protected:
         Fb2SaveWriter &m_writer;
         Fb2SaveWriter &m_writer;
         QString m_tag;
         QString m_tag;
@@ -92,17 +92,17 @@ private:
     class AnchorHandler : public BodyHandler
     class AnchorHandler : public BodyHandler
     {
     {
     public:
     public:
-        explicit AnchorHandler(BodyHandler *parent, const QString &name, const QXmlAttributes &attributes);
+        explicit AnchorHandler(BodyHandler *parent, const QString &name, const QXmlAttributes &atts);
     };
     };
 
 
     class ImageHandler : public BodyHandler
     class ImageHandler : public BodyHandler
     {
     {
     public:
     public:
-        explicit ImageHandler(BodyHandler *parent, const QString &name, const QXmlAttributes &attributes);
+        explicit ImageHandler(BodyHandler *parent, const QString &name, const QXmlAttributes &atts);
     };
     };
 
 
 protected:
 protected:
-    virtual NodeHandler * CreateRoot(const QString &name, const QXmlAttributes &attributes);
+    virtual NodeHandler * CreateRoot(const QString &name, const QXmlAttributes &atts);
 
 
 private:
 private:
     Fb2SaveWriter m_writer;
     Fb2SaveWriter m_writer;