|
Packit |
1c1d7e |
/******************************************************************************
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
* $Id$
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
* Copyright (C) 1997-2015 by Dimitri van Heesch.
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
* Permission to use, copy, modify, and distribute this software and its
|
|
Packit |
1c1d7e |
* documentation under the terms of the GNU General Public License is hereby
|
|
Packit |
1c1d7e |
* granted. No representations are made about the suitability of this software
|
|
Packit |
1c1d7e |
* for any purpose. It is provided "as is" without express or implied warranty.
|
|
Packit |
1c1d7e |
* See the GNU General Public License for more details.
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
*/
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
#include <qmap.h>
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
#include "dochandler.h"
|
|
Packit |
1c1d7e |
#include "debug.h"
|
|
Packit |
1c1d7e |
#include "linkedtexthandler.h"
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
class TypeNameMapper
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
public:
|
|
Packit |
1c1d7e |
TypeNameMapper()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_map.insert("see", SimpleSectHandler::See);
|
|
Packit |
1c1d7e |
m_map.insert("return", SimpleSectHandler::Return);
|
|
Packit |
1c1d7e |
m_map.insert("author", SimpleSectHandler::Author);
|
|
Packit |
1c1d7e |
m_map.insert("version", SimpleSectHandler::Version);
|
|
Packit |
1c1d7e |
m_map.insert("since", SimpleSectHandler::Since);
|
|
Packit |
1c1d7e |
m_map.insert("date", SimpleSectHandler::Date);
|
|
Packit |
1c1d7e |
m_map.insert("bug", SimpleSectHandler::Bug);
|
|
Packit |
1c1d7e |
m_map.insert("note", SimpleSectHandler::Note);
|
|
Packit |
1c1d7e |
m_map.insert("warning", SimpleSectHandler::Warning);
|
|
Packit |
1c1d7e |
m_map.insert("par", SimpleSectHandler::Par);
|
|
Packit |
1c1d7e |
m_map.insert("deprecated",SimpleSectHandler::Deprecated);
|
|
Packit |
1c1d7e |
m_map.insert("pre", SimpleSectHandler::Pre);
|
|
Packit |
1c1d7e |
m_map.insert("post", SimpleSectHandler::Post);
|
|
Packit |
1c1d7e |
m_map.insert("invariant", SimpleSectHandler::Invar);
|
|
Packit |
1c1d7e |
m_map.insert("remark", SimpleSectHandler::Remark);
|
|
Packit |
1c1d7e |
m_map.insert("attention", SimpleSectHandler::Attention);
|
|
Packit |
1c1d7e |
m_map.insert("todo", SimpleSectHandler::Todo);
|
|
Packit |
1c1d7e |
m_map.insert("test", SimpleSectHandler::Test);
|
|
Packit |
1c1d7e |
m_map.insert("rcs", SimpleSectHandler::RCS);
|
|
Packit |
1c1d7e |
m_map.insert("enumvalues",SimpleSectHandler::EnumValues);
|
|
Packit |
1c1d7e |
m_map.insert("examples", SimpleSectHandler::Examples);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
SimpleSectHandler::Types stringToType(const QString &typeStr)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return m_map[typeStr];
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
private:
|
|
Packit |
1c1d7e |
QMap<QString,SimpleSectHandler::Types> m_map;
|
|
Packit |
1c1d7e |
};
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
class HighlightMapper
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
public:
|
|
Packit |
1c1d7e |
HighlightMapper()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_map.insert("comment", HighlightHandler::Comment);
|
|
Packit |
1c1d7e |
m_map.insert("keyword", HighlightHandler::Keyword);
|
|
Packit |
1c1d7e |
m_map.insert("keywordtype", HighlightHandler::KeywordType);
|
|
Packit |
1c1d7e |
m_map.insert("keywordflow", HighlightHandler::KeywordFlow);
|
|
Packit |
1c1d7e |
m_map.insert("charliteral", HighlightHandler::CharLiteral);
|
|
Packit |
1c1d7e |
m_map.insert("stringliteral", HighlightHandler::StringLiteral);
|
|
Packit |
1c1d7e |
m_map.insert("preprocessor", HighlightHandler::Preprocessor);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
HighlightHandler::HighlightKind stringToKind(const QString &kindStr)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return m_map[kindStr];
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
private:
|
|
Packit |
1c1d7e |
QMap<QString,HighlightHandler::HighlightKind> m_map;
|
|
Packit |
1c1d7e |
};
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
static TypeNameMapper *s_typeMapper;
|
|
Packit |
1c1d7e |
static HighlightMapper *s_highlightMapper;
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void dochandler_init()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
s_typeMapper = new TypeNameMapper;
|
|
Packit |
1c1d7e |
s_highlightMapper = new HighlightMapper;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void dochandler_exit()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
delete s_typeMapper;
|
|
Packit |
1c1d7e |
delete s_highlightMapper;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// MarkupHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
MarkupHandler::MarkupHandler(QList<DocImpl> &children,QString &curString)
|
|
Packit |
1c1d7e |
: m_children(children), m_curString(curString),
|
|
Packit |
1c1d7e |
m_curMarkup(IDocMarkup::Normal), m_headingLevel(0)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addStartHandler("bold",this,&MarkupHandler::startBold);
|
|
Packit |
1c1d7e |
addEndHandler("bold",this,&MarkupHandler::endBold);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("emphasis",this,&MarkupHandler::startEmphasis);
|
|
Packit |
1c1d7e |
addEndHandler("emphasis",this,&MarkupHandler::endEmphasis);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("computeroutput",this,&MarkupHandler::startComputerOutput);
|
|
Packit |
1c1d7e |
addEndHandler("computeroutput",this,&MarkupHandler::endComputerOutput);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("center",this,&MarkupHandler::startCenter);
|
|
Packit |
1c1d7e |
addEndHandler("center",this,&MarkupHandler::endCenter);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("small",this,&MarkupHandler::startSmallFont);
|
|
Packit |
1c1d7e |
addEndHandler("small",this,&MarkupHandler::endSmallFont);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("subscript",this,&MarkupHandler::startSubscript);
|
|
Packit |
1c1d7e |
addEndHandler("subscript",this,&MarkupHandler::endSubscript);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("superscript",this,&MarkupHandler::startSuperscript);
|
|
Packit |
1c1d7e |
addEndHandler("superscript",this,&MarkupHandler::endSuperscript);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("preformatted",this,&MarkupHandler::startPreformatted);
|
|
Packit |
1c1d7e |
addEndHandler("preformatted",this,&MarkupHandler::endPreformatted);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("heading1",this,&MarkupHandler::startHeading1);
|
|
Packit |
1c1d7e |
addEndHandler("heading1",this,&MarkupHandler::endHeading1);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("heading2",this,&MarkupHandler::startHeading2);
|
|
Packit |
1c1d7e |
addEndHandler("heading2",this,&MarkupHandler::endHeading2);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("heading3",this,&MarkupHandler::startHeading3);
|
|
Packit |
1c1d7e |
addEndHandler("heading3",this,&MarkupHandler::endHeading3);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("heading4",this,&MarkupHandler::startHeading4);
|
|
Packit |
1c1d7e |
addEndHandler("heading4",this,&MarkupHandler::endHeading4);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("heading5",this,&MarkupHandler::startHeading5);
|
|
Packit |
1c1d7e |
addEndHandler("heading5",this,&MarkupHandler::endHeading5);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("heading6",this,&MarkupHandler::startHeading6);
|
|
Packit |
1c1d7e |
addEndHandler("heading6",this,&MarkupHandler::endHeading6);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
MarkupHandler::~MarkupHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::addTextNode()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
if (!m_curString.isEmpty())
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.append(new TextNode(m_curString,m_curMarkup,m_headingLevel));
|
|
Packit |
1c1d7e |
debug(2,"addTextNode() text=%s markup=%x\n",m_curString.data(),m_curMarkup);
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::startBold(const QXmlAttributes & /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Bold,TRUE));
|
|
Packit |
1c1d7e |
m_curMarkup |= IDocMarkup::Bold;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::endBold()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Bold,FALSE));
|
|
Packit |
1c1d7e |
m_curMarkup &= ~IDocMarkup::Bold;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::startEmphasis(const QXmlAttributes & /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Emphasis,TRUE));
|
|
Packit |
1c1d7e |
m_curMarkup |= IDocMarkup::Emphasis;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::endEmphasis()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Emphasis,FALSE));
|
|
Packit |
1c1d7e |
m_curMarkup &= ~IDocMarkup::Emphasis;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::startComputerOutput(const QXmlAttributes & /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::ComputerOutput,TRUE));
|
|
Packit |
1c1d7e |
m_curMarkup |= IDocMarkup::ComputerOutput;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::endComputerOutput()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::ComputerOutput,FALSE));
|
|
Packit |
1c1d7e |
m_curMarkup &= ~IDocMarkup::ComputerOutput;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::startCenter(const QXmlAttributes & /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Center,TRUE));
|
|
Packit |
1c1d7e |
m_curMarkup |= IDocMarkup::Center;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::endCenter()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Center,FALSE));
|
|
Packit |
1c1d7e |
m_curMarkup &= ~IDocMarkup::Center;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::startSmallFont(const QXmlAttributes & /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::SmallFont,TRUE));
|
|
Packit |
1c1d7e |
m_curMarkup |= IDocMarkup::SmallFont;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::endSmallFont()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::SmallFont,FALSE));
|
|
Packit |
1c1d7e |
m_curMarkup &= ~IDocMarkup::SmallFont;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::startSubscript(const QXmlAttributes & /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Subscript,TRUE));
|
|
Packit |
1c1d7e |
m_curMarkup |= IDocMarkup::Subscript;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::endSubscript()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Subscript,FALSE));
|
|
Packit |
1c1d7e |
m_curMarkup &= ~IDocMarkup::Subscript;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::startSuperscript(const QXmlAttributes & /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Superscript,TRUE));
|
|
Packit |
1c1d7e |
m_curMarkup |= IDocMarkup::Superscript;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::endSuperscript()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Superscript,FALSE));
|
|
Packit |
1c1d7e |
m_curMarkup &= ~IDocMarkup::Superscript;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::startPreformatted(const QXmlAttributes & /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Preformatted,TRUE));
|
|
Packit |
1c1d7e |
m_curMarkup |= IDocMarkup::Preformatted;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::endPreformatted()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Preformatted,FALSE));
|
|
Packit |
1c1d7e |
m_curMarkup &= ~IDocMarkup::Preformatted;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::startHeading1(const QXmlAttributes & /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Heading,TRUE,1));
|
|
Packit |
1c1d7e |
m_curMarkup |= IDocMarkup::Heading;
|
|
Packit |
1c1d7e |
m_headingLevel=1;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::endHeading1()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Heading,FALSE,1));
|
|
Packit |
1c1d7e |
m_curMarkup &= ~IDocMarkup::Heading;
|
|
Packit |
1c1d7e |
m_headingLevel=0;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::startHeading2(const QXmlAttributes & /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Heading,TRUE,2));
|
|
Packit |
1c1d7e |
m_curMarkup |= IDocMarkup::Heading;
|
|
Packit |
1c1d7e |
m_headingLevel=2;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::endHeading2()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Heading,FALSE,2));
|
|
Packit |
1c1d7e |
m_curMarkup &= ~IDocMarkup::Heading;
|
|
Packit |
1c1d7e |
m_headingLevel=0;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::startHeading3(const QXmlAttributes & /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Heading,TRUE,3));
|
|
Packit |
1c1d7e |
m_curMarkup |= IDocMarkup::Heading;
|
|
Packit |
1c1d7e |
m_headingLevel=3;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::endHeading3()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Heading,FALSE,3));
|
|
Packit |
1c1d7e |
m_curMarkup &= ~IDocMarkup::Heading;
|
|
Packit |
1c1d7e |
m_headingLevel=0;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::startHeading4(const QXmlAttributes & /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Heading,TRUE,4));
|
|
Packit |
1c1d7e |
m_curMarkup |= IDocMarkup::Heading;
|
|
Packit |
1c1d7e |
m_headingLevel=4;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::endHeading4()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Heading,FALSE,4));
|
|
Packit |
1c1d7e |
m_curMarkup &= ~IDocMarkup::Heading;
|
|
Packit |
1c1d7e |
m_headingLevel=0;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::startHeading5(const QXmlAttributes & /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Heading,TRUE,5));
|
|
Packit |
1c1d7e |
m_curMarkup |= IDocMarkup::Heading;
|
|
Packit |
1c1d7e |
m_headingLevel=5;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::endHeading5()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Heading,FALSE,5));
|
|
Packit |
1c1d7e |
m_curMarkup &= ~IDocMarkup::Heading;
|
|
Packit |
1c1d7e |
m_headingLevel=0;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::startHeading6(const QXmlAttributes & /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Heading,TRUE,6));
|
|
Packit |
1c1d7e |
m_curMarkup |= IDocMarkup::Heading;
|
|
Packit |
1c1d7e |
m_headingLevel=6;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void MarkupHandler::endHeading6()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_children.append(new MarkupModifierNode(IDocMarkup::Heading,FALSE,6));
|
|
Packit |
1c1d7e |
m_curMarkup &= ~IDocMarkup::Heading;
|
|
Packit |
1c1d7e |
m_headingLevel=0;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// ListItemHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ListItemHandler::ListItemHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addEndHandler("listitem",this,&ListItemHandler::endListItem);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("para",this,&ListItemHandler::startParagraph);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ListItemHandler::~ListItemHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ListItemHandler::startListItem(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"start list item handler\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ListItemHandler::endListItem()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
debug(2,"end list item handler\n");
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ListItemHandler::startParagraph(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
ParagraphHandler *parHandler = new ParagraphHandler(this);
|
|
Packit |
1c1d7e |
parHandler->startParagraph(attrib);
|
|
Packit |
1c1d7e |
m_children.append(parHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *ListItemHandler::contents() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new ListItemIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// OrderedListHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
OrderedListHandler::OrderedListHandler(IBaseHandler *parent) : m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
addEndHandler("orderedlist",this,&OrderedListHandler::endOrderedList);
|
|
Packit |
1c1d7e |
addStartHandler("listitem",this,&OrderedListHandler::startOrderedListItem);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
OrderedListHandler::~OrderedListHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void OrderedListHandler::startOrderedList(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void OrderedListHandler::endOrderedList()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void OrderedListHandler::startOrderedListItem(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
ListItemHandler *liHandler = new ListItemHandler(this);
|
|
Packit |
1c1d7e |
liHandler->startListItem(attrib);
|
|
Packit |
1c1d7e |
m_children.append(liHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *OrderedListHandler::elements() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new OrderedListIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// ItemizedListHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ItemizedListHandler::ItemizedListHandler(IBaseHandler *parent) : m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
addEndHandler("itemizedlist",this,&ItemizedListHandler::endItemizedList);
|
|
Packit |
1c1d7e |
addStartHandler("listitem",this,&ItemizedListHandler::startItemizedListItem);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ItemizedListHandler::~ItemizedListHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ItemizedListHandler::startItemizedList(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ItemizedListHandler::endItemizedList()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ItemizedListHandler::startItemizedListItem(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
ListItemHandler *liHandler = new ListItemHandler(this);
|
|
Packit |
1c1d7e |
liHandler->startListItem(attrib);
|
|
Packit |
1c1d7e |
m_children.append(liHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *ItemizedListHandler::elements() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new ItemizedListIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// TocListHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
TocListHandler::TocListHandler(IBaseHandler *parent) : m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
addEndHandler("toclist",this,&TocListHandler::endTocList);
|
|
Packit |
1c1d7e |
addStartHandler("tocitem",this,&TocListHandler::startTocItem);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
TocListHandler::~TocListHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TocListHandler::startTocList(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TocListHandler::endTocList()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TocListHandler::startTocItem(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
TocItemHandler *tiHandler = new TocItemHandler(this);
|
|
Packit |
1c1d7e |
tiHandler->startTocItem(attrib);
|
|
Packit |
1c1d7e |
m_children.append(tiHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *TocListHandler::elements() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new TocListIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// TocItemHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
TocItemHandler::TocItemHandler(IBaseHandler *parent) : m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("tocitem",this,&TocItemHandler::endTocItem);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
TocItemHandler::~TocItemHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TocItemHandler::startTocItem(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
m_id = attrib.value("id");
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TocItemHandler::endTocItem()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_title = m_curString;
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// ParameterHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ParameterHandler::ParameterHandler(IBaseHandler *parent) :
|
|
Packit |
1c1d7e |
m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("parametername",this,&ParameterHandler::endParameterName);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ParameterHandler::~ParameterHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParameterHandler::startParameterName(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParameterHandler::endParameterName()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_name = m_curString;
|
|
Packit |
1c1d7e |
debug(2,"parameter %s\n",m_name.data());
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// ParameterListHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ParameterItemHandler::ParameterItemHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("parameteritem",this,&ParameterItemHandler::endParameterItem);
|
|
Packit |
1c1d7e |
addStartHandler("parameternamelist");
|
|
Packit |
1c1d7e |
addEndHandler("parameternamelist");
|
|
Packit |
1c1d7e |
addStartHandler("parametername",this,&ParameterItemHandler::startParameterName);
|
|
Packit |
1c1d7e |
addStartHandler("parameterdescription");
|
|
Packit |
1c1d7e |
addEndHandler("parameterdescription");
|
|
Packit |
1c1d7e |
addStartHandler("para",this,&ParameterItemHandler::startParagraph);
|
|
Packit |
1c1d7e |
m_parameters.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
m_description = 0;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ParameterItemHandler::~ParameterItemHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
delete m_description;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParameterItemHandler::startParameterItem(const QXmlAttributes&)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParameterItemHandler::endParameterItem()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParameterItemHandler::startParameterName(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
ParameterHandler *param = new ParameterHandler(this);
|
|
Packit |
1c1d7e |
m_parameters.append(param);
|
|
Packit |
1c1d7e |
param->startParameterName(attrib);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParameterItemHandler::startParagraph(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_description = new ParagraphHandler(this);
|
|
Packit |
1c1d7e |
m_description->startParagraph(attrib);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *ParameterItemHandler::paramNames() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new ParameterItemIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// ParameterListHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ParameterListHandler::ParameterListHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("parameterlist",this,&ParameterListHandler::endParameterList);
|
|
Packit |
1c1d7e |
addStartHandler("parameteritem",this,&ParameterListHandler::startParameterItem);
|
|
Packit |
1c1d7e |
m_paramItems.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ParameterListHandler::~ParameterListHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParameterListHandler::startParameterList(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
QString kind = attrib.value("kind");
|
|
Packit |
1c1d7e |
if (kind=="retval") m_type=RetVal;
|
|
Packit |
1c1d7e |
else if (kind=="exception") m_type=Exception;
|
|
Packit |
1c1d7e |
else if (kind=="param") m_type=Param;
|
|
Packit |
1c1d7e |
else
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
debug(1,"Error: invalid parameterlist type: %s\n",kind.data());
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
debug(2,"parameterlist kind=%s\n",kind.data());
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParameterListHandler::endParameterList()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParameterListHandler::startParameterItem(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
ParameterItemHandler *paramItem = new ParameterItemHandler(this);
|
|
Packit |
1c1d7e |
m_paramItems.append(paramItem);
|
|
Packit |
1c1d7e |
paramItem->startParameterItem(attrib);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *ParameterListHandler::params() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new ParameterListIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// LinkHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
LinkHandler::LinkHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("link",this,&LinkHandler::endLink);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
LinkHandler::~LinkHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void LinkHandler::startLink(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"Start link\n");
|
|
Packit |
1c1d7e |
m_ref = attrib.value("linkend");
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void LinkHandler::endLink()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_text = m_curString;
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
debug(2,"End link\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// EMailHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
EMailHandler::EMailHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("email",this,&EMailHandler::endEMail);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
EMailHandler::~EMailHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void EMailHandler::startEMail(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"Start email\n");
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void EMailHandler::endEMail()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_address = m_curString;
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
debug(2,"End email\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// ULinkHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ULinkHandler::ULinkHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("ulink",this,&ULinkHandler::endULink);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ULinkHandler::~ULinkHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ULinkHandler::startULink(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"Start ulink\n");
|
|
Packit |
1c1d7e |
m_url = attrib.value("url");
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ULinkHandler::endULink()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_text = m_curString;
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
debug(2,"End ulink\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// LineBreakHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
LineBreakHandler::LineBreakHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("linebreak",this,&LineBreakHandler::endLineBreak);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
LineBreakHandler::~LineBreakHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void LineBreakHandler::startLineBreak(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"Start linebreak\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void LineBreakHandler::endLineBreak()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
debug(2,"End linebreak\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// HRulerHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
HRulerHandler::HRulerHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("hruler",this,&HRulerHandler::endHRuler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
HRulerHandler::~HRulerHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void HRulerHandler::startHRuler(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"Start hruler\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void HRulerHandler::endHRuler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
debug(2,"End hruler\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// RefHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
RefHandler::RefHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("ref",this,&RefHandler::endRef);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
RefHandler::~RefHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void RefHandler::startRef(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
m_refId = attrib.value("refid");
|
|
Packit |
1c1d7e |
m_extId = attrib.value("external");
|
|
Packit |
1c1d7e |
ASSERT(attrib.value("kindref")=="compound" ||
|
|
Packit |
1c1d7e |
attrib.value("kindref")=="member");
|
|
Packit |
1c1d7e |
m_targetKind = attrib.value("kindref")=="compound" ? Compound : Member;
|
|
Packit |
1c1d7e |
debug(2,"Start ref refId=%s\n",m_refId.data());
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void RefHandler::endRef()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_linkText = m_curString;
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
debug(2,"End ref: text=`%s'\n",m_linkText.data());
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// TitleHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
TitleHandler::TitleHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
m_markupHandler = new MarkupHandler(m_children,m_curString);
|
|
Packit |
1c1d7e |
setFallBackHandler(m_markupHandler);
|
|
Packit |
1c1d7e |
addStartHandler("ref",this,&TitleHandler::startRef);
|
|
Packit |
1c1d7e |
addEndHandler("title",this,&TitleHandler::endTitle);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
TitleHandler::~TitleHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
delete m_markupHandler;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TitleHandler::startTitle(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"Start title\n");
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TitleHandler::endTitle()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
debug(2,"End title\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TitleHandler::addTextNode()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
if (!m_curString.isEmpty())
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.append(
|
|
Packit |
1c1d7e |
new TextNode(
|
|
Packit |
1c1d7e |
m_curString,
|
|
Packit |
1c1d7e |
m_markupHandler->markup(),
|
|
Packit |
1c1d7e |
m_markupHandler->headingLevel()
|
|
Packit |
1c1d7e |
)
|
|
Packit |
1c1d7e |
);
|
|
Packit |
1c1d7e |
debug(2,"addTextNode() text=\"%s\" markup=%x headingLevel=%d\n",
|
|
Packit |
1c1d7e |
m_curString.data(),m_markupHandler->markup(),m_markupHandler->headingLevel());
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TitleHandler::startRef(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
RefHandler *ref = new RefHandler(this);
|
|
Packit |
1c1d7e |
ref->startRef(attrib);
|
|
Packit |
1c1d7e |
m_children.append(ref);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *TitleHandler::title() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new TitleIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// SimpleSectHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
SimpleSectHandler::SimpleSectHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent), m_paragraph(0), m_title(0)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addStartHandler("title",this,&SimpleSectHandler::startTitle);
|
|
Packit |
1c1d7e |
addStartHandler("para",this,&SimpleSectHandler::startParagraph);
|
|
Packit |
1c1d7e |
addEndHandler("simplesect",this,&SimpleSectHandler::endSimpleSect);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
SimpleSectHandler::~SimpleSectHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void SimpleSectHandler::startSimpleSect(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_typeString = attrib.value("kind");
|
|
Packit |
1c1d7e |
m_type = s_typeMapper->stringToType(m_typeString);
|
|
Packit |
1c1d7e |
debug(2,"start simple section %s\n",m_typeString.data());
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void SimpleSectHandler::endSimpleSect()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
debug(2,"end simple section\n");
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void SimpleSectHandler::startTitle(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
ASSERT(m_title==0);
|
|
Packit |
1c1d7e |
m_title = new TitleHandler(this);
|
|
Packit |
1c1d7e |
m_title->startTitle(attrib);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void SimpleSectHandler::startParagraph(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
ASSERT(m_paragraph==0);
|
|
Packit |
1c1d7e |
m_paragraph = new ParagraphHandler(this);
|
|
Packit |
1c1d7e |
m_paragraph->startParagraph(attrib);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// VariableListEntryHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
VariableListEntryHandler::VariableListEntryHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent), m_description(0), m_linkedTextHandler(0)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addStartHandler("term",this,&VariableListEntryHandler::startTerm);
|
|
Packit |
1c1d7e |
addEndHandler("term",this,&VariableListEntryHandler::endTerm);
|
|
Packit |
1c1d7e |
addStartHandler("para",this,&VariableListEntryHandler::startParagraph);
|
|
Packit |
1c1d7e |
addEndHandler("varlistentry",this,&VariableListEntryHandler::endVarListEntry);
|
|
Packit |
1c1d7e |
addEndHandler("listitem",this,&VariableListEntryHandler::endListItem);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
VariableListEntryHandler::~VariableListEntryHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
delete m_description;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void VariableListEntryHandler::startVarListEntry(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"start varlistentry\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void VariableListEntryHandler::endVarListEntry()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
debug(2,"end varlistentry\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void VariableListEntryHandler::startListItem(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"start listitem\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void VariableListEntryHandler::endListItem()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
debug(2,"end listitem\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void VariableListEntryHandler::startTerm(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
m_linkedTextHandler = new LinkedTextHandler(this,m_term);
|
|
Packit |
1c1d7e |
m_linkedTextHandler->start("term");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void VariableListEntryHandler::endTerm()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
delete m_linkedTextHandler;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void VariableListEntryHandler::startParagraph(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
ASSERT(m_description==0);
|
|
Packit |
1c1d7e |
m_description = new ParagraphHandler(this);
|
|
Packit |
1c1d7e |
m_description->startParagraph(attrib);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ILinkedTextIterator *VariableListEntryHandler::term() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new LinkedTextIterator(m_term);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// VariableListHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
VariableListHandler::VariableListHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_entries.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
addStartHandler("varlistentry",this,&VariableListHandler::startVarListEntry);
|
|
Packit |
1c1d7e |
addStartHandler("listitem",this,&VariableListHandler::startListItem);
|
|
Packit |
1c1d7e |
addEndHandler("variablelist",this,&VariableListHandler::endVariableList);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
VariableListHandler::~VariableListHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void VariableListHandler::startVariableList(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"start variablelist\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void VariableListHandler::endVariableList()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
debug(2,"end variablelist\n");
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void VariableListHandler::startVarListEntry(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
VariableListEntryHandler *vle = new VariableListEntryHandler(this);
|
|
Packit |
1c1d7e |
vle->startVarListEntry(attrib);
|
|
Packit |
1c1d7e |
m_curEntry = vle;
|
|
Packit |
1c1d7e |
m_entries.append(vle);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void VariableListHandler::startListItem(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
ASSERT(m_curEntry!=0);
|
|
Packit |
1c1d7e |
m_curEntry->startListItem(attrib);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *VariableListHandler::entries() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new VariableListIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// HighlightHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
HighlightHandler::HighlightHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
addEndHandler("highlight",this,&HighlightHandler::endHighlight);
|
|
Packit |
1c1d7e |
addStartHandler("ref",this,&HighlightHandler::startRef);
|
|
Packit |
1c1d7e |
addStartHandler("sp",this,&HighlightHandler::startSpace);
|
|
Packit |
1c1d7e |
m_hl = IDocHighlight::Invalid;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
HighlightHandler::~HighlightHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void HighlightHandler::startHighlight(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_hlString = attrib.value("class");
|
|
Packit |
1c1d7e |
m_hl = s_highlightMapper->stringToKind(m_hlString);
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"start highlight\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void HighlightHandler::endHighlight()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
debug(2,"end highlight class=`%s'\n",m_hlString.data());
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void HighlightHandler::startRef(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
RefHandler *rh = new RefHandler(this);
|
|
Packit |
1c1d7e |
m_children.append(rh);
|
|
Packit |
1c1d7e |
rh->startRef(attrib);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void HighlightHandler::startSpace(const QXmlAttributes&)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_curString=" ";
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void HighlightHandler::addTextNode()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
if (!m_curString.isEmpty())
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.append(new TextNode(m_curString,IDocMarkup::Normal,0));
|
|
Packit |
1c1d7e |
debug(2,"addTextNode() text=\"%s\"\n",
|
|
Packit |
1c1d7e |
m_curString.data());
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *HighlightHandler::codeElements() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new HighlightIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// CodeLineHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
CodeLineHandler::CodeLineHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
addEndHandler("codeline",this,&CodeLineHandler::endCodeLine);
|
|
Packit |
1c1d7e |
addEndHandler("linenumber",this,&CodeLineHandler::endLineNumber);
|
|
Packit |
1c1d7e |
addStartHandler("highlight",this,&CodeLineHandler::startHighlight);
|
|
Packit |
1c1d7e |
addStartHandler("ref",this,&CodeLineHandler::startRef);
|
|
Packit |
1c1d7e |
m_lineNumber = 0;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
CodeLineHandler::~CodeLineHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void CodeLineHandler::startCodeLine(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"start codeline\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void CodeLineHandler::endCodeLine()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
debug(2,"end codeline\n");
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void CodeLineHandler::startLineNumber(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"start linenumber\n");
|
|
Packit |
1c1d7e |
m_lineNumber = attrib.value("line").toInt();
|
|
Packit |
1c1d7e |
m_refId = attrib.value("refid");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void CodeLineHandler::endLineNumber()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void CodeLineHandler::startHighlight(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
HighlightHandler *hlh = new HighlightHandler(this);
|
|
Packit |
1c1d7e |
m_children.append(hlh);
|
|
Packit |
1c1d7e |
hlh->startHighlight(attrib);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void CodeLineHandler::startRef(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
RefHandler *rh = new RefHandler(this);
|
|
Packit |
1c1d7e |
m_children.append(rh);
|
|
Packit |
1c1d7e |
rh->startRef(attrib);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void CodeLineHandler::addTextNode()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
if (!m_curString.isEmpty())
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.append(new TextNode(m_curString,IDocMarkup::Normal,0));
|
|
Packit |
1c1d7e |
debug(2,"addTextNode() text=\"%s\"\n",
|
|
Packit |
1c1d7e |
m_curString.data());
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *CodeLineHandler::codeElements() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new CodeLineIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// ProgramListingHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ProgramListingHandler::ProgramListingHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
m_hasLineNumber=FALSE;
|
|
Packit |
1c1d7e |
addEndHandler("programlisting",this,&ProgramListingHandler::endProgramListing);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("linenumber",this,&ProgramListingHandler::startLineNumber);
|
|
Packit |
1c1d7e |
addStartHandler("codeline",this,&ProgramListingHandler::startCodeLine);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ProgramListingHandler::~ProgramListingHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ProgramListingHandler::startProgramListing(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"start programlisting\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ProgramListingHandler::endProgramListing()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
debug(2,"end programlisting\n");
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ProgramListingHandler::startLineNumber(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
CodeLineHandler *clh = new CodeLineHandler(this);
|
|
Packit |
1c1d7e |
m_children.append(clh);
|
|
Packit |
1c1d7e |
m_hasLineNumber=TRUE;
|
|
Packit |
1c1d7e |
clh->startLineNumber(attrib);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ProgramListingHandler::startCodeLine(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
CodeLineHandler *clh = 0;
|
|
Packit |
1c1d7e |
if (!m_hasLineNumber)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
clh = new CodeLineHandler(this);
|
|
Packit |
1c1d7e |
m_children.append(clh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
else
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
clh = m_children.getLast();
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
ASSERT(clh!=0);
|
|
Packit |
1c1d7e |
clh->startCodeLine(attrib);
|
|
Packit |
1c1d7e |
m_hasLineNumber=FALSE;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *ProgramListingHandler::codeLines() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new ProgramListingIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// FormulaHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
FormulaHandler::FormulaHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("formula",this,&FormulaHandler::endFormula);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
FormulaHandler::~FormulaHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void FormulaHandler::startFormula(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_id = attrib.value("id");
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void FormulaHandler::endFormula()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_text = m_curString;
|
|
Packit |
1c1d7e |
debug(2,"formula id=`%s' text=`%s'\n",m_id.data(),m_text.data());
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// AnchorHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
AnchorHandler::AnchorHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("anchor",this,&AnchorHandler::endAnchor);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
AnchorHandler::~AnchorHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void AnchorHandler::startAnchor(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_id = attrib.value("id");
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void AnchorHandler::endAnchor()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
debug(2,"anchor id=`%s'\n",m_id.data());
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// ImageHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ImageHandler::ImageHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("image",this,&ImageHandler::endImage);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ImageHandler::~ImageHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ImageHandler::startImage(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_name = attrib.value("name");
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ImageHandler::endImage()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_caption = m_curString;
|
|
Packit |
1c1d7e |
debug(2,"image name=`%s' caption=`%s'\n",m_name.data(),m_caption.data());
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// DotFileHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
DotFileHandler::DotFileHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("dotfile",this,&DotFileHandler::endDotFile);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
DotFileHandler::~DotFileHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DotFileHandler::startDotFile(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_name = attrib.value("name");
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DotFileHandler::endDotFile()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_caption = m_curString;
|
|
Packit |
1c1d7e |
debug(2,"image name=`%s' caption=`%s'\n",m_name.data(),m_caption.data());
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// IndexEntryHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IndexEntryHandler::IndexEntryHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("indexentry",this,&IndexEntryHandler::endIndexEntry);
|
|
Packit |
1c1d7e |
addStartHandler("primaryie",this,&IndexEntryHandler::startPrimaryIE);
|
|
Packit |
1c1d7e |
addEndHandler("primaryie",this,&IndexEntryHandler::endPrimaryIE);
|
|
Packit |
1c1d7e |
addStartHandler("secondaryie",this,&IndexEntryHandler::startSecondaryIE);
|
|
Packit |
1c1d7e |
addEndHandler("secondaryie",this,&IndexEntryHandler::endSecondaryIE);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IndexEntryHandler::~IndexEntryHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void IndexEntryHandler::startIndexEntry(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
debug(2,"start index entry\n");
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void IndexEntryHandler::endIndexEntry()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
debug(2,"index entry primary=`%s' secondary=`%s'\n",
|
|
Packit |
1c1d7e |
m_primary.data(),m_secondary.data());
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void IndexEntryHandler::startPrimaryIE(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void IndexEntryHandler::endPrimaryIE()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_primary = m_curString;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void IndexEntryHandler::startSecondaryIE(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void IndexEntryHandler::endSecondaryIE()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_secondary = m_curString;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// EntryHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
EntryHandler::EntryHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
addEndHandler("entry",this,&EntryHandler::endEntry);
|
|
Packit |
1c1d7e |
addStartHandler("para",this,&EntryHandler::startParagraph);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
EntryHandler::~EntryHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void EntryHandler::startEntry(const QXmlAttributes&)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void EntryHandler::endEntry()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void EntryHandler::startParagraph(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
ParagraphHandler *ph = new ParagraphHandler(this);
|
|
Packit |
1c1d7e |
ph->startParagraph(attrib);
|
|
Packit |
1c1d7e |
m_children.append(ph);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *EntryHandler::contents() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new EntryIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// RowHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
RowHandler::RowHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
addEndHandler("row",this,&RowHandler::endRow);
|
|
Packit |
1c1d7e |
addStartHandler("entry",this,&RowHandler::startEntry);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
RowHandler::~RowHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void RowHandler::startRow(const QXmlAttributes&)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void RowHandler::endRow()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void RowHandler::startEntry(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
EntryHandler *eh = new EntryHandler(this);
|
|
Packit |
1c1d7e |
eh->startEntry(attrib);
|
|
Packit |
1c1d7e |
m_children.append(eh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *RowHandler::entries() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new RowIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// TableHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
TableHandler::TableHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
addEndHandler("table",this,&TableHandler::endTable);
|
|
Packit |
1c1d7e |
addStartHandler("row",this,&TableHandler::startRow);
|
|
Packit |
1c1d7e |
addStartHandler("caption",this,&TableHandler::startCaption);
|
|
Packit |
1c1d7e |
addEndHandler("caption",this,&TableHandler::endCaption);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
TableHandler::~TableHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TableHandler::startTable(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
m_numColumns = attrib.value("cols").toInt();
|
|
Packit |
1c1d7e |
debug(2,"table cols=%d\n",m_numColumns);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TableHandler::endTable()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TableHandler::startRow(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
RowHandler *rh = new RowHandler(this);
|
|
Packit |
1c1d7e |
rh->startRow(attrib);
|
|
Packit |
1c1d7e |
m_children.append(rh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TableHandler::startCaption(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TableHandler::endCaption()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_caption = m_curString;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *TableHandler::rows() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new TableIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// CopyHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
CopyHandler::CopyHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addEndHandler("copydoc",this,&CopyHandler::endCopy);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("para",this,&CopyHandler::startParagraph);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
CopyHandler::~CopyHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void CopyHandler::startCopy(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"start copy handler\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void CopyHandler::endCopy()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
debug(2,"end copy handler\n");
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void CopyHandler::startParagraph(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
ParagraphHandler *parHandler = new ParagraphHandler(this);
|
|
Packit |
1c1d7e |
parHandler->startParagraph(attrib);
|
|
Packit |
1c1d7e |
m_children.append(parHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *CopyHandler::contents() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new CopyIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// VerbatimHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
VerbatimHandler::VerbatimHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent), m_type(IDocVerbatim::Invalid)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("verbatim",this,&VerbatimHandler::endVerbatim);
|
|
Packit |
1c1d7e |
addEndHandler("latexonly",this,&VerbatimHandler::endVerbatim);
|
|
Packit |
1c1d7e |
addEndHandler("htmlonly",this,&VerbatimHandler::endVerbatim);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
VerbatimHandler::~VerbatimHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void VerbatimHandler::startVerbatim(const QXmlAttributes&,Types type)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_type = type;
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void VerbatimHandler::endVerbatim()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_text = m_curString;
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// SymbolHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
SymbolHandler::SymbolHandler(IBaseHandler *parent,Types type)
|
|
Packit |
1c1d7e |
: m_parent(parent), m_letter('\0'), m_type(type)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addEndHandler("symbol");
|
|
Packit |
1c1d7e |
switch (type)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
case IDocSymbol::Invalid: m_typeString="invalid"; break;
|
|
Packit |
1c1d7e |
case IDocSymbol::Umlaut: m_typeString="umlaut"; break;
|
|
Packit |
1c1d7e |
case IDocSymbol::Acute: m_typeString="acute"; break;
|
|
Packit |
1c1d7e |
case IDocSymbol::Grave: m_typeString="grave"; break;
|
|
Packit |
1c1d7e |
case IDocSymbol::Circ: m_typeString="circ"; break;
|
|
Packit |
1c1d7e |
case IDocSymbol::Tilde: m_typeString="tilde"; break;
|
|
Packit |
1c1d7e |
case IDocSymbol::Szlig: m_typeString="szlig"; break;
|
|
Packit |
1c1d7e |
case IDocSymbol::Cedil: m_typeString="cedil"; break;
|
|
Packit |
1c1d7e |
case IDocSymbol::Ring: m_typeString="ring"; break;
|
|
Packit |
1c1d7e |
case IDocSymbol::Nbsp: m_typeString="nbsp"; break;
|
|
Packit |
1c1d7e |
case IDocSymbol::Copy: m_typeString="copy"; break;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
SymbolHandler::~SymbolHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void SymbolHandler::startSymbol(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
QString ls = attrib.value("char");
|
|
Packit |
1c1d7e |
if (!ls.isEmpty()) m_letter = ls.latin1()[0];
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// ParagraphHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ParagraphHandler::ParagraphHandler(IBaseHandler *parent)
|
|
Packit |
1c1d7e |
: m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
m_markupHandler = new MarkupHandler(m_children,m_curString);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
// preformatted
|
|
Packit |
1c1d7e |
setFallBackHandler(m_markupHandler);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addEndHandler("para",this,&ParagraphHandler::endParagraph);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("linebreak",this,&ParagraphHandler::startLineBreak);
|
|
Packit |
1c1d7e |
addStartHandler("hruler",this,&ParagraphHandler::startHRuler);
|
|
Packit |
1c1d7e |
addStartHandler("programlisting",this,&ParagraphHandler::startProgramListing);
|
|
Packit |
1c1d7e |
addStartHandler("verbatim",this,&ParagraphHandler::startVerbatim);
|
|
Packit |
1c1d7e |
addStartHandler("indexentry",this,&ParagraphHandler::startIndexEntry);
|
|
Packit |
1c1d7e |
addStartHandler("orderedlist",this,&ParagraphHandler::startOrderedList);
|
|
Packit |
1c1d7e |
addStartHandler("itemizedlist",this,&ParagraphHandler::startItemizedList);
|
|
Packit |
1c1d7e |
addStartHandler("simplesect",this,&ParagraphHandler::startSimpleSect);
|
|
Packit |
1c1d7e |
// TODO: title
|
|
Packit |
1c1d7e |
addStartHandler("variablelist",this,&ParagraphHandler::startVariableList);
|
|
Packit |
1c1d7e |
addStartHandler("table",this,&ParagraphHandler::startTable);
|
|
Packit |
1c1d7e |
// TODO: heading
|
|
Packit |
1c1d7e |
addStartHandler("image",this,&ParagraphHandler::startImage);
|
|
Packit |
1c1d7e |
addStartHandler("dotfile",this,&ParagraphHandler::startDotFile);
|
|
Packit |
1c1d7e |
addStartHandler("toclist",this,&ParagraphHandler::startTocList);
|
|
Packit |
1c1d7e |
// TODO: language???
|
|
Packit |
1c1d7e |
addStartHandler("parameterlist",this,&ParagraphHandler::startParameterList);
|
|
Packit |
1c1d7e |
// TODO: xrefsect
|
|
Packit |
1c1d7e |
addStartHandler("copydoc",this,&ParagraphHandler::startCopyDoc);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("ref",this,&ParagraphHandler::startRef);
|
|
Packit |
1c1d7e |
addStartHandler("ulink",this,&ParagraphHandler::startULink);
|
|
Packit |
1c1d7e |
addStartHandler("email",this,&ParagraphHandler::startEMail);
|
|
Packit |
1c1d7e |
addStartHandler("link",this,&ParagraphHandler::startLink);
|
|
Packit |
1c1d7e |
addStartHandler("formula",this,&ParagraphHandler::startFormula);
|
|
Packit |
1c1d7e |
addStartHandler("latexonly",this,&ParagraphHandler::startHtmlOnly);
|
|
Packit |
1c1d7e |
addStartHandler("htmlonly",this,&ParagraphHandler::startLatexOnly);
|
|
Packit |
1c1d7e |
addStartHandler("umlaut",this,&ParagraphHandler::startUmlaut);
|
|
Packit |
1c1d7e |
addStartHandler("acute",this,&ParagraphHandler::startAcute);
|
|
Packit |
1c1d7e |
addStartHandler("grave",this,&ParagraphHandler::startGrave);
|
|
Packit |
1c1d7e |
addStartHandler("circ",this,&ParagraphHandler::startCirc);
|
|
Packit |
1c1d7e |
addStartHandler("tilde",this,&ParagraphHandler::startTilde);
|
|
Packit |
1c1d7e |
addStartHandler("szlig",this,&ParagraphHandler::startSzlig);
|
|
Packit |
1c1d7e |
addStartHandler("cedil",this,&ParagraphHandler::startCedil);
|
|
Packit |
1c1d7e |
addStartHandler("ring",this,&ParagraphHandler::startRing);
|
|
Packit |
1c1d7e |
addStartHandler("nbsp",this,&ParagraphHandler::startNbsp);
|
|
Packit |
1c1d7e |
addStartHandler("copy",this,&ParagraphHandler::startCopy);
|
|
Packit |
1c1d7e |
addStartHandler("anchor",this,&ParagraphHandler::startAnchor);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
ParagraphHandler::~ParagraphHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
delete m_markupHandler;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startParagraph(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"para\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::endParagraph()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
debug(2,"end para\n");
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startItemizedList(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
ItemizedListHandler *listHandler = new ItemizedListHandler(this);
|
|
Packit |
1c1d7e |
listHandler->startItemizedList(attrib);
|
|
Packit |
1c1d7e |
m_children.append(listHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startOrderedList(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
OrderedListHandler *listHandler = new OrderedListHandler(this);
|
|
Packit |
1c1d7e |
listHandler->startOrderedList(attrib);
|
|
Packit |
1c1d7e |
m_children.append(listHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startParameterList(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
ParameterListHandler *listHandler = new ParameterListHandler(this);
|
|
Packit |
1c1d7e |
listHandler->startParameterList(attrib);
|
|
Packit |
1c1d7e |
m_children.append(listHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startSimpleSect(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
SimpleSectHandler *sectHandler = new SimpleSectHandler(this);
|
|
Packit |
1c1d7e |
sectHandler->startSimpleSect(attrib);
|
|
Packit |
1c1d7e |
m_children.append(sectHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startRef(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
RefHandler *ref = new RefHandler(this);
|
|
Packit |
1c1d7e |
ref->startRef(attrib);
|
|
Packit |
1c1d7e |
m_children.append(ref);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startVariableList(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
VariableListHandler *vl = new VariableListHandler(this);
|
|
Packit |
1c1d7e |
vl->startVariableList(attrib);
|
|
Packit |
1c1d7e |
m_children.append(vl);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startHRuler(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
HRulerHandler *hr = new HRulerHandler(this);
|
|
Packit |
1c1d7e |
hr->startHRuler(attrib);
|
|
Packit |
1c1d7e |
m_children.append(hr);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startLineBreak(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
LineBreakHandler *lb = new LineBreakHandler(this);
|
|
Packit |
1c1d7e |
lb->startLineBreak(attrib);
|
|
Packit |
1c1d7e |
m_children.append(lb);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startULink(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
ULinkHandler *uh = new ULinkHandler(this);
|
|
Packit |
1c1d7e |
uh->startULink(attrib);
|
|
Packit |
1c1d7e |
m_children.append(uh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startEMail(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
EMailHandler *eh = new EMailHandler(this);
|
|
Packit |
1c1d7e |
eh->startEMail(attrib);
|
|
Packit |
1c1d7e |
m_children.append(eh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startLink(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
LinkHandler *lh = new LinkHandler(this);
|
|
Packit |
1c1d7e |
lh->startLink(attrib);
|
|
Packit |
1c1d7e |
m_children.append(lh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startProgramListing(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
ProgramListingHandler *pl = new ProgramListingHandler(this);
|
|
Packit |
1c1d7e |
pl->startProgramListing(attrib);
|
|
Packit |
1c1d7e |
m_children.append(pl);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startFormula(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
FormulaHandler *fh = new FormulaHandler(this);
|
|
Packit |
1c1d7e |
fh->startFormula(attrib);
|
|
Packit |
1c1d7e |
m_children.append(fh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startImage(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
ImageHandler *ih = new ImageHandler(this);
|
|
Packit |
1c1d7e |
ih->startImage(attrib);
|
|
Packit |
1c1d7e |
m_children.append(ih);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startDotFile(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
DotFileHandler *df = new DotFileHandler(this);
|
|
Packit |
1c1d7e |
df->startDotFile(attrib);
|
|
Packit |
1c1d7e |
m_children.append(df);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startIndexEntry(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
IndexEntryHandler *df = new IndexEntryHandler(this);
|
|
Packit |
1c1d7e |
df->startIndexEntry(attrib);
|
|
Packit |
1c1d7e |
m_children.append(df);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startTable(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
TableHandler *th = new TableHandler(this);
|
|
Packit |
1c1d7e |
th->startTable(attrib);
|
|
Packit |
1c1d7e |
m_children.append(th);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startVerbatim(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
VerbatimHandler *vh = new VerbatimHandler(this);
|
|
Packit |
1c1d7e |
vh->startVerbatim(attrib,IDocVerbatim::Verbatim);
|
|
Packit |
1c1d7e |
m_children.append(vh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startHtmlOnly(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
VerbatimHandler *vh = new VerbatimHandler(this);
|
|
Packit |
1c1d7e |
vh->startVerbatim(attrib,IDocVerbatim::HtmlOnly);
|
|
Packit |
1c1d7e |
m_children.append(vh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startLatexOnly(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
VerbatimHandler *vh = new VerbatimHandler(this);
|
|
Packit |
1c1d7e |
vh->startVerbatim(attrib,IDocVerbatim::LatexOnly);
|
|
Packit |
1c1d7e |
m_children.append(vh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startUmlaut(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
SymbolHandler *sh = new SymbolHandler(this,IDocSymbol::Umlaut);
|
|
Packit |
1c1d7e |
sh->startSymbol(attrib);
|
|
Packit |
1c1d7e |
m_children.append(sh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startAcute(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
SymbolHandler *sh = new SymbolHandler(this,IDocSymbol::Acute);
|
|
Packit |
1c1d7e |
sh->startSymbol(attrib);
|
|
Packit |
1c1d7e |
m_children.append(sh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startGrave(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
SymbolHandler *sh = new SymbolHandler(this,IDocSymbol::Grave);
|
|
Packit |
1c1d7e |
sh->startSymbol(attrib);
|
|
Packit |
1c1d7e |
m_children.append(sh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startCirc(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
SymbolHandler *sh = new SymbolHandler(this,IDocSymbol::Circ);
|
|
Packit |
1c1d7e |
sh->startSymbol(attrib);
|
|
Packit |
1c1d7e |
m_children.append(sh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startTilde(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
SymbolHandler *sh = new SymbolHandler(this,IDocSymbol::Tilde);
|
|
Packit |
1c1d7e |
sh->startSymbol(attrib);
|
|
Packit |
1c1d7e |
m_children.append(sh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startSzlig(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
SymbolHandler *sh = new SymbolHandler(this,IDocSymbol::Szlig);
|
|
Packit |
1c1d7e |
sh->startSymbol(attrib);
|
|
Packit |
1c1d7e |
m_children.append(sh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startCedil(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
SymbolHandler *sh = new SymbolHandler(this,IDocSymbol::Cedil);
|
|
Packit |
1c1d7e |
sh->startSymbol(attrib);
|
|
Packit |
1c1d7e |
m_children.append(sh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startRing(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
SymbolHandler *sh = new SymbolHandler(this,IDocSymbol::Ring);
|
|
Packit |
1c1d7e |
sh->startSymbol(attrib);
|
|
Packit |
1c1d7e |
m_children.append(sh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startNbsp(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
SymbolHandler *sh = new SymbolHandler(this,IDocSymbol::Nbsp);
|
|
Packit |
1c1d7e |
sh->startSymbol(attrib);
|
|
Packit |
1c1d7e |
m_children.append(sh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startCopy(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
SymbolHandler *sh = new SymbolHandler(this,IDocSymbol::Copy);
|
|
Packit |
1c1d7e |
sh->startSymbol(attrib);
|
|
Packit |
1c1d7e |
m_children.append(sh);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startAnchor(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
AnchorHandler *ah = new AnchorHandler(this);
|
|
Packit |
1c1d7e |
ah->startAnchor(attrib);
|
|
Packit |
1c1d7e |
m_children.append(ah);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startCopyDoc(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
CopyHandler *ch = new CopyHandler(this);
|
|
Packit |
1c1d7e |
ch->startCopy(attrib);
|
|
Packit |
1c1d7e |
m_children.append(ch);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::startTocList(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
addTextNode();
|
|
Packit |
1c1d7e |
TocListHandler *th = new TocListHandler(this);
|
|
Packit |
1c1d7e |
th->startTocList(attrib);
|
|
Packit |
1c1d7e |
m_children.append(th);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void ParagraphHandler::addTextNode()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
if (!m_curString.isEmpty())
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.append(
|
|
Packit |
1c1d7e |
new TextNode(
|
|
Packit |
1c1d7e |
m_curString,
|
|
Packit |
1c1d7e |
m_markupHandler->markup(),
|
|
Packit |
1c1d7e |
m_markupHandler->headingLevel()
|
|
Packit |
1c1d7e |
)
|
|
Packit |
1c1d7e |
);
|
|
Packit |
1c1d7e |
debug(2,"addTextNode() text=\"%s\" markup=%x headingLevel=%d\n",
|
|
Packit |
1c1d7e |
m_curString.data(),m_markupHandler->markup(),m_markupHandler->headingLevel());
|
|
Packit |
1c1d7e |
m_curString="";
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *ParagraphHandler::contents() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new ParagraphIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// DocSectionHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
DocSectionHandler::DocSectionHandler(IBaseHandler *parent,int level)
|
|
Packit |
1c1d7e |
: m_parent(parent), m_internal(0), m_level(level), m_title(0)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
QString sectionKey;
|
|
Packit |
1c1d7e |
m_paragraphs.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
m_subsections.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
addStartHandler("title",this,&DocSectionHandler::startTitle);
|
|
Packit |
1c1d7e |
addStartHandler("para",this,&DocSectionHandler::startParagraph);
|
|
Packit |
1c1d7e |
if (level<6)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
sectionKey.sprintf("sect%d",level+1);
|
|
Packit |
1c1d7e |
addStartHandler(sectionKey.utf8(),this,&DocSectionHandler::startSubSection);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
addStartHandler("internal",this,&DocSectionHandler::startInternal);
|
|
Packit |
1c1d7e |
sectionKey.sprintf("sect%d",level);
|
|
Packit |
1c1d7e |
addEndHandler(sectionKey.utf8(),this,&DocSectionHandler::endDocSection);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
DocSectionHandler::~DocSectionHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocSectionHandler::startDocSection(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"Start docsection\n");
|
|
Packit |
1c1d7e |
m_id = attrib.value("id");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocSectionHandler::endDocSection()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
debug(2,"End docsection\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocSectionHandler::startSubSection(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
DocSectionHandler *secHandler = new DocSectionHandler(this,m_level+1);
|
|
Packit |
1c1d7e |
secHandler->startDocSection(attrib);
|
|
Packit |
1c1d7e |
m_subsections.append(secHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocSectionHandler::startParagraph(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
ParagraphHandler *parHandler = new ParagraphHandler(this);
|
|
Packit |
1c1d7e |
parHandler->startParagraph(attrib);
|
|
Packit |
1c1d7e |
m_paragraphs.append(parHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocSectionHandler::startInternal(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_internal = new DocInternalHandler(this,m_level);
|
|
Packit |
1c1d7e |
m_internal->startInternal(attrib);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocSectionHandler::startTitle(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_title = new TitleHandler(this);
|
|
Packit |
1c1d7e |
m_title->startTitle(attrib);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *DocSectionHandler::paragraphs() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new DocSectionParaIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *DocSectionHandler::subSections() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new DocSectionSubIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocInternal *DocSectionHandler::internal() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return m_internal;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// DocInternal
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
DocInternalHandler::DocInternalHandler(IBaseHandler *parent,int level)
|
|
Packit |
1c1d7e |
: m_parent(parent), m_level(level)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_paragraphs.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
m_subsections.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
addStartHandler("para",this,&DocInternalHandler::startParagraph);
|
|
Packit |
1c1d7e |
QString sectionKey;
|
|
Packit |
1c1d7e |
sectionKey.sprintf("sect%d",level+1);
|
|
Packit |
1c1d7e |
addStartHandler(sectionKey.utf8(),this,&DocInternalHandler::startSubSection);
|
|
Packit |
1c1d7e |
addEndHandler("internal",this,&DocInternalHandler::endInternal);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
DocInternalHandler::~DocInternalHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocInternalHandler::startInternal(const QXmlAttributes&)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"Start internal\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocInternalHandler::endInternal()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
debug(2,"End internal\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocInternalHandler::startSubSection(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
DocSectionHandler *secHandler = new DocSectionHandler(this,m_level+1);
|
|
Packit |
1c1d7e |
secHandler->startDocSection(attrib);
|
|
Packit |
1c1d7e |
m_subsections.append(secHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocInternalHandler::startParagraph(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
ParagraphHandler *parHandler = new ParagraphHandler(this);
|
|
Packit |
1c1d7e |
parHandler->startParagraph(attrib);
|
|
Packit |
1c1d7e |
m_paragraphs.append(parHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *DocInternalHandler::paragraphs() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new DocInternalParaIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *DocInternalHandler::subSections() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new DocInternalSubIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
// DocHandler
|
|
Packit |
1c1d7e |
//----------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
DocHandler::DocHandler(IBaseHandler *parent) : m_parent(parent)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_children.setAutoDelete(TRUE);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addEndHandler("briefdescription",this,&DocHandler::endDoc);
|
|
Packit |
1c1d7e |
addEndHandler("detaileddescription",this,&DocHandler::endDoc);
|
|
Packit |
1c1d7e |
addEndHandler("inbodydescription",this,&DocHandler::endDoc);
|
|
Packit |
1c1d7e |
//addEndHandler("internal"); // TODO: implement this as a section
|
|
Packit |
1c1d7e |
addStartHandler("internal",this,&DocHandler::startInternal);
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
addStartHandler("para",this,&DocHandler::startParagraph);
|
|
Packit |
1c1d7e |
addStartHandler("sect1",this,&DocHandler::startSect1);
|
|
Packit |
1c1d7e |
addStartHandler("title",this,&DocHandler::startTitle);
|
|
Packit |
1c1d7e |
//addStartHandler("internal");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
DocHandler::~DocHandler()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocHandler::startDoc(const QXmlAttributes& /*attrib*/)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_parent->setDelegate(this);
|
|
Packit |
1c1d7e |
debug(2,"start dochandler\n");
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocHandler::endDoc()
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
debug(2,"end dochandler\n");
|
|
Packit |
1c1d7e |
m_parent->setDelegate(0);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocHandler::startParagraph(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
ParagraphHandler *parHandler = new ParagraphHandler(this);
|
|
Packit |
1c1d7e |
parHandler->startParagraph(attrib);
|
|
Packit |
1c1d7e |
m_children.append(parHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocHandler::startSect1(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
DocSectionHandler *secHandler = new DocSectionHandler(this,1);
|
|
Packit |
1c1d7e |
secHandler->startDocSection(attrib);
|
|
Packit |
1c1d7e |
m_children.append(secHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocHandler::startTitle(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
TitleHandler *titleHandler = new TitleHandler(this);
|
|
Packit |
1c1d7e |
titleHandler->startTitle(attrib);
|
|
Packit |
1c1d7e |
m_children.append(titleHandler);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void DocHandler::startInternal(const QXmlAttributes& attrib)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_internal = new DocInternalHandler(this,1);
|
|
Packit |
1c1d7e |
m_internal->startInternal(attrib);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocIterator *DocHandler::contents() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return new DocIterator(*this);
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
IDocInternal *DocHandler::internal() const
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
return m_internal;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|