Contribution of a new version of ORB and CXX DITA plug-in bug 1461 bug 1621 bug 1962
/******************************************************************************
*
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
* granted. No representations are made about the suitability of this software
* for any purpose. It is provided "as is" without express or implied warranty.
* See the GNU General Public License for more details.
*
*/
#ifndef XMLDITAXREFMAP_H
#define XMLDITAXREFMAP_H
#if USE_DOXYGEN_ID_AS_XML_ID ==0
#include <qmap.h>
typedef QMap<Definition *, QString> XrefMapT;
class XmlDitaXrefERemapDocVisitor : public DocVisitor
{
public:
XmlDitaXrefERemapDocVisitor() : DocVisitor(DocVisitor_XML) {};
//--------------------------------------
// visitor functions for leaf nodes
//--------------------------------------
void visit(DocWord *) {}
void visit(DocLinkedWord *w)
{
Definition *d = w->getDefinition();
if (d) {
m_XrefRemap.insert(d, QString(""));
}
}
void visit(DocWhiteSpace *) {}
void visit(DocSymbol *) {}
void visit(DocURL *) {}
void visit(DocLineBreak *) {}
void visit(DocHorRuler *) {}
void visit(DocStyleChange *) {}
void visit(DocVerbatim *) {}
void visit(DocAnchor *) {}
void visit(DocInclude *) {}
void visit(DocIncOperator *) {}
void visit(DocFormula *) {}
void visit(DocIndexEntry *) {}
void visit(DocSimpleSectSep *) {}
//--------------------------------------
// visitor functions for compound nodes
//--------------------------------------
void visitPre(DocAutoList *) {}
void visitPost(DocAutoList *) {}
void visitPre(DocAutoListItem *) {}
void visitPost(DocAutoListItem *) {}
void visitPre(DocPara *) {}
void visitPost(DocPara *) {}
void visitPre(DocRoot *) {}
void visitPost(DocRoot *) {}
void visitPre(DocSimpleSect *) {}
void visitPost(DocSimpleSect *) {}
void visitPre(DocTitle *) {}
void visitPost(DocTitle *) {}
void visitPre(DocSimpleList *) {}
void visitPost(DocSimpleList *) {}
void visitPre(DocSimpleListItem *) {}
void visitPost(DocSimpleListItem *) {}
void visitPre(DocSection *) {}
void visitPost(DocSection *) {}
void visitPre(DocHtmlList *) {}
void visitPost(DocHtmlList *) {}
void visitPre(DocHtmlListItem *) {}
void visitPost(DocHtmlListItem *) {}
//void visitPre(DocHtmlPre *) {}
//void visitPost(DocHtmlPre *) {}
void visitPre(DocHtmlDescList *) {}
void visitPost(DocHtmlDescList *) {}
void visitPre(DocHtmlDescTitle *) {}
void visitPost(DocHtmlDescTitle *) {}
void visitPre(DocHtmlDescData *) {}
void visitPost(DocHtmlDescData *) {}
void visitPre(DocHtmlTable *) {}
void visitPost(DocHtmlTable *) {}
void visitPre(DocHtmlRow *) {}
void visitPost(DocHtmlRow *) {}
void visitPre(DocHtmlCell *) {}
void visitPost(DocHtmlCell *) {}
void visitPre(DocHtmlCaption *) {}
void visitPost(DocHtmlCaption *) {}
void visitPre(DocInternal *) {}
void visitPost(DocInternal *) {}
void visitPre(DocHRef *) {}
void visitPost(DocHRef *) {}
void visitPre(DocHtmlHeader *) {}
void visitPost(DocHtmlHeader *) {}
void visitPre(DocImage *) {}
void visitPost(DocImage *) {}
void visitPre(DocDotFile *) {}
void visitPost(DocDotFile *) {}
void visitPre(DocLink *w)
{
Definition *d = w->getDefinition();
if (d) {
m_XrefRemap.insert(d, QString(""));
}
}
void visitPost(DocLink *) {}
void visitPre(DocRef *w)
{
Definition *d = w->getDefinition();
if (d) {
m_XrefRemap.insert(d, QString(""));
}
}
void visitPost(DocRef *) {}
void visitPre(DocSecRefItem *) {}
void visitPost(DocSecRefItem *) {}
void visitPre(DocSecRefList *) {}
void visitPost(DocSecRefList *) {}
//void visitPre(DocLanguage *) {}
//void visitPost(DocLanguage *) {}
void visitPre(DocParamSect *) {}
void visitPost(DocParamSect *) {}
void visitPre(DocParamList *) {}
void visitPost(DocParamList *) {}
void visitPre(DocXRefItem *) {}
void visitPost(DocXRefItem *) {}
void visitPre(DocInternalRef *w)
{
Definition *d = w->getDefinition();
if (d) {
m_XrefRemap.insert(d, QString(""));
}
}
void visitPost(DocInternalRef *) {}
void visitPre(DocCopy *) {}
void visitPost(DocCopy *) {}
void visitPre(DocText *) {}
void visitPost(DocText *) {}
virtual ~XmlDitaXrefERemapDocVisitor() {}
// private:
XrefMapT m_XrefRemap;
};
#endif //USE_DOXYGEN_ID_AS_XML_ID ==0
#endif // XMLDITAXREFMAP_H