Example #1
0
void XmlDocVisitor::visit(DocVerbatim *s)
{
  if (m_hide) return;
  QCString lang = m_langExt;
  if (!s->language().isEmpty()) // explicit language setting
  {
    lang = s->language();
  }
  SrcLangExt langExt = getLanguageFromFileName(lang);
  switch(s->type())
  {
    case DocVerbatim::Code: // fall though
      m_t << "<programlisting";
      if (!s->language().isEmpty())
          m_t << " filename=\"" << lang << "\">";
      else
          m_t << ">";
      Doxygen::parserManager->getParser(lang)
                            ->parseCode(m_ci,s->context(),s->text(),langExt,
                                        s->isExample(),s->exampleFile());
      m_t << "</programlisting>"; 
      break;
    case DocVerbatim::Verbatim: 
      m_t << "<verbatim>";
      filter(s->text());
      m_t << "</verbatim>"; 
      break;
    case DocVerbatim::HtmlOnly:
    case DocVerbatim::RtfOnly:
    case DocVerbatim::ManOnly:
    case DocVerbatim::LatexOnly: 
    case DocVerbatim::DocbookOnly:
      /* nothing */
      break;
    case DocVerbatim::XmlOnly: 
      m_t << s->text();
      break;
    case DocVerbatim::Dot:
      visitPreStart(m_t, "dot", s->hasCaption(), this, s->children(), QCString(""), FALSE, DocImage::Html, s->width(), s->height());
      filter(s->text());
      visitPostEnd(m_t, "dot");
      break;
    case DocVerbatim::Msc:
      visitPreStart(m_t, "msc", s->hasCaption(), this, s->children(),  QCString(""), FALSE, DocImage::Html, s->width(), s->height());
      filter(s->text());
      visitPostEnd(m_t, "msc");
      break;
    case DocVerbatim::PlantUML:
      visitPreStart(m_t, "plantuml", s->hasCaption(), this, s->children(),  QCString(""), FALSE, DocImage::Html, s->width(), s->height());
      filter(s->text());
      visitPostEnd(m_t, "plantuml");
      break;
  }
}
Example #2
0
void XmlDocVisitor::visitPre(DocImage *img)
{
  if (m_hide) return;

  QCString baseName=img->name();
  int i;
  if ((i=baseName.findRev('/'))!=-1 || (i=baseName.findRev('\\'))!=-1)
  {
    baseName=baseName.right(baseName.length()-i-1);
  }
  visitPreStart(m_t, "image", FALSE, this, img->children(), baseName, TRUE, img->type(), img->width(), img->height());

  // copy the image to the output dir
  FileDef *fd;
  bool ambig;
  if ((fd=findFileDef(Doxygen::imageNameDict,img->name(),ambig)))
  {
    QFile inImage(fd->absFilePath());
    QFile outImage(Config_getString(XML_OUTPUT)+"/"+baseName.data());
    if (inImage.open(IO_ReadOnly))
    {
      if (outImage.open(IO_WriteOnly))
      {
        char *buffer = new char[inImage.size()];
        inImage.readBlock(buffer,inImage.size());
        outImage.writeBlock(buffer,inImage.size());
        outImage.flush();
        delete[] buffer;
      }
    }
  }
}
Example #3
0
void DocbookDocVisitor::writeDotFile(const QCString &baseName, DocVerbatim *s)
{
  QCString shortName = baseName;
  int i;
  if ((i=shortName.findRev('/'))!=-1)
  {
    shortName=shortName.right(shortName.length()-i-1);
  }
  QCString outDir = Config_getString(DOCBOOK_OUTPUT);
  writeDotGraphFromFile(baseName+".dot",outDir,shortName,GOF_BITMAP);
  visitPreStart(m_t, s->hasCaption(), baseName + ".dot", s->width(),s->height());
  visitCaption(this, s->children());
  visitPostEnd(m_t, s->hasCaption());
}
Example #4
0
void DocbookDocVisitor::writePlantUMLFile(const QCString &baseName, DocVerbatim *s)
{
  QCString shortName = baseName;
  int i;
  if ((i=shortName.findRev('/'))!=-1)
  {
    shortName=shortName.right(shortName.length()-i-1);
  }
  QCString outDir = Config_getString(DOCBOOK_OUTPUT);
  generatePlantUMLOutput(baseName,outDir,PUML_BITMAP);
  visitPreStart(m_t, s->hasCaption(), shortName, s->width(),s->height());
  visitCaption(this, s->children());
  visitPostEnd(m_t, s->hasCaption());
}
Example #5
0
void LatexDocVisitor::writeDiaFile(const QCString &baseName, DocVerbatim *s)
{
    QCString shortName = baseName;
    int i;
    if ((i=shortName.findRev('/'))!=-1)
    {
        shortName=shortName.right(shortName.length()-i-1);
    }
    QCString outDir = Config_getString("LATEX_OUTPUT");
    writeDiaGraphFromFile(baseName+".dia",outDir,shortName,DIA_EPS);
    visitPreStart(m_t, s->hasCaption(), shortName, s->width(), s->height());
    visitCaption(this, s->children());
    visitPostEnd(m_t, s->hasCaption());
}
void LatexDocVisitor::writePlantUMLFile(const QString &baseName, DocVerbatim *s)
{
   QString shortName = baseName;            
   int i;

   if ((i = shortName.lastIndexOf('/')) != -1) {
      shortName = shortName.right(shortName.length() - i - 1);
   }

   QString outDir = Config::getString("latex-output");
   generatePlantUMLOutput(baseName, outDir, PUML_EPS);

   visitPreStart(m_t, s->hasCaption(), shortName, s->width(), s->height());
   visitCaption(this, s->children());
   visitPostEnd(m_t, s->hasCaption());
}
void LatexDocVisitor::startDiaFile(const QString &fileName, const QString &width, const QString &height, bool hasCaption)
{
   QString baseName = fileName;
   int i;

   if ((i = baseName.lastIndexOf('/')) != -1) {
      baseName = baseName.right(baseName.length() - i - 1);
   }
   if ((i = baseName.indexOf('.')) != -1) {
      baseName = baseName.left(i);
   }
   baseName.prepend("dia_");

   QString outDir = Config::getString("latex-output");

   writeDiaGraphFromFile(fileName, outDir, baseName, DIA_EPS);
   visitPreStart(m_t,hasCaption, baseName, width, height); 
}
Example #8
0
void LatexDocVisitor::visitPre(DocImage *img)
{
    if (img->type()==DocImage::Latex)
    {
        if (m_hide) return;
        QCString gfxName = img->name();
        if (gfxName.right(4)==".eps" || gfxName.right(4)==".pdf")
        {
            gfxName=gfxName.left(gfxName.length()-4);
        }

        visitPreStart(m_t,img->hasCaption(), gfxName, img->width(),  img->height());
    }
    else // other format -> skip
    {
        pushEnabled();
        m_hide=TRUE;
    }
}
Example #9
0
void DocbookDocVisitor::visitPre(DocImage *img)
{
  if (img->type()==DocImage::DocBook)
  {
    if (m_hide) return;
    m_t << endl;
    QCString baseName=img->name();
    int i;
    if ((i=baseName.findRev('/'))!=-1 || (i=baseName.findRev('\\'))!=-1)
    {
      baseName=baseName.right(baseName.length()-i-1);
    }
    visitPreStart(m_t, img -> hasCaption(), baseName, img -> width(), img -> height());
  }
  else
  {
    pushEnabled();
    m_hide=TRUE;
  }
}
void LatexDocVisitor::visitPre(DocImage *img)
{
   if (img->type() == DocImage::Latex) {
      if (m_hide) {
         return;
      }
   
      QString gfxName = img->name();

      if (gfxName.endsWith(".eps") || gfxName.endsWith(".pdf")) {
         gfxName = gfxName.left(gfxName.length() - 4);
      }

      visitPreStart(m_t, img->hasCaption(), gfxName, img->width(), img->height());

   } else { 
      // other format -> skip
      pushEnabled();
      m_hide = true;
   }
}
Example #11
0
void DocbookDocVisitor::startDiaFile(const QCString &fileName,
    const QCString &width,
    const QCString &height,
    bool hasCaption
    )
{
  QCString baseName=fileName;
  int i;
  if ((i=baseName.findRev('/'))!=-1)
  {
    baseName=baseName.right(baseName.length()-i-1);
  }
  if ((i=baseName.find('.'))!=-1)
  {
    baseName=baseName.left(i);
  }
  baseName.prepend("dia_");
  QCString outDir = Config_getString(DOCBOOK_OUTPUT);
  writeDiaGraphFromFile(fileName,outDir,baseName,DIA_BITMAP);
  m_t << "<para>" << endl;
  visitPreStart(m_t, hasCaption, baseName + ".png",  width,  height);
}
Example #12
0
void LatexDocVisitor::startDiaFile(const QCString &fileName,
                                   const QCString &width,
                                   const QCString &height,
                                   bool hasCaption
                                  )
{
    QCString baseName=fileName;
    int i;
    if ((i=baseName.findRev('/'))!=-1)
    {
        baseName=baseName.right(baseName.length()-i-1);
    }
    if ((i=baseName.find('.'))!=-1)
    {
        baseName=baseName.left(i);
    }
    baseName.prepend("dia_");

    QCString outDir = Config_getString("LATEX_OUTPUT");
    writeDiaGraphFromFile(fileName,outDir,baseName,DIA_EPS);
    visitPreStart(m_t,hasCaption, baseName, width, height);
}
Example #13
0
void XmlDocVisitor::visitPre(DocDiaFile *df)
{
  if (m_hide) return;
  visitPreStart(m_t, "diafile", FALSE, this, df->children(), df->file(), FALSE, DocImage::Html, df->width(), df->height());
}