📄 outputgen.h
字号:
/****************************************************************************** * * $Id: outputgen.h,v 1.48 2001/03/19 19:27:41 root Exp $ * * Copyright (C) 1997-2001 by Dimitri van Heesch. * * 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. * * Documents produced by Doxygen are derivative works derived from the * input used in their production; they are not affected by this license. * */#ifndef OUTPUTGEN_H#define OUTPUTGEN_H#include "qtbc.h"#include <qtextstream.h>#include <qbuffer.h>#include <qfile.h>#include <qstack.h>#include "index.h"class ClassDiagram;class DotClassGraph;class DotInclDepGraph;class DotGfxHierarchyTable;/*! \brief Base Interface used for generating documentation. * * This abstract class is used by the documentation block * parser to generate the output for a specific format, * or a list of formats (see OutputList). This interface * contains functions that generate output. */class BaseOutputDocInterface{ public: enum ParamListTypes { Param, RetVal, Exception }; enum SectionTypes { See, Return, Author, Version, Since, Date, Bug, Note, Warning, Par, Deprecated, Pre, Post, Invar, Remark, Attention, Todo, Test, RCS, EnumValues, Examples }; /*! Start of a bullet list: e.g. \c <ul> in html. writeListItem() is * Used for the bullet items. */ virtual void startItemList() = 0; /*! Writes a list item for a bullet or enumerated * list: e.g. \c <li> in html */ virtual void writeListItem() = 0; /*! Ends a bullet list: e.g. \c </ul> in html */ virtual void endItemList() = 0; /*! Writes an ASCII string to the output. Converts characters that have * A special meaning, like \c & in html. */ virtual void docify(const char *s) = 0; /*! Writes a single ASCII character to the output. Converts characters * that have a special meaning. */ virtual void writeChar(char c) = 0; /*! Writes an ASCII string to the output, \e without converting * special characters. */ virtual void writeString(const char *text) = 0; /*! Starts a new paragraph */ virtual void newParagraph() = 0; /*! Starts a enumeration list: e.g. \c <ol> in html. * writeListItem() is used for the items. */ virtual void startEnumList() = 0; /*! Ends an enumeration list: e.g. \c </ol> in html. */ virtual void endEnumList() = 0; /*! Writes a link to an object in the documentation. * \param ref If this is non-zero, the object is to be found in * an external documentation file. * \param file The file in which the object is located. * \param anchor The anchor uniquely identifying the object within * the file. * \param text The text to display as a placeholder for the link. */ virtual void writeObjectLink(const char *ref,const char *file, const char *anchor, const char *text) = 0; /*! Writes a link to an object in a code fragment. * \param ref If this is non-zero, the object is to be found in * an external documentation file. * \param file The file in which the object is located. * \param anchor The anchor uniquely identifying the object within * the file. * \param text The text to display as a placeholder for the link. */ virtual void writeCodeLink(const char *ref,const char *file, const char *anchor,const char *text) = 0; /*! Starts a (link to an) URL found in the documentation. * \param url The URL to link to. */ virtual void startHtmlLink(const char *url) = 0; /*! Ends a link started by startHtmlLink(). */ virtual void endHtmlLink() = 0; /*! Writes a (link to an) email address found in the documentation. * \param url The email address, this is also used for the link text. */ virtual void writeMailLink(const char *url) = 0; /*! Changes the text font to bold face. The bold section ends with * endBold() */ virtual void startBold() = 0; /*! End a section of text displayed in bold face. */ virtual void endBold() = 0; /*! Changes the text font to fixed size. The section ends with * endTypewriter() */ virtual void startTypewriter() = 0; /*! End a section of text displayed in typewriter style. */ virtual void endTypewriter() = 0; /*! Changes the text font to italic. The italic section ends with * endEmphasis() */ virtual void startEmphasis() = 0; /*! Ends a section of text displayed in italic. */ virtual void endEmphasis() = 0; /*! Starts a source code fragment. The fragment will be * fed to the code parser (see code.h) for syntax highlighting * and cross-referencing. The fragment ends by a call to * endCodeFragment() */ virtual void startCodeFragment() = 0; /*! Ends a source code fragment */ virtual void endCodeFragment() = 0; /*! Starts a fragment of preformatted text. This means that * spacing, tabs and newlines should be kept in the output */ virtual void startPreFragment() = 0; /*! Ens a preformatted text fragment. */ virtual void endPreFragment() = 0; /*! Writes a horizontal ruler to the output */ virtual void writeRuler() = 0; /*! Starts a description list: e.g. \c <dl> in HTML * Items are surrounded by startDescItem() and endDescItem() */ virtual void startDescription() = 0; /*! Ends a description list: e.g. \c </dl> in HTML */ virtual void endDescription() = 0; /*! Starts an item of a description list: e.g. \c <dt> in HTML. */ virtual void startDescItem() = 0; /*! Ends an item of a description list and starts the * description itself: e.g. \c <dd> in HTML. */ virtual void endDescItem() = 0; virtual void startSubsection() = 0; virtual void endSubsection() = 0; virtual void startSubsubsection() = 0; virtual void endSubsubsection() = 0; virtual void startCenter() = 0; virtual void endCenter() = 0; virtual void startSmall() = 0; virtual void endSmall() = 0; virtual void startSubscript() = 0; virtual void endSubscript() = 0; virtual void startSuperscript() = 0; virtual void endSuperscript() = 0; virtual void startTable(int cols) = 0; virtual void endTable() = 0; virtual void nextTableRow() = 0; virtual void endTableRow() = 0; virtual void nextTableColumn() = 0; virtual void endTableColumn() = 0; virtual void writeQuote() = 0; virtual void writeCopyright() = 0; virtual void writeUmlaut(char) = 0; virtual void writeAcute(char) = 0; virtual void writeGrave(char) = 0; virtual void writeCirc(char) = 0; virtual void writeTilde(char) = 0; virtual void writeRing(char) = 0; virtual void writeSharpS() = 0; virtual void writeCCedil(char) = 0; virtual void startDescList(SectionTypes t) = 0; virtual void endDescList() = 0; virtual void startParamList(ParamListTypes t) = 0; virtual void endParamList() = 0; virtual void endDescTitle() = 0; virtual void writeDescItem() = 0; virtual void startTitle() = 0; virtual void endTitle() = 0; virtual void writeAnchor(const char *fileName,const char *name) = 0; virtual void startSection(const char *,const char *,bool) = 0; virtual void endSection(const char *,bool) = 0; virtual void writeSectionRef(const char *,const char *, const char *,const char *) = 0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -