Blame src/textdocvisitor.cpp
|
Packit |
1c1d7e |
/******************************************************************************
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
*
|
|
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 |
* Documents produced by Doxygen are derivative works derived from the
|
|
Packit |
1c1d7e |
* input used in their production; they are not affected by this license.
|
|
Packit |
1c1d7e |
*
|
|
Packit |
1c1d7e |
*/
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
#include <qdir.h>
|
|
Packit |
1c1d7e |
#include "textdocvisitor.h"
|
|
Packit |
1c1d7e |
#include "message.h"
|
|
Packit |
1c1d7e |
#include "util.h"
|
|
Packit |
1c1d7e |
#include "htmlentity.h"
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
//-------------------------------------------------------------------------
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TextDocVisitor::visit(DocSymbol *s)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
const char *res = HtmlEntityMapper::instance()->html(s->symbol());
|
|
Packit |
1c1d7e |
if (res)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
m_t << res;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
else
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
err("text: non supported HTML-entity found: %s\n",HtmlEntityMapper::instance()->html(s->symbol(),TRUE));
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
void TextDocVisitor::filter(const char *str)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
if (str==0) return;
|
|
Packit |
1c1d7e |
//printf("TextDocVisitor::filter(%s)\n",str);
|
|
Packit |
1c1d7e |
const char *p=str;
|
|
Packit |
1c1d7e |
char c;
|
|
Packit |
1c1d7e |
while (*p)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
c=*p++;
|
|
Packit |
1c1d7e |
switch(c)
|
|
Packit |
1c1d7e |
{
|
|
Packit |
1c1d7e |
case '\n': m_t << " "; break;
|
|
Packit |
1c1d7e |
case '"': m_t << """; break;
|
|
Packit |
1c1d7e |
case '\'': m_t << "'"; break;
|
|
Packit |
1c1d7e |
case '<': m_t << "<"; break;
|
|
Packit |
1c1d7e |
case '>': m_t << ">"; break;
|
|
Packit |
1c1d7e |
case '&': m_t << "&"; break;
|
|
Packit |
1c1d7e |
default: m_t << c;
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
}
|
|
Packit |
1c1d7e |
|