Doxygen
Loading...
Searching...
No Matches
RTFGenerator Class Referencefinal

Generator for RTF output. More...

#include <src/rtfgen.h>

Inheritance diagram for RTFGenerator:
Collaboration diagram for RTFGenerator:

Classes

struct  RTFListItemInfo

Public Member Functions

 RTFGenerator ()
 RTFGenerator (const RTFGenerator &)
RTFGeneratoroperator= (const RTFGenerator &)
 RTFGenerator (RTFGenerator &&)=delete
RTFGeneratoroperator= (RTFGenerator &&)=delete
 ~RTFGenerator ()
void setRelativePath (const DString &path)
void setSourceFileName (const DString &sourceFileName)
void clearBuffer ()
OutputType type () const override
std::unique_ptr< OutputGenIntfclone () override
void addCodeGen (OutputCodeList &list) override
void cleanup () override
void writeDoc (const IDocNodeAST *ast, const Definition *, const MemberDef *, int, int) override
void startFile (const DString &name, bool isSource, const DString &manName, const DString &title, int id, int hierarchyLevel) override
void endFile () override
void writeSearchInfo () override
void writeFooter (const DString &) override
void startPageDoc (const DString &) override
void endPageDoc () override
void startIndexSection (IndexSection) override
void endIndexSection (IndexSection) override
void writePageLink (const DString &, bool) override
void startProjectNumber () override
void endProjectNumber () override
void writeStyleInfo (int part) override
void startTitleHead (const DString &) override
void endTitleHead (const DString &, const DString &name) override
void startParagraph (const DString &classDef) override
void endParagraph () override
void writeString (const DString &text) override
void startIndexListItem () override
void endIndexListItem () override
void startIndexList () override
void endIndexList () override
void startIndexKey () override
void endIndexKey () override
void startIndexValue (bool) override
void endIndexValue (const DString &, bool) override
void startItemList () override
void endItemList () override
void startIndexItem (const DString &ref, const DString &file) override
void endIndexItem (const DString &ref, const DString &file) override
void docify (const DString &text) override
void writeObjectLink (const DString &ref, const DString &file, const DString &anchor, const DString &name) override
void startTextLink (const DString &f, const DString &anchor) override
void endTextLink () override
void startTypewriter () override
void endTypewriter () override
void startGroupHeader (const DString &, int) override
void endGroupHeader (int) override
void startItemListItem () override
void endItemListItem () override
void startMemberSections () override
void endMemberSections () override
void startHeaderSection () override
void endHeaderSection () override
void startMemberHeader (const DString &, int) override
void endMemberHeader () override
void startMemberSubtitle () override
void endMemberSubtitle () override
void startMemberDocList () override
void endMemberDocList () override
void startMemberList () override
void endMemberList () override
void startInlineHeader () override
void endInlineHeader () override
void startAnonTypeScope (int) override
void endAnonTypeScope (int) override
void startMemberItem (const DString &, MemberItemType, const DString &) override
void endMemberItem (MemberItemType) override
void startMemberTemplateParams () override
void endMemberTemplateParams (const DString &, const DString &) override
void startCompoundTemplateParams () override
void endCompoundTemplateParams () override
void insertMemberAlign (bool) override
void insertMemberAlignLeft (MemberItemType, bool) override
void writeRuler () override
void writeAnchor (const DString &fileName, const DString &name) override
void startEmphasis () override
void endEmphasis () override
void startBold () override
void endBold () override
void lineBreak (const DString &style=DString()) override
void startMemberDoc (const DString &, const DString &, const DString &, const DString &, int, int, bool) override
void endMemberDoc (bool) override
void startDoxyAnchor (const DString &, const DString &, const DString &, const DString &, const DString &) override
void endDoxyAnchor (const DString &, const DString &) override
void addLabel (const DString &, const DString &) override
void writeChar (char c) override
void writeLatexSpacing () override
void writeStartAnnoItem (const DString &type, const DString &file, const DString &path, const DString &name) override
void startCenter () override
void endCenter () override
void startSmall () override
void endSmall () override
void startMemberDescription (const DString &, const DString &, bool) override
void endMemberDescription () override
void startMemberDeclaration () override
void endMemberDeclaration (const DString &, const DString &) override
void writeInheritedSectionTitle (const DString &, const DString &, const DString &, const DString &, const DString &, const DString &) override
void startExamples () override
void endExamples () override
void startDescForItem () override
void endDescForItem () override
void startSection (const DString &, const DString &, SectionType) override
void endSection (const DString &, SectionType) override
void addIndexItem (const DString &, const DString &) override
void startIndent () override
void endIndent () override
void writeSynopsis () override
void startClassDiagram () override
void endClassDiagram (const ClassDiagram &, const DString &filename, const DString &name) override
void startPageRef () override
void endPageRef (const DString &, const DString &) override
void startQuickIndices () override
void endQuickIndices () override
void writeSplitBar (const DString &, const DString &) override
void writeNavigationPath (const DString &) override
void writeLogo () override
void writeQuickLinks (HighlightedItem, const DString &, bool) override
void writeSummaryLink (const DString &, const DString &, const DString &, bool) override
void writePageOutline () override
void startContents () override
void endContents () override
void writeNonBreakableSpace (int) override
void startDescTable (const DString &title, const bool hasInits) override
void endDescTable () override
void startDescTableRow () override
void endDescTableRow () override
void startDescTableTitle () override
void endDescTableTitle () override
void startDescTableInit () override
void endDescTableInit () override
void startDescTableData () override
void endDescTableData () override
void startDotGraph () override
void endDotGraph (DotClassGraph &) override
void startInclDepGraph () override
void endInclDepGraph (DotInclDepGraph &) override
void startGroupCollaboration () override
void endGroupCollaboration (DotGroupCollaboration &g) override
void startCallGraph () override
void endCallGraph (DotCallGraph &) override
void startDirDepGraph () override
void endDirDepGraph (DotDirDeps &g) override
void writeGraphicalHierarchy (DotGfxHierarchyTable &) override
void startMemberGroupHeader (const DString &, bool) override
void endMemberGroupHeader (bool) override
void startMemberGroupDocs () override
void endMemberGroupDocs () override
void startMemberGroup () override
void endMemberGroup (bool) override
void startTextBlock (bool dense) override
void endTextBlock (bool) override
void lastIndexPage () override
void startMemberDocPrefixItem () override
void endMemberDocPrefixItem () override
void startMemberDocName (bool) override
void endMemberDocName () override
void startParameterType (bool, const DString &) override
void endParameterType () override
void startParameterName (bool) override
void endParameterName () override
void startParameterExtra () override
void endParameterExtra (bool, bool, bool) override
void startParameterDefVal (const char *s) override
void endParameterDefVal () override
void startParameterList (bool) override
void endParameterList () override
void exceptionEntry (const DString &, bool) override
void startConstraintList (const DString &) override
void startConstraintParam () override
void endConstraintParam () override
void startConstraintType () override
void endConstraintType () override
void startConstraintDocs () override
void endConstraintDocs () override
void endConstraintList () override
void startMemberDocSimple (bool) override
void endMemberDocSimple (bool) override
void startInlineMemberType () override
void endInlineMemberType () override
void startInlineMemberName () override
void endInlineMemberName () override
void startInlineMemberDoc () override
void endInlineMemberDoc () override
void startLabels () override
void writeLabel (const DString &l, bool isLast) override
void endLabels () override
void startLocalToc (int) override
void endLocalToc () override
void startTocEntry (const SectionInfo *) override
void endTocEntry (const SectionInfo *) override
void startPlainFile (const DString &name) override
void endPlainFile () override
void startEmbeddedDoc (size_t) override
void endEmbeddedDoc () override
Public Member Functions inherited from OutputGenerator
 OutputGenerator ()
 OutputGenerator (const DString &dir)
virtual ~OutputGenerator ()=default
DString dir () const
DString fileName () const
void startPlainFile (const DString &name)
void endPlainFile ()

Static Public Member Functions

static void init ()
static void writeStyleSheetFile (TextStream &t)
static void writeExtensionsFile (TextStream &t)
static bool preProcessFileInplace (const DString &path, const DString &name)
 This is an API to a VERY brittle RTF preprocessor that combines nested RTF files.

Private Member Functions

DString rtf_BList_DepthStyle ()
DString rtf_CList_DepthStyle ()
DString rtf_EList_DepthStyle ()
DString rtf_LCList_DepthStyle ()
DString rtf_DList_DepthStyle ()
void beginRTFDocument ()
void beginRTFChapter ()
void beginRTFSection ()
void rtfwriteRuler_doubleline ()
void rtfwriteRuler_emboss ()
void rtfwriteRuler_thick ()
void rtfwriteRuler_thin ()
void writeRTFReference (const DString &label)
void newParagraph ()
int indentLevel () const
void incIndentLevel ()
void decIndentLevel ()

Private Attributes

bool m_bstartedBody = false
bool m_omitParagraph = false
size_t m_numCols = 0
DString m_relPath
int m_hierarchyLevel = 0
int m_indentLevel = 0
std::array< RTFListItemInfo, maxIndentLevelsm_listItemInfo
std::unique_ptr< OutputCodeListm_codeList
RTFCodeGeneratorm_codeGen

Static Private Attributes

static const int maxIndentLevels = 13

Additional Inherited Members

Public Types inherited from OutputGenerator
enum class  ParamListTypes { Param , RetVal , Exception }
enum class  MemberItemType { Normal , AnonymousStart , AnonymousEnd , Templated }
Protected Attributes inherited from OutputGenerator
TextStream m_t
DString m_dir

Detailed Description

Generator for RTF output.

Definition at line 79 of file rtfgen.h.

Constructor & Destructor Documentation

◆ RTFGenerator() [1/3]

RTFGenerator::RTFGenerator ( )

Definition at line 342 of file rtfgen.cpp.

343 : OutputGenerator(Config_getString(RTF_OUTPUT))
344 , m_codeList(std::make_unique<OutputCodeList>())
345{
346 m_codeGen = m_codeList->add<RTFCodeGenerator>(&m_t);
347}
TextStream m_t
Definition outputgen.h:113
RTFCodeGenerator * m_codeGen
Definition rtfgen.h:349
std::unique_ptr< OutputCodeList > m_codeList
Definition rtfgen.h:348
#define Config_getString(name)
Definition config.h:32

References Config_getString, m_codeGen, m_codeList, OutputGenerator::m_t, and OutputGenerator::OutputGenerator().

Referenced by operator=(), operator=(), RTFGenerator(), and RTFGenerator().

◆ RTFGenerator() [2/3]

RTFGenerator::RTFGenerator ( const RTFGenerator & og)

Definition at line 349 of file rtfgen.cpp.

349 : OutputGenerator(og.m_dir), OutputGenIntf()
350{
351 m_codeList = std::make_unique<OutputCodeList>(*og.m_codeList);
352 m_codeGen = m_codeList->get<RTFCodeGenerator>(OutputType::RTF);
356 m_numCols = og.m_numCols;
357 m_relPath = og.m_relPath;
360}
void setTextStream(TextStream *t)
Definition rtfgen.h:31
int m_indentLevel
Definition rtfgen.h:340
size_t m_numCols
Definition rtfgen.h:334
std::array< RTFListItemInfo, maxIndentLevels > m_listItemInfo
Definition rtfgen.h:347
bool m_bstartedBody
Definition rtfgen.h:332
DString m_relPath
Definition rtfgen.h:335
bool m_omitParagraph
Definition rtfgen.h:333

References m_bstartedBody, m_codeGen, m_codeList, OutputGenerator::m_dir, m_indentLevel, m_listItemInfo, m_numCols, m_omitParagraph, m_relPath, OutputGenerator::m_t, OutputGenerator::OutputGenerator(), RTF, RTFGenerator(), and RTFCodeGenerator::setTextStream().

◆ RTFGenerator() [3/3]

RTFGenerator::RTFGenerator ( RTFGenerator && )
delete

References RTFGenerator().

◆ ~RTFGenerator()

RTFGenerator::~RTFGenerator ( )
default

Member Function Documentation

◆ addCodeGen()

void RTFGenerator::addCodeGen ( OutputCodeList & list)
overridevirtual

Implements OutputGenIntf.

Definition at line 382 of file rtfgen.cpp.

383{
385}
void add(OutputCodeIntfPtr &&p)
Definition outputlist.h:192
OutputCodeDefer< RTFCodeGenerator > RTFCodeGeneratorDefer
Definition outputlist.h:101

References OutputCodeList::add(), and m_codeGen.

◆ addIndexItem()

void RTFGenerator::addIndexItem ( const DString & s1,
const DString & s2 )
overridevirtual

Implements OutputGenIntf.

Definition at line 1751 of file rtfgen.cpp.

1752{
1753 if (!s1.empty())
1754 {
1755 m_t << "{\\xe \\v ";
1756 docify(s1);
1757 if (!s2.empty())
1758 {
1759 m_t << "\\:";
1760 docify(s2);
1761 }
1762 m_t << "}\n";
1763 }
1764}
bool empty() const
Returns true iff the string is empty (std::string compatible alias for isEmpty()).
Definition dstring.h:148
void docify(const DString &text) override
Definition rtfgen.cpp:1848

References docify(), DString::empty(), and OutputGenerator::m_t.

Referenced by endTitleHead(), and startMemberDoc().

◆ addLabel()

void RTFGenerator::addLabel ( const DString & ,
const DString &  )
overridevirtual

Implements OutputGenIntf.

Definition at line 1745 of file rtfgen.cpp.

1746{
1747 DBG_RTF(m_t << "{\\comment addLabel}\n")
1748}
#define DBG_RTF(x)

References DBG_RTF, and OutputGenerator::m_t.

◆ beginRTFChapter()

void RTFGenerator::beginRTFChapter ( )
private

Definition at line 667 of file rtfgen.cpp.

668{
669 m_t << "\n";
670 DBG_RTF(m_t << "{\\comment BeginRTFChapter}\n")
672
673 // if we are compact, no extra page breaks...
674 if (Config_getBool(COMPACT_RTF))
675 {
676 // m_t << "\\sect\\sectd\\sbknone\n";
677 m_t << "\\sect\\sbknone\n";
679 }
680 else
681 m_t << "\\sect\\sbkpage\n";
682 //m_t << "\\sect\\sectd\\sbkpage\n";
683
684 m_t << rtf_Style["Heading1"].reference() << "\n";
685}
void rtfwriteRuler_thick()
Definition rtfgen.cpp:2651
#define Config_getBool(name)
Definition config.h:33
StyleDataMap rtf_Style
Definition rtfstyle.cpp:366
char rtf_Style_Reset[]
Definition rtfstyle.cpp:54

References Config_getBool, DBG_RTF, OutputGenerator::m_t, rtf_Style, rtf_Style_Reset, and rtfwriteRuler_thick().

Referenced by endIndexSection(), and startIndexSection().

◆ beginRTFDocument()

void RTFGenerator::beginRTFDocument ( )
private

Definition at line 529 of file rtfgen.cpp.

530{
531 /* all the included RTF files should begin with the
532 * same header
533 */
534 m_t << "{\\rtf1\\ansi\\ansicpg" << theTranslator->trRTFansicp();
535 m_t << "\\uc1 \\deff0\\deflang1033\\deflangfe1033\n";
536
537 DBG_RTF(m_t << "{\\comment Beginning font list}\n")
538 m_t << "{\\fonttbl ";
539 m_t << "{\\f0\\froman\\fcharset" << theTranslator->trRTFCharSet();
540 m_t << "\\fprq2{\\*\\panose 02020603050405020304}Times New Roman;}\n";
541 m_t << "{\\f1\\fswiss\\fcharset" << theTranslator->trRTFCharSet();
542 m_t << "\\fprq2{\\*\\panose 020b0604020202020204}Arial;}\n";
543 m_t << "{\\f2\\fmodern\\fcharset" << theTranslator->trRTFCharSet();
544 m_t << "\\fprq1{\\*\\panose 02070309020205020404}Courier New;}\n";
545 m_t << "{\\f3\\froman\\fcharset2\\fprq2{\\*\\panose 05050102010706020507}Symbol;}\n";
546 m_t << "}\n";
547 DBG_RTF(m_t << "{\\comment begin colors}\n")
548 m_t << "{\\colortbl;";
549 m_t << "\\red0\\green0\\blue0;";
550 m_t << "\\red0\\green0\\blue255;";
551 m_t << "\\red0\\green255\\blue255;";
552 m_t << "\\red0\\green255\\blue0;";
553 m_t << "\\red255\\green0\\blue255;";
554 m_t << "\\red255\\green0\\blue0;";
555 m_t << "\\red255\\green255\\blue0;";
556 m_t << "\\red255\\green255\\blue255;";
557 m_t << "\\red0\\green0\\blue128;";
558 m_t << "\\red0\\green128\\blue128;";
559 m_t << "\\red0\\green128\\blue0;";
560 m_t << "\\red128\\green0\\blue128;";
561 m_t << "\\red128\\green0\\blue0;";
562 m_t << "\\red128\\green128\\blue0;";
563 m_t << "\\red128\\green128\\blue128;";
564 m_t << "\\red192\\green192\\blue192;";
565
566 // code highlighting colors. Note order is important see also RTFGenerator::startFontClass
567 m_t << "\\red0\\green128\\blue0;"; // keyword = index 17
568 m_t << "\\red96\\green64\\blue32;"; // keywordtype
569 m_t << "\\rede0\\green128\\blue0;"; // keywordflow
570 m_t << "\\red128\\green0\\blue0;"; // comment
571 m_t << "\\red128\\green96\\blue32;"; // preprocessor
572 m_t << "\\red0\\green32\\blue128;"; // stringliteral
573 m_t << "\\red0\\green128\\blue128;"; // charliteral
574 m_t << "\\red255\\green0\\blue255;"; // vhdldigit
575 m_t << "\\red0\\green0\\blue0;"; // vhdlchar
576 m_t << "\\red112\\green0\\blue112;"; // vhdlkeyword
577 m_t << "\\red255\\green0\\blue0;"; // vhdllogic
578
579 m_t << "}\n";
580
581 DBG_RTF(m_t << "{\\comment Beginning style list}\n")
582 m_t << "{\\stylesheet\n";
583 m_t << "{\\widctlpar\\adjustright \\fs20\\cgrid \\snext0 Normal;}\n";
584
585 // set the paper dimensions according to PAPER_TYPE
586 auto paperType = Config_getEnum(PAPER_TYPE);
587 m_t << "{";
588 switch (paperType)
589 {
590 // width & height values are inches * 1440
591 case PAPER_TYPE_t::a4: m_t << "\\paperw11900\\paperh16840"; break;
592 case PAPER_TYPE_t::a3: m_t << "\\paperw16480\\paperh23800"; break;
593 case PAPER_TYPE_t::letter: m_t << "\\paperw12240\\paperh15840"; break;
594 case PAPER_TYPE_t::legal: m_t << "\\paperw12240\\paperh20160"; break;
595 case PAPER_TYPE_t::executive: m_t << "\\paperw10440\\paperh15120"; break;
596 }
597 m_t << "\\margl1800\\margr1800\\margt1440\\margb1440\\gutter0\\ltrsect}\n";
598
599 // sort styles ascending by \s-number via an intermediate QArray
600 unsigned maxIndex = 0;
601 for (const auto &[name,data] : rtf_Style)
602 {
603 uint32_t index = data.index();
604 if (index > maxIndex) maxIndex = index;
605 }
606 std::vector<const StyleData*> array(maxIndex + 1, nullptr);
607 ASSERT(maxIndex < array.size());
608
609 for (const auto &[name,data] : rtf_Style)
610 {
611 uint32_t index = data.index();
612 if (array[index] != nullptr)
613 {
614 err("Style '{}' redefines \\s{}.\n", name, index);
615 }
616 array[index] = &data;
617 }
618
619 // write array elements
620 size_t size = array.size();
621 for(size_t i = 0; i < size; i++)
622 {
623 const StyleData *pStyle = array[i];
624 if (pStyle)
625 {
626 m_t << "{" << pStyle->reference() << pStyle->definition() << ";}\n";
627 }
628 }
629
630 m_t << "}\n";
631
632 // place to write rtf_Table_Default
633 int id = -1;
634 m_t << "{\\*\\listtable" << "\n";
635 for (int i=0 ; rtf_Table_Default[i].definition ; i++ )
636 {
637 if (id != rtf_Table_Default[i].id)
638 {
639 if (id != -1)
640 {
641 m_t << "\\listid" << id << "}" << "\n";
642 }
643 id = rtf_Table_Default[i].id;
644 m_t << "{\\list\\listtemplateid" << rtf_Table_Default[i].id << "\n";
645 }
646 m_t << "{ " << rtf_Table_Default[i].definition << " }" << "\n";
647 }
648 m_t << "\\listid" << id << "}" << "\n";
649 m_t << "}" <<"\n";
650 m_t << "{\\listoverridetable" <<"\n";
651 id = -1;
652 for (int i=0 ; rtf_Table_Default[i].definition ; i++ )
653 {
654 if (id != rtf_Table_Default[i].id)
655 {
656 id = rtf_Table_Default[i].id;
657 m_t << "{\\listoverride\\listid" << id << "\\listoverridecount0\\ls" << id << "}" << "\n";
658 }
659 }
660 m_t << "}" << "\n";
661
662 // this comment is needed for postprocessing!
663 m_t << "{\\comment begin body}\n";
664
665}
virtual DString trRTFansicp()=0
#define Config_getEnum(name)
Definition config.h:35
Translator * theTranslator
Definition language.cpp:76
#define err(fmt,...)
Definition message.h:127
#define ASSERT(x)
Definition message.h:142
Rtf_Table_Default rtf_Table_Default[]
Definition rtfstyle.cpp:250
const char * definition
Definition rtfstyle.h:50
DString reference() const
Definition rtfstyle.h:69
DString definition() const
Definition rtfstyle.h:70

References ASSERT, Config_getEnum, DBG_RTF, Rtf_Table_Default::definition, StyleData::definition(), err, Rtf_Table_Default::id, OutputGenerator::m_t, StyleData::reference(), rtf_Style, rtf_Table_Default, theTranslator, Translator::trRTFansicp(), and Translator::trRTFCharSet().

Referenced by startFile().

◆ beginRTFSection()

void RTFGenerator::beginRTFSection ( )
private

Definition at line 687 of file rtfgen.cpp.

688{
689 m_t << "\n";
690 DBG_RTF(m_t << "{\\comment BeginRTFSection}\n")
692
693 // if we are compact, no extra page breaks...
694 if (Config_getBool(COMPACT_RTF))
695 {
696 m_t << "\\sect\\sbknone\n";
698 }
699 else
700 {
701 m_t << "\\sect\\sbkpage\n";
702 }
703 int level = 2 + m_hierarchyLevel;
704
705 m_t << rtf_Style[DString().sprintf("Heading%d", level).str()].reference() << "\n";
706}
int m_hierarchyLevel
Definition rtfgen.h:336
void rtfwriteRuler_emboss()
Definition rtfgen.cpp:2645

References Config_getBool, DBG_RTF, m_hierarchyLevel, OutputGenerator::m_t, rtf_Style, rtf_Style_Reset, rtfwriteRuler_emboss(), DString::sprintf(), and DString::str().

Referenced by endIndexSection().

◆ cleanup()

void RTFGenerator::cleanup ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 522 of file rtfgen.cpp.

523{
524 DString dname = Config_getString(RTF_OUTPUT);
525 Dir d(dname.str());
526 clearSubDirs(d);
527}
const std::string & str() const
Definition dstring.h:645
void clearSubDirs(const Dir &d)
Definition util.cpp:2996

References clearSubDirs(), Config_getString, and DString::str().

◆ clearBuffer()

void RTFGenerator::clearBuffer ( )

◆ clone()

std::unique_ptr< OutputGenIntf > RTFGenerator::clone ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 102 of file rtfgen.h.

102{ return std::make_unique<RTFGenerator>(*this); }

◆ decIndentLevel()

void RTFGenerator::decIndentLevel ( )
private

Definition at line 2054 of file rtfgen.cpp.

2055{
2056 m_indentLevel--;
2057 if (m_indentLevel<0)
2058 {
2059 err("Negative indent level while generating RTF output!\n");
2060 m_indentLevel=0;
2061 }
2063}
void setIndentLevel(int level)
Definition rtfgen.h:65

References err, m_codeGen, m_indentLevel, and RTFCodeGenerator::setIndentLevel().

Referenced by endConstraintList(), endExamples(), endIndent(), endIndexList(), endItemList(), endMemberDescription(), and endMemberGroup().

◆ docify()

void RTFGenerator::docify ( const DString & text)
overridevirtual

Implements OutputGenIntf.

Definition at line 1848 of file rtfgen.cpp.

1849{
1850 if (str.empty()) return;
1851 m_t << docifyToString(str);
1852 m_omitParagraph = false;
1853}
static DString docifyToString(const DString &str)
Definition rtfgen.cpp:84

References docifyToString(), DString::empty(), m_omitParagraph, and OutputGenerator::m_t.

Referenced by addIndexItem(), endTitleHead(), startConstraintList(), startDescTable(), startExamples(), startParameterDefVal(), startSection(), writeChar(), and writeStartAnnoItem().

◆ endAnonTypeScope()

void RTFGenerator::endAnonTypeScope ( int )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 165 of file rtfgen.h.

165{}

◆ endBold()

void RTFGenerator::endBold ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 181 of file rtfgen.h.

181{ m_t << "}"; }

References OutputGenerator::m_t.

Referenced by endInlineHeader(), endMemberDoc(), startConstraintList(), and startExamples().

◆ endCallGraph()

void RTFGenerator::endCallGraph ( DotCallGraph & g)
overridevirtual

Implements OutputGenIntf.

Definition at line 2381 of file rtfgen.cpp.

2382{
2383 newParagraph();
2384
2386
2387 // display the file
2388 m_t << "{\n";
2389 m_t << rtf_Style_Reset << "\n";
2390 m_t << "\\par\\pard \\qc {\\field\\flddirty {\\*\\fldinst INCLUDEPICTURE \"";
2391 DString imgExt = getDotImageExtension();
2392 m_t << fn << "." << imgExt;
2393 m_t << "\" \\\\d \\\\*MERGEFORMAT}{\\fldrslt IMAGE}}\\par\n";
2394 m_t << "}\n";
2395 DBG_RTF(m_t << "{\\comment (endCallGraph)}\n")
2396}
DString writeGraph(TextStream &t, GraphOutputFormat gf, EmbeddedOutputFormat ef, const DString &path, const DString &fileName, const DString &relPath, bool writeImageMap=true, int graphId=-1)
DString dir() const
Definition outputgen.cpp:48
DString fileName() const
Definition outputgen.cpp:53
void newParagraph()
Definition rtfgen.cpp:2122
DString getDotImageExtension()
Definition util.cpp:4964

References BITMAP, DBG_RTF, OutputGenerator::dir(), OutputGenerator::fileName(), getDotImageExtension(), m_relPath, OutputGenerator::m_t, newParagraph(), Rtf, rtf_Style_Reset, and DotCallGraph::writeGraph().

◆ endCenter()

void RTFGenerator::endCenter ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 193 of file rtfgen.h.

193{ m_t << "}"; }

References OutputGenerator::m_t.

◆ endClassDiagram()

void RTFGenerator::endClassDiagram ( const ClassDiagram & d,
const DString & filename,
const DString & name )
overridevirtual

Implements OutputGenIntf.

Definition at line 1868 of file rtfgen.cpp.

1870{
1871 newParagraph();
1872
1873 // create a png file
1874 d.writeImage(m_t,dir(),m_relPath,fileName,false,false);
1875
1876 // display the file
1877 m_t << "{\n";
1878 m_t << rtf_Style_Reset << "\n";
1879 m_t << "\\par\\pard \\qc {\\field\\flddirty {\\*\\fldinst INCLUDEPICTURE \"";
1880 m_t << fileName << ".png\"";
1881 m_t << " \\\\d \\\\*MERGEFORMAT}{\\fldrslt IMAGE}}\\par\n";
1882 m_t << "}\n";
1883}
void writeImage(TextStream &t, const DString &path, const DString &relPath, const DString &file, bool generateMap, bool toIndex) const
Definition diagram.cpp:1363

References OutputGenerator::dir(), OutputGenerator::fileName(), m_relPath, OutputGenerator::m_t, newParagraph(), rtf_Style_Reset, and ClassDiagram::writeImage().

◆ endCompoundTemplateParams()

void RTFGenerator::endCompoundTemplateParams ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1516 of file rtfgen.cpp.

1517{
1518 newParagraph();
1519 m_t << "}\n";
1520}

References OutputGenerator::m_t, and newParagraph().

◆ endConstraintDocs()

void RTFGenerator::endConstraintDocs ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2709 of file rtfgen.cpp.

2710{
2711 DBG_RTF(m_t << "{\\comment (endConstraintDocs)}\n")
2712 newParagraph();
2713}

References DBG_RTF, OutputGenerator::m_t, and newParagraph().

◆ endConstraintList()

void RTFGenerator::endConstraintList ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2715 of file rtfgen.cpp.

2716{
2717 DBG_RTF(m_t << "{\\comment (endConstraintList)}\n")
2718 newParagraph();
2720 m_omitParagraph = true;
2721 m_t << "}";
2722}
void decIndentLevel()
Definition rtfgen.cpp:2054

References DBG_RTF, decIndentLevel(), m_omitParagraph, OutputGenerator::m_t, and newParagraph().

◆ endConstraintParam()

void RTFGenerator::endConstraintParam ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2684 of file rtfgen.cpp.

2685{
2686 DBG_RTF(m_t << "{\\comment (endConstraintParam)}\n")
2687 endEmphasis();
2688 m_t << " : ";
2689}
void endEmphasis() override
Definition rtfgen.h:179

References DBG_RTF, endEmphasis(), and OutputGenerator::m_t.

◆ endConstraintType()

void RTFGenerator::endConstraintType ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2697 of file rtfgen.cpp.

2698{
2699 DBG_RTF(m_t << "{\\comment (endConstraintType)}\n")
2700 endEmphasis();
2701 m_t << " ";
2702}

References DBG_RTF, endEmphasis(), and OutputGenerator::m_t.

◆ endContents()

void RTFGenerator::endContents ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 226 of file rtfgen.h.

226{}

◆ endDescForItem()

void RTFGenerator::endDescForItem ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1805 of file rtfgen.cpp.

1806{
1807 DBG_RTF(m_t << "{\\comment (endDescForItem) }\n")
1808}

References DBG_RTF, and OutputGenerator::m_t.

◆ endDescTable()

void RTFGenerator::endDescTable ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1982 of file rtfgen.cpp.

1983{
1984 DBG_RTF(m_t << "{\\comment (endDescTable)}\n")
1985 m_t << "}\n";
1986}

References DBG_RTF, and OutputGenerator::m_t.

◆ endDescTableData()

void RTFGenerator::endDescTableData ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2029 of file rtfgen.cpp.

2030{
2031 DBG_RTF(m_t << "{\\comment (endDescTableData) }\n")
2032 m_t << "\\cell }{\\row }\n";
2033}

References DBG_RTF, and OutputGenerator::m_t.

◆ endDescTableInit()

void RTFGenerator::endDescTableInit ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2017 of file rtfgen.cpp.

2018{
2019 DBG_RTF(m_t << "{\\comment (endDescTableInit) }" << endl)
2020 m_t << "\\cell }";
2021}

References DBG_RTF, and OutputGenerator::m_t.

◆ endDescTableRow()

void RTFGenerator::endDescTableRow ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1992 of file rtfgen.cpp.

1993{
1994}

◆ endDescTableTitle()

void RTFGenerator::endDescTableTitle ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2003 of file rtfgen.cpp.

2004{
2005 DBG_RTF(m_t << "{\\comment (endDescTableTitle) }\n")
2006 m_t << "\\cell }";
2007}

References DBG_RTF, and OutputGenerator::m_t.

◆ endDirDepGraph()

void RTFGenerator::endDirDepGraph ( DotDirDeps & g)
overridevirtual

Implements OutputGenIntf.

Definition at line 2403 of file rtfgen.cpp.

2404{
2405 newParagraph();
2406
2408
2409 // display the file
2410 m_t << "{\n";
2411 m_t << rtf_Style_Reset << "\n";
2412 m_t << "\\par\\pard \\qc {\\field\\flddirty {\\*\\fldinst INCLUDEPICTURE \"";
2413 DString imgExt = getDotImageExtension();
2414 m_t << fn << "." << imgExt;
2415 m_t << "\" \\\\d \\\\*MERGEFORMAT}{\\fldrslt IMAGE}}\\par\n";
2416 m_t << "}\n";
2417 DBG_RTF(m_t << "{\\comment (endDirDepGraph)}\n")
2418}
DString writeGraph(TextStream &out, GraphOutputFormat gf, EmbeddedOutputFormat ef, const DString &path, const DString &fileName, const DString &relPath, bool writeImageMap=true, int graphId=-1, bool linkRelations=true)

References BITMAP, DBG_RTF, OutputGenerator::dir(), OutputGenerator::fileName(), getDotImageExtension(), m_relPath, OutputGenerator::m_t, newParagraph(), Rtf, rtf_Style_Reset, and DotDirDeps::writeGraph().

◆ endDotGraph()

void RTFGenerator::endDotGraph ( DotClassGraph & g)
overridevirtual

Implements OutputGenIntf.

Definition at line 2328 of file rtfgen.cpp.

2329{
2330 newParagraph();
2331
2333
2334 // display the file
2335 m_t << "{\n";
2336 m_t << rtf_Style_Reset << "\n";
2337 m_t << "\\par\\pard \\qc {\\field\\flddirty {\\*\\fldinst INCLUDEPICTURE \"";
2338 DString imgExt = getDotImageExtension();
2339 m_t << fn << "." << imgExt;
2340 m_t << "\" \\\\d \\\\*MERGEFORMAT}{\\fldrslt IMAGE}}\\par\n";
2341 m_t << "}\n";
2342 newParagraph();
2343 DBG_RTF(m_t << "{\\comment (endDotGraph)}\n")
2344}
DString writeGraph(TextStream &t, GraphOutputFormat gf, EmbeddedOutputFormat ef, const DString &path, const DString &fileName, const DString &relPath, bool TBRank=true, bool imageMap=true, int graphId=-1)

References BITMAP, DBG_RTF, OutputGenerator::dir(), OutputGenerator::fileName(), getDotImageExtension(), m_relPath, OutputGenerator::m_t, newParagraph(), Rtf, rtf_Style_Reset, and DotClassGraph::writeGraph().

◆ endDoxyAnchor()

void RTFGenerator::endDoxyAnchor ( const DString & fName,
const DString & anchor )
overridevirtual

Implements OutputGenIntf.

Definition at line 1723 of file rtfgen.cpp.

1724{
1725 DString ref;
1726 if (!fName.empty())
1727 {
1728 ref+=stripPath(fName);
1729 }
1730 if (!anchor.empty())
1731 {
1732 ref+='_';
1733 ref+=anchor;
1734 }
1735
1736 DBG_RTF(m_t << "{\\comment endDoxyAnchor}\n")
1737 m_t << "{\\bkmkstart ";
1738 m_t << rtfFormatBmkStr(ref);
1739 m_t << "}\n";
1740 m_t << "{\\bkmkend ";
1741 m_t << rtfFormatBmkStr(ref);
1742 m_t << "}\n";
1743}
DString rtfFormatBmkStr(const DString &name)
Definition rtfgen.cpp:2880
DString stripPath(const DString &s)
Definition util.cpp:3960

References DBG_RTF, DString::empty(), OutputGenerator::m_t, rtfFormatBmkStr(), and stripPath().

◆ endEmbeddedDoc()

void RTFGenerator::endEmbeddedDoc ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 310 of file rtfgen.h.

310{}

◆ endEmphasis()

void RTFGenerator::endEmphasis ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 179 of file rtfgen.h.

179{ m_t << "}"; }

References OutputGenerator::m_t.

Referenced by endConstraintParam(), endConstraintType(), endMemberDescription(), endMemberGroupDocs(), and endPageRef().

◆ endExamples()

void RTFGenerator::endExamples ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2589 of file rtfgen.cpp.

2590{
2591 DBG_RTF(m_t << "{\\comment (endExamples)}\n")
2592 m_omitParagraph = false;
2593 newParagraph();
2595 m_omitParagraph = true;
2596 m_t << "}";
2597}

References DBG_RTF, decIndentLevel(), m_omitParagraph, OutputGenerator::m_t, and newParagraph().

◆ endFile()

void RTFGenerator::endFile ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 722 of file rtfgen.cpp.

723{
724 DBG_RTF(m_t << "{\\comment endFile}\n")
725 m_t << "}";
726
727 endPlainFile();
729}
void endPlainFile() override
Definition rtfgen.h:307
void setSourceFileName(const DString &sourceFileName)
Definition rtfgen.cpp:392

References DBG_RTF, endPlainFile(), OutputGenerator::m_t, and setSourceFileName().

◆ endGroupCollaboration()

void RTFGenerator::endGroupCollaboration ( DotGroupCollaboration & g)
overridevirtual

Implements OutputGenIntf.

Definition at line 2372 of file rtfgen.cpp.

2373{
2374}

◆ endGroupHeader()

void RTFGenerator::endGroupHeader ( int )
overridevirtual

Implements OutputGenIntf.

Definition at line 1667 of file rtfgen.cpp.

1668{
1669 DBG_RTF(m_t << "{\\comment endGroupHeader}\n")
1670 m_t << "\\par\n";
1671 m_t << rtf_Style_Reset << "\n";
1672}

References DBG_RTF, OutputGenerator::m_t, and rtf_Style_Reset.

Referenced by endMemberHeader().

◆ endHeaderSection()

void RTFGenerator::endHeaderSection ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 153 of file rtfgen.h.

153{}

◆ endInclDepGraph()

void RTFGenerator::endInclDepGraph ( DotInclDepGraph & g)
overridevirtual

Implements OutputGenIntf.

Definition at line 2351 of file rtfgen.cpp.

2352{
2353 newParagraph();
2354
2356
2357 // display the file
2358 m_t << "{\n";
2359 m_t << rtf_Style_Reset << "\n";
2360 m_t << "\\par\\pard \\qc {\\field\\flddirty {\\*\\fldinst INCLUDEPICTURE \"";
2361 DString imgExt = getDotImageExtension();
2362 m_t << fn << "." << imgExt;
2363 m_t << "\" \\\\d \\\\*MERGEFORMAT}{\\fldrslt IMAGE}}\\par\n";
2364 m_t << "}\n";
2365 DBG_RTF(m_t << "{\\comment (endInclDepGraph)}\n")
2366}
DString writeGraph(TextStream &t, GraphOutputFormat gf, EmbeddedOutputFormat ef, const DString &path, const DString &fileName, const DString &relPath, bool writeImageMap=true, int graphId=-1)

References BITMAP, DBG_RTF, OutputGenerator::dir(), OutputGenerator::fileName(), getDotImageExtension(), m_relPath, OutputGenerator::m_t, newParagraph(), Rtf, rtf_Style_Reset, and DotInclDepGraph::writeGraph().

◆ endIndent()

void RTFGenerator::endIndent ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1774 of file rtfgen.cpp.

1775{
1776 m_t << "}\n";
1778}

References decIndentLevel(), and OutputGenerator::m_t.

◆ endIndexItem()

void RTFGenerator::endIndexItem ( const DString & ref,
const DString & file )
overridevirtual

Implements OutputGenIntf.

Definition at line 1429 of file rtfgen.cpp.

1430{
1431 DBG_RTF(m_t << "{\\comment (endIndexItem)}\n")
1432 if (ref.empty() && !fn.empty())
1433 {
1434 m_t << "\\tab ";
1436 m_t << "\n";
1437 }
1438 else
1439 {
1440 m_t << "\n";
1441 }
1442 m_omitParagraph = true;
1443}
void writeRTFReference(const DString &label)
Definition rtfgen.cpp:1919

References DBG_RTF, DString::empty(), m_omitParagraph, OutputGenerator::m_t, and writeRTFReference().

◆ endIndexKey()

void RTFGenerator::endIndexKey ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1475 of file rtfgen.cpp.

1476{
1477 DBG_RTF(m_t << "{\\comment (endIndexKey)}\n")
1478}

References DBG_RTF, and OutputGenerator::m_t.

◆ endIndexList()

void RTFGenerator::endIndexList ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1358 of file rtfgen.cpp.

1359{
1360 DBG_RTF(m_t << "{\\comment (endIndexList)}\n")
1361 if (!m_omitParagraph)
1362 {
1363 m_t << "\\par";
1364 m_omitParagraph = true;
1365 }
1366 m_t << "}";
1368}

References DBG_RTF, decIndentLevel(), m_omitParagraph, and OutputGenerator::m_t.

◆ endIndexListItem()

void RTFGenerator::endIndexListItem ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2729 of file rtfgen.cpp.

2730{
2731 DBG_RTF(m_t << "{\\comment (endIndexListItem)}\n")
2732 m_t << "\\par\n";
2733}

References DBG_RTF, and OutputGenerator::m_t.

◆ endIndexSection()

void RTFGenerator::endIndexSection ( IndexSection is)
overridevirtual

Implements OutputGenIntf.

Definition at line 931 of file rtfgen.cpp.

932{
933 bool fortranOpt = Config_getBool(OPTIMIZE_FOR_FORTRAN);
934 bool vhdlOpt = Config_getBool(OPTIMIZE_OUTPUT_VHDL);
935 DString projectName = Config_getString(PROJECT_NAME);
936
937 switch (is)
938 {
940 if (!rtf_title.empty())
941 // User has overridden document title in extensions file
942 m_t << "}" << rtf_title;
943 else
944 m_t << "}" << projectName;
945 break;
947 {
948 m_t << " doxygen " << getDoxygenVersion() << ".}\n";
950 DBG_RTF(m_t << "{\\comment end of infoblock}\n");
951 // setup for this section
952 m_t << "}";
953 m_t << rtf_Style_Reset <<"\n";
954 m_t << "\\sectd\\pgnlcrm\n";
955 m_t << "{\\footer "<<rtf_Style["Footer"].reference() << "{\\chpgn}}\n";
956 // the title entry
957 DBG_RTF(m_t << "{\\comment begin title page}\n")
958
959
960 m_t << rtf_Style_Reset << rtf_Style["SubTitle"].reference() << "\n"; // set to title style
961
962 m_t << "\\vertalc\\qc\\par\\par\\par\\par\\par\\par\\par\n";
963 if (!rtf_logoFilename.empty())
964 {
965 m_t << "{\\field\\flddirty {\\*\\fldinst INCLUDEPICTURE \"" << rtf_logoFilename;
966 m_t << "\" \\\\d \\\\*MERGEFORMAT} {\\fldrslt IMAGE }}\\par\\par\n";
967 }
968 if (!rtf_company.empty())
969 {
970 m_t << rtf_company << "\\par\\par\n";
971 }
972
973 m_t << rtf_Style_Reset << rtf_Style["Title"].reference() << "\n"; // set to title style
974 if (!rtf_title.empty())
975 {
976 // User has overridden document title in extensions file
977 m_t << "{\\field\\fldedit {\\*\\fldinst TITLE \\\\*MERGEFORMAT}{\\fldrslt " << rtf_title << "}}\\par\n";
978 }
979 else
980 {
981 auto parser { createDocParser() };
982 auto ast { validatingParseText(*parser.get(), projectName) };
983 if (ast)
984 {
985 m_t << "{\\field\\fldedit {\\*\\fldinst TITLE \\\\*MERGEFORMAT}{\\fldrslt ";
986 writeDoc(ast.get(),nullptr,nullptr,0,-1);
987 m_t << "}}\\par\n";
988 }
989 }
990
991 m_t << rtf_Style_Reset << rtf_Style["SubTitle"].reference() << "\n"; // set to title style
992 m_t << "\\par\n";
993 if (!rtf_documentType.empty())
994 {
995 m_t << rtf_documentType << "\\par\n";
996 }
997 if (!rtf_documentId.empty())
998 {
999 m_t << rtf_documentId << "\\par\n";
1000 }
1001 m_t << "\\par\\par\\par\\par\\par\\par\\par\\par\\par\\par\\par\\par\n";
1002
1003 m_t << rtf_Style_Reset << rtf_Style["SubTitle"].reference() << "\n"; // set to subtitle style
1004 if (!rtf_author.empty())
1005 {
1006 m_t << "{\\field\\fldedit {\\*\\fldinst AUTHOR \\\\*MERGEFORMAT}{\\fldrslt "<< rtf_author << " }}\\par\n";
1007 }
1008 else
1009 {
1010 m_t << "{\\field\\fldedit {\\*\\fldinst AUTHOR \\\\*MERGEFORMAT}{\\fldrslt AUTHOR}}\\par\n";
1011 }
1012
1013 m_t << theTranslator->trVersion() << " " << Config_getString(PROJECT_NUMBER) << "\\par";
1014 switch (Config_getEnum(TIMESTAMP))
1015 {
1016 case TIMESTAMP_t::YES:
1017 case TIMESTAMP_t::DATETIME:
1018 m_t << "{\\field\\fldedit {\\*\\fldinst CREATEDATE \\\\*MERGEFORMAT}"
1019 "{\\fldrslt "<< dateToString(DateTimeType::DateTime) << " }}\\par\n";
1020 break;
1021 case TIMESTAMP_t::DATE:
1022 m_t << "{\\field\\fldedit {\\*\\fldinst CREATEDATE \\\\*MERGEFORMAT}"
1023 "{\\fldrslt "<< dateToString(DateTimeType::Date) << " }}\\par\n";
1024 break;
1025 case TIMESTAMP_t::NO:
1026 break;
1027 }
1028 m_t << "\\page\\page";
1029 DBG_RTF(m_t << "{\\comment End title page}\n")
1030
1031 // table of contents section
1032 DBG_RTF(m_t << "{\\comment Table of contents}\n")
1033 m_t << "\\vertalt\n";
1034 m_t << rtf_Style_Reset << "\n";
1035 m_t << rtf_Style["Heading1"].reference();
1036 m_t << theTranslator->trRTFTableOfContents() << "\\par\n";
1037 m_t << rtf_Style_Reset << "\\par\n";
1038 m_t << "{\\field\\fldedit {\\*\\fldinst TOC \\\\f \\\\*MERGEFORMAT}{\\fldrslt Table of contents}}\\par\n";
1039 m_t << rtf_Style_Reset << "\n";
1040 }
1041 break;
1042 case IndexSection::isMainPage:
1043 if (Doxygen::mainPage)
1044 {
1045 writePageLink(Doxygen::mainPage->getOutputFileBase(), true);
1046 }
1047 break;
1049 m_t << "\\par " << rtf_Style_Reset << "\n";
1050 m_t << "{\\tc \\v " << theTranslator->trTopicIndex() << "}\n";
1051 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"topics.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1052 break;
1054 m_t << "\\par " << rtf_Style_Reset << "\n";
1055 m_t << "{\\tc \\v " << theTranslator->trModuleIndex() << "}\n";
1056 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"modules.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1057 break;
1059 m_t << "\\par " << rtf_Style_Reset << "\n";
1060 m_t << "{\\tc \\v " << theTranslator->trDirIndex() << "}\n";
1061 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"dirs.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1062 break;
1064 m_t << "\\par " << rtf_Style_Reset << "\n";
1065 if (fortranOpt)
1066 {
1067 m_t << "{\\tc \\v " << theTranslator->trModulesIndex() << "}\n";
1068 }
1069 else
1070 {
1071 m_t << "{\\tc \\v " << theTranslator->trNamespaceIndex() << "}\n";
1072 }
1073
1074 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"namespaces.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1075 break;
1077 m_t << "\\par " << rtf_Style_Reset << "\n";
1078 m_t << "{\\tc \\v " << theTranslator->trConceptIndex() << "}\n";
1079 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"concepts.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1080 break;
1082 m_t << "\\par " << rtf_Style_Reset << "\n";
1083 m_t << "{\\tc \\v " << theTranslator->trHierarchicalIndex() << "}\n";
1084 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"hierarchy.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1085 break;
1087 m_t << "\\par " << rtf_Style_Reset << "\n";
1088 if (fortranOpt)
1089 {
1090 m_t << "{\\tc \\v " << theTranslator->trCompoundIndexFortran() << "}\n";
1091 }
1092 else if (vhdlOpt)
1093 {
1094 m_t << "{\\tc \\v " << theTranslator->trDesignUnitIndex() << "}\n";
1095 }
1096 else
1097 {
1098 m_t << "{\\tc \\v " << theTranslator->trCompoundIndex() << "}\n";
1099 }
1100 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"annotated.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1101 break;
1103 m_t << "\\par " << rtf_Style_Reset << "\n";
1104 m_t << "{\\tc \\v " << theTranslator->trFileIndex() << "}\n";
1105 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"files.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1106 break;
1108 m_t << "\\par " << rtf_Style_Reset << "\n";
1109 m_t << "{\\tc \\v " << theTranslator->trPageIndex() << "}\n";
1110 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"pages.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1111 break;
1113 {
1114 m_t << "{\\tc \\v " << theTranslator->trTopicDocumentation() << "}\n";
1115 for (const auto &gd : *Doxygen::groupLinkedMap)
1116 {
1117 if (!gd->isReference() && !gd->isASubGroup())
1118 {
1119 writePageLink(gd->getOutputFileBase(), false);
1120 }
1121 }
1122 }
1123 break;
1125 {
1126 m_t << "{\\tc \\v " << theTranslator->trModuleDocumentation() << "}\n";
1127 for (const auto &mod : ModuleManager::instance().modules())
1128 {
1129 if (!mod->isReference() && mod->isPrimaryInterface())
1130 {
1131 writePageLink(mod->getOutputFileBase(), false);
1132 }
1133 }
1134 }
1135 break;
1137 {
1138 bool first=true;
1139 m_t << "{\\tc \\v " << theTranslator->trDirDocumentation() << "}\n";
1140 for (const auto &dd : *Doxygen::dirLinkedMap)
1141 {
1142 if (dd->isLinkableInProject())
1143 {
1144 m_t << "\\par " << rtf_Style_Reset << "\n";
1145 if (!first)
1146 {
1148 }
1149 first=false;
1150 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"";
1151 m_t << dd->getOutputFileBase();
1152 m_t << ".rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1153 }
1154 }
1155 }
1156 break;
1158 {
1159 bool first=true;
1160 for (const auto &nd : *Doxygen::namespaceLinkedMap)
1161 {
1162 if (nd->isLinkableInProject() && !nd->isAlias())
1163 {
1164 m_t << "\\par " << rtf_Style_Reset << "\n";
1165 if (!first)
1166 {
1168 }
1169 first=false;
1170 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"";
1171 m_t << nd->getOutputFileBase();
1172 m_t << ".rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1173 }
1174 }
1175 }
1176 break;
1178 {
1179 bool first=true;
1180 for (const auto &cd : *Doxygen::conceptLinkedMap)
1181 {
1182 if (cd->isLinkableInProject() && !cd->isAlias())
1183 {
1184 m_t << "\\par " << rtf_Style_Reset << "\n";
1185 if (!first)
1186 {
1188 }
1189 first=false;
1190 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"";
1191 m_t << cd->getOutputFileBase();
1192 m_t << ".rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1193 }
1194 }
1195 }
1196 break;
1198 {
1199 bool first=true;
1200 if (fortranOpt)
1201 {
1202 m_t << "{\\tc \\v " << theTranslator->trTypeDocumentation() << "}\n";
1203 }
1204 else
1205 {
1206 m_t << "{\\tc \\v " << theTranslator->trClassDocumentation() << "}\n";
1207 }
1208 for (const auto &cd : *Doxygen::classLinkedMap)
1209 {
1210 if (cd->isLinkableInProject() &&
1211 !cd->isImplicitTemplateInstance() &&
1212 !cd->isEmbeddedInOuterScope() &&
1213 !cd->isAlias()
1214 )
1215 {
1216 m_t << "\\par " << rtf_Style_Reset << "\n";
1217 if (!first)
1218 {
1220 }
1221 first=false;
1222 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"";
1223 m_t << cd->getOutputFileBase();
1224 m_t << ".rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1225 }
1226 }
1227 }
1228 break;
1230 {
1231 bool isFirst=true;
1232
1233 m_t << "{\\tc \\v " << theTranslator->trFileDocumentation() << "}\n";
1234 for (const auto &fn : *Doxygen::inputNameLinkedMap)
1235 {
1236 for (const auto &fd : *fn)
1237 {
1238 if (fd->isLinkableInProject())
1239 {
1240 m_t << "\\par " << rtf_Style_Reset << "\n";
1241 if (!isFirst)
1242 {
1244 }
1245 isFirst=false;
1246 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"";
1247 m_t << fd->getOutputFileBase();
1248 m_t << ".rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1249 }
1250 if (fd->generateSourceFile())
1251 {
1252 m_t << "\\par " << rtf_Style_Reset << "\n";
1253 if (!isFirst)
1254 {
1256 }
1257 isFirst=false;
1258 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"";
1259 m_t << fd->getSourceFileBase();
1260 m_t << ".rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1261 }
1262 }
1263 }
1264 }
1265 break;
1267 {
1268 //m_t << "}\n";
1269 bool isFirst=true;
1270 m_t << "{\\tc \\v " << theTranslator->trExamples() << "}\n";
1271 for (const auto &pd : *Doxygen::exampleLinkedMap)
1272 {
1273 m_t << "\\par " << rtf_Style_Reset << "\n";
1274 if (!isFirst)
1275 {
1277 }
1278 isFirst=false;
1279 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"";
1280 m_t << pd->getOutputFileBase();
1281 m_t << ".rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1282 }
1283 }
1284 break;
1286 {
1287 m_t << "\\par " << rtf_Style_Reset << "\n";
1288 for (const auto &pd : *Doxygen::pageLinkedMap)
1289 {
1290 if (!pd->getGroupDef() && !pd->isReference() && !pd->hasParentPage()
1291 && Doxygen::mainPage.get() != pd.get())
1292 {
1293 writePageLink(pd->getOutputFileBase(), false);
1294 }
1295 }
1296 }
1297 break;
1299 break;
1302 m_t << rtf_Style["Heading1"].reference();
1303 m_t << theTranslator->trRTFGeneralIndex() << "\\par \n";
1304 m_t << rtf_Style_Reset << "\n";
1305 m_t << "{\\tc \\v " << theTranslator->trRTFGeneralIndex() << "}\n";
1306 m_t << "{\\field\\fldedit {\\*\\fldinst INDEX \\\\c2 \\\\*MERGEFORMAT}{\\fldrslt INDEX}}\n";
1307
1308 break;
1309 }
1310}
static NamespaceLinkedMap * namespaceLinkedMap
Definition doxygen.h:108
static ConceptLinkedMap * conceptLinkedMap
Definition doxygen.h:90
static std::unique_ptr< PageDef > mainPage
Definition doxygen.h:93
static FileNameLinkedMap * inputNameLinkedMap
Definition doxygen.h:97
static ClassLinkedMap * classLinkedMap
Definition doxygen.h:88
static PageLinkedMap * exampleLinkedMap
Definition doxygen.h:91
static PageLinkedMap * pageLinkedMap
Definition doxygen.h:92
static DirLinkedMap * dirLinkedMap
Definition doxygen.h:120
static GroupLinkedMap * groupLinkedMap
Definition doxygen.h:107
static ModuleManager & instance()
void beginRTFChapter()
Definition rtfgen.cpp:667
void writeDoc(const IDocNodeAST *ast, const Definition *, const MemberDef *, int, int) override
Definition rtfgen.cpp:2628
void beginRTFSection()
Definition rtfgen.cpp:687
void writePageLink(const DString &, bool) override
Definition rtfgen.cpp:1312
virtual DString trFileDocumentation()=0
virtual DString trClassDocumentation()=0
virtual DString trHierarchicalIndex()=0
virtual DString trVersion()=0
virtual DString trConceptIndex()=0
virtual DString trTopicIndex()=0
virtual DString trModuleIndex()=0
virtual DString trTypeDocumentation()=0
virtual DString trPageIndex()=0
virtual DString trModuleDocumentation()=0
virtual DString trCompoundIndexFortran()=0
virtual DString trModulesIndex()=0
virtual DString trTopicDocumentation()=0
virtual DString trRTFGeneralIndex()=0
virtual DString trDirDocumentation()=0
virtual DString trDirIndex()=0
virtual DString trCompoundIndex()=0
virtual DString trDesignUnitIndex()=0
virtual DString trFileIndex()=0
virtual DString trExamples()=0
virtual DString trNamespaceIndex()=0
DString dateToString(DateTimeType includeTime)
Returns the current date, when includeTime is set also the time is provided.
Definition datetime.cpp:64
IDocParserPtr createDocParser()
factory function to create a parser
Definition docparser.cpp:59
IDocNodeASTPtr validatingParseText(IDocParser &parserIntf, const DString &input)
IndexSection
Definition index.h:31
@ isTitlePageAuthor
Definition index.h:33
@ isFileIndex
Definition index.h:42
@ isFileDocumentation
Definition index.h:50
@ isPageDocumentation
Definition index.h:52
@ isDirDocumentation
Definition index.h:46
@ isModuleDocumentation
Definition index.h:44
@ isClassHierarchyIndex
Definition index.h:40
@ isModuleIndex
Definition index.h:35
@ isTopicIndex
Definition index.h:36
@ isConceptIndex
Definition index.h:39
@ isExampleDocumentation
Definition index.h:51
@ isClassDocumentation
Definition index.h:48
@ isPageIndex
Definition index.h:43
@ isCompoundIndex
Definition index.h:41
@ isEndIndex
Definition index.h:54
@ isConceptDocumentation
Definition index.h:49
@ isDirIndex
Definition index.h:37
@ isNamespaceIndex
Definition index.h:38
@ isNamespaceDocumentation
Definition index.h:47
@ isTitlePageStart
Definition index.h:32
@ isTopicDocumentation
Definition index.h:45
@ isPageDocumentation2
Definition index.h:53
static DString dateToRTFDateString()
Definition rtfgen.cpp:62
DString rtf_author
Definition rtfstyle.cpp:33
DString rtf_documentId
Definition rtfstyle.cpp:36
DString rtf_logoFilename
Definition rtfstyle.cpp:32
DString rtf_documentType
Definition rtfstyle.cpp:35
DString rtf_title
Definition rtfstyle.cpp:28
DString rtf_company
Definition rtfstyle.cpp:31

References beginRTFChapter(), beginRTFSection(), Doxygen::classLinkedMap, Doxygen::conceptLinkedMap, Config_getBool, Config_getEnum, Config_getString, createDocParser(), Date, DateTime, dateToRTFDateString(), dateToString(), DBG_RTF, Doxygen::dirLinkedMap, DString::empty(), Doxygen::exampleLinkedMap, Doxygen::groupLinkedMap, Doxygen::inputNameLinkedMap, ModuleManager::instance(), isClassDocumentation, isClassHierarchyIndex, isCompoundIndex, isConceptDocumentation, isConceptIndex, isDirDocumentation, isDirIndex, isEndIndex, isExampleDocumentation, isFileDocumentation, isFileIndex, isMainPage, isModuleDocumentation, isModuleIndex, isNamespaceDocumentation, isNamespaceIndex, isPageDocumentation, isPageDocumentation2, isPageIndex, isTitlePageAuthor, isTitlePageStart, isTopicDocumentation, isTopicIndex, OutputGenerator::m_t, Doxygen::mainPage, Doxygen::namespaceLinkedMap, Doxygen::pageLinkedMap, rtf_author, rtf_company, rtf_documentId, rtf_documentType, rtf_logoFilename, rtf_Style, rtf_Style_Reset, rtf_title, theTranslator, Translator::trClassDocumentation(), Translator::trCompoundIndex(), Translator::trCompoundIndexFortran(), Translator::trConceptIndex(), Translator::trDesignUnitIndex(), Translator::trDirDocumentation(), Translator::trDirIndex(), Translator::trExamples(), Translator::trFileDocumentation(), Translator::trFileIndex(), Translator::trHierarchicalIndex(), Translator::trModuleDocumentation(), Translator::trModuleIndex(), Translator::trModulesIndex(), Translator::trNamespaceIndex(), Translator::trPageIndex(), Translator::trRTFGeneralIndex(), Translator::trRTFTableOfContents(), Translator::trTopicDocumentation(), Translator::trTopicIndex(), Translator::trTypeDocumentation(), Translator::trVersion(), validatingParseText(), writeDoc(), and writePageLink().

◆ endIndexValue()

void RTFGenerator::endIndexValue ( const DString & name,
bool hasBrief )
overridevirtual

Implements OutputGenIntf.

Definition at line 1487 of file rtfgen.cpp.

1488{
1489 DBG_RTF(m_t << "{\\comment (endIndexValue)}\n")
1490 if (hasBrief) m_t << ")";
1491 m_t << "} ";
1492 if (!name.empty())
1493 {
1494 m_t << "\\tab ";
1495 writeRTFReference(name);
1496 m_t << "\n";
1497 }
1498 else
1499 {
1500 m_t << "\n";
1501 }
1502 m_omitParagraph=false;
1503 newParagraph();
1504}

References DBG_RTF, DString::empty(), m_omitParagraph, OutputGenerator::m_t, newParagraph(), and writeRTFReference().

◆ endInlineHeader()

void RTFGenerator::endInlineHeader ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2743 of file rtfgen.cpp.

2744{
2745 DBG_RTF(m_t << "{\\comment (endInlineHeader)}\n")
2746 endBold();
2747 m_t << "\\par";
2748 m_t << "}\n";
2749}
void endBold() override
Definition rtfgen.h:181

References DBG_RTF, endBold(), and OutputGenerator::m_t.

◆ endInlineMemberDoc()

void RTFGenerator::endInlineMemberDoc ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2828 of file rtfgen.cpp.

2829{
2830 DBG_RTF(m_t << "{\\comment (endInlineMemberDoc)}\n")
2831 m_t << "\\cell }{\\row }\n";
2832}

References DBG_RTF, and OutputGenerator::m_t.

◆ endInlineMemberName()

void RTFGenerator::endInlineMemberName ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2816 of file rtfgen.cpp.

2817{
2818 DBG_RTF(m_t << "{\\comment (endInlineMemberName)}\n")
2819 m_t << "\\cell }";
2820}

References DBG_RTF, and OutputGenerator::m_t.

◆ endInlineMemberType()

void RTFGenerator::endInlineMemberType ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2804 of file rtfgen.cpp.

2805{
2806 DBG_RTF(m_t << "{\\comment (endInlineMemberType)}\n")
2807 m_t << "\\cell }";
2808}

References DBG_RTF, and OutputGenerator::m_t.

◆ endItemList()

void RTFGenerator::endItemList ( )
overridevirtual

end bullet list

Implements OutputGenIntf.

Definition at line 1384 of file rtfgen.cpp.

1385{
1386 newParagraph();
1387 DBG_RTF(m_t << "{\\comment (endItemList level=" << indentLevel() << ")}\n")
1388 m_t << "}";
1390 m_omitParagraph = true;
1391}
int indentLevel() const
Definition rtfgen.cpp:2037

References DBG_RTF, decIndentLevel(), indentLevel(), m_omitParagraph, OutputGenerator::m_t, and newParagraph().

◆ endItemListItem()

void RTFGenerator::endItemListItem ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1413 of file rtfgen.cpp.

1414{
1415 DBG_RTF(m_t << "{\\comment (endItemListItem)}\n")
1416}

References DBG_RTF, and OutputGenerator::m_t.

◆ endLabels()

void RTFGenerator::endLabels ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2844 of file rtfgen.cpp.

2845{
2846}

◆ endLocalToc()

void RTFGenerator::endLocalToc ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 302 of file rtfgen.h.

302{}

◆ endMemberDeclaration()

void RTFGenerator::endMemberDeclaration ( const DString & ,
const DString &  )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 200 of file rtfgen.h.

200{}

◆ endMemberDescription()

void RTFGenerator::endMemberDescription ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1790 of file rtfgen.cpp.

1791{
1792 DBG_RTF(m_t << "{\\comment (endMemberDescription)}\n")
1793 endEmphasis();
1795 m_t << "\\par";
1796 m_t << "}\n";
1797 m_omitParagraph = true;
1798}

References DBG_RTF, decIndentLevel(), endEmphasis(), m_omitParagraph, and OutputGenerator::m_t.

◆ endMemberDoc()

void RTFGenerator::endMemberDoc ( bool )
overridevirtual

Implements OutputGenIntf.

Definition at line 1704 of file rtfgen.cpp.

1705{
1706 DBG_RTF(m_t << "{\\comment endMemberDoc}\n")
1707 //const DString &style = styleStack.pop();
1708 //printf("RTFGenerator::endMemberDoc() '%s'\n",style);
1709 //ASSERT(style==rtf_Style["Heading4"].reference());
1710 endBold();
1711 m_t << "}\n";
1712 newParagraph();
1713}

References DBG_RTF, endBold(), OutputGenerator::m_t, and newParagraph().

◆ endMemberDocList()

void RTFGenerator::endMemberDocList ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 159 of file rtfgen.h.

159{}

◆ endMemberDocName()

void RTFGenerator::endMemberDocName ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 266 of file rtfgen.h.

266{}

◆ endMemberDocPrefixItem()

void RTFGenerator::endMemberDocPrefixItem ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 264 of file rtfgen.h.

264{}

◆ endMemberDocSimple()

void RTFGenerator::endMemberDocSimple ( bool )
overridevirtual

Implements OutputGenIntf.

Definition at line 2792 of file rtfgen.cpp.

2793{
2794 DBG_RTF(m_t << "{\\comment (endMemberDocSimple)}\n")
2795 m_t << "}\n";
2796}

References DBG_RTF, and OutputGenerator::m_t.

◆ endMemberGroup()

void RTFGenerator::endMemberGroup ( bool hasHeader)
overridevirtual

Implements OutputGenIntf.

Definition at line 2567 of file rtfgen.cpp.

2568{
2569 DBG_RTF(m_t << "{\\comment endMemberGroup}\n")
2570 if (hasHeader) decIndentLevel();
2571 m_t << "}";
2572}

References DBG_RTF, decIndentLevel(), and OutputGenerator::m_t.

◆ endMemberGroupDocs()

void RTFGenerator::endMemberGroupDocs ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2554 of file rtfgen.cpp.

2555{
2556 DBG_RTF(m_t << "{\\comment endMemberGroupDocs}\n")
2557 endEmphasis();
2558 newParagraph();
2559}

References DBG_RTF, endEmphasis(), OutputGenerator::m_t, and newParagraph().

◆ endMemberGroupHeader()

void RTFGenerator::endMemberGroupHeader ( bool )
overridevirtual

Implements OutputGenIntf.

Definition at line 2541 of file rtfgen.cpp.

2542{
2543 DBG_RTF(m_t << "{\\comment endMemberGroupHeader}\n")
2544 newParagraph();
2546}
DString rtf_CList_DepthStyle()
Definition rtfgen.cpp:2066

References DBG_RTF, OutputGenerator::m_t, newParagraph(), rtf_CList_DepthStyle(), and rtf_Style_Reset.

◆ endMemberHeader()

void RTFGenerator::endMemberHeader ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 155 of file rtfgen.h.

155{ endGroupHeader(false); }
void endGroupHeader(int) override
Definition rtfgen.cpp:1667

References endGroupHeader().

◆ endMemberItem()

void RTFGenerator::endMemberItem ( MemberItemType )
overridevirtual

Implements OutputGenIntf.

Definition at line 1891 of file rtfgen.cpp.

1892{
1893 DBG_RTF(m_t << "{\\comment endMemberItem }\n")
1894 newParagraph();
1895}

References DBG_RTF, OutputGenerator::m_t, and newParagraph().

◆ endMemberList()

void RTFGenerator::endMemberList ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1943 of file rtfgen.cpp.

1944{
1945 DBG_RTF(m_t << "{\\comment (endMemberList) }\n")
1946 m_t << "}\n";
1947#ifdef DELETEDCODE
1948 if (!insideTabbing)
1949 m_t << "\\end{CompactItemize}\n";
1950#endif
1951}

References DBG_RTF, and OutputGenerator::m_t.

◆ endMemberSections()

void RTFGenerator::endMemberSections ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 151 of file rtfgen.h.

151{}

◆ endMemberSubtitle()

void RTFGenerator::endMemberSubtitle ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2154 of file rtfgen.cpp.

2155{
2156 DBG_RTF(m_t << "{\\comment endMemberSubtitle}\n")
2157 newParagraph();
2158 m_t << "}\n";
2159}

References DBG_RTF, OutputGenerator::m_t, and newParagraph().

◆ endMemberTemplateParams()

void RTFGenerator::endMemberTemplateParams ( const DString & ,
const DString &  )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 169 of file rtfgen.h.

169{}

◆ endPageDoc()

void RTFGenerator::endPageDoc ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 113 of file rtfgen.h.

113{}

◆ endPageRef()

void RTFGenerator::endPageRef ( const DString & clname,
const DString & anchor )
overridevirtual

Implements OutputGenIntf.

Definition at line 1599 of file rtfgen.cpp.

1600{
1601 DString ref;
1602 if (!clname.empty())
1603 {
1604 ref+=clname;
1605 }
1606 if (!anchor.empty())
1607 {
1608 ref+='_';
1609 ref+=anchor;
1610 }
1611 writeRTFReference(ref);
1612 endEmphasis();
1613 m_t << ")";
1614}

References DString::empty(), endEmphasis(), OutputGenerator::m_t, and writeRTFReference().

◆ endParagraph()

void RTFGenerator::endParagraph ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2140 of file rtfgen.cpp.

2141{
2142 DBG_RTF(m_t << "{\\comment endParagraph}\n")
2143 m_t << "}\\par\n";
2144 m_omitParagraph = true;
2145}

References DBG_RTF, m_omitParagraph, and OutputGenerator::m_t.

◆ endParameterDefVal()

void RTFGenerator::endParameterDefVal ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 274 of file rtfgen.h.

274{ endTypewriter(); }
void endTypewriter() override
Definition rtfgen.h:144

References endTypewriter().

◆ endParameterExtra()

void RTFGenerator::endParameterExtra ( bool last,
bool ,
bool closeBracket )
overridevirtual

Implements OutputGenIntf.

Definition at line 2866 of file rtfgen.cpp.

2867{
2868 if (last && closeBracket)
2869 {
2870 m_t << ")";
2871 }
2872}

References OutputGenerator::m_t.

◆ endParameterList()

void RTFGenerator::endParameterList ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 276 of file rtfgen.h.

276{}

◆ endParameterName()

void RTFGenerator::endParameterName ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 270 of file rtfgen.h.

270{}

◆ endParameterType()

void RTFGenerator::endParameterType ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2608 of file rtfgen.cpp.

2609{
2610 DBG_RTF(m_t << "{\\comment (endParameterType)}\n")
2611 m_t << " ";
2612}

References DBG_RTF, and OutputGenerator::m_t.

◆ endPlainFile()

void RTFGenerator::endPlainFile ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 307 of file rtfgen.h.

References OutputGenerator::endPlainFile().

Referenced by endFile().

◆ endProjectNumber()

void RTFGenerator::endProjectNumber ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 737 of file rtfgen.cpp.

738{
739 DBG_RTF(m_t << "{\\comment endProjectNumber }\n")
740}

References DBG_RTF, and OutputGenerator::m_t.

◆ endQuickIndices()

void RTFGenerator::endQuickIndices ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 218 of file rtfgen.h.

218{}

◆ endSection()

void RTFGenerator::endSection ( const DString & lab,
SectionType  )
overridevirtual

Implements OutputGenIntf.

Definition at line 1838 of file rtfgen.cpp.

1839{
1840 DBG_RTF(m_t << "{\\comment (endSection)}\n")
1841 // make bookmark
1842 m_omitParagraph=false;
1843 newParagraph();
1844 writeAnchor(DString(),lab);
1845 m_t << "}";
1846}
void writeAnchor(const DString &fileName, const DString &name) override
Definition rtfgen.cpp:1897

References DBG_RTF, m_omitParagraph, OutputGenerator::m_t, newParagraph(), and writeAnchor().

◆ endSmall()

void RTFGenerator::endSmall ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 195 of file rtfgen.h.

195{ m_t << "}"; }

References OutputGenerator::m_t.

◆ endTextBlock()

void RTFGenerator::endTextBlock ( bool )
overridevirtual

Implements OutputGenIntf.

Definition at line 2114 of file rtfgen.cpp.

2115{
2116 newParagraph();
2117 DBG_RTF(m_t << "{\\comment endTextBlock}\n")
2118 m_t << "}\n";
2119 //m_omitParagraph = true;
2120}

References DBG_RTF, OutputGenerator::m_t, and newParagraph().

◆ endTextLink()

void RTFGenerator::endTextLink ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1544 of file rtfgen.cpp.

1545{
1546 if (Config_getBool(RTF_HYPERLINKS))
1547 {
1548 m_t << "}}}\n";
1549 }
1550}

References Config_getBool, and OutputGenerator::m_t.

◆ endTitleHead()

void RTFGenerator::endTitleHead ( const DString & fileName,
const DString & name )
overridevirtual

Implements OutputGenIntf.

Definition at line 1626 of file rtfgen.cpp.

1627{
1628 DBG_RTF(m_t << "{\\comment endTitleHead}\n")
1629 m_t << "\\par " << rtf_Style_Reset << "\n";
1630 if (!name.empty())
1631 {
1632 // make table of contents entry
1633 int level = 2 + m_hierarchyLevel;
1634 m_t << "{\\tc\\tcl" << level << " \\v ";
1635 docify(name);
1636 m_t << "}\n";
1637
1638 // make an index entry
1639 addIndexItem(name,DString());
1640 }
1641 if (!fileName.empty())
1642 {
1643 writeAnchor(fileName,DString());
1644 }
1645}
void addIndexItem(const DString &, const DString &) override
Definition rtfgen.cpp:1751

References addIndexItem(), DBG_RTF, docify(), DString::empty(), OutputGenerator::fileName(), m_hierarchyLevel, OutputGenerator::m_t, rtf_Style_Reset, and writeAnchor().

◆ endTocEntry()

void RTFGenerator::endTocEntry ( const SectionInfo * )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 304 of file rtfgen.h.

304{}

◆ endTypewriter()

void RTFGenerator::endTypewriter ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 144 of file rtfgen.h.

144{ m_t << "}"; }

References OutputGenerator::m_t.

Referenced by endParameterDefVal().

◆ exceptionEntry()

void RTFGenerator::exceptionEntry ( const DString & prefix,
bool closeBracket )
overridevirtual

Implements OutputGenIntf.

Definition at line 2614 of file rtfgen.cpp.

2615{
2616 DBG_RTF(m_t << "{\\comment (exceptionEntry)}\n")
2617 if (!prefix.empty())
2618 {
2619 m_t << " " << prefix << "(";
2620 }
2621 else if (closeBracket)
2622 {
2623 m_t << ")";
2624 }
2625 m_t << " ";
2626}
constexpr auto prefix
Definition anchor.cpp:47

References DBG_RTF, OutputGenerator::m_t, and prefix.

◆ incIndentLevel()

void RTFGenerator::incIndentLevel ( )
private

Definition at line 2042 of file rtfgen.cpp.

2043{
2044 m_indentLevel++;
2046 {
2048 int m = maxIndentLevels;
2049 err("Maximum indent level ({}) exceeded while generating RTF output!\n",m);
2050 }
2052}
static const int maxIndentLevels
Definition rtfgen.h:339

References err, m_codeGen, m_indentLevel, maxIndentLevels, and RTFCodeGenerator::setIndentLevel().

Referenced by startConstraintList(), startExamples(), startIndent(), startIndexList(), startItemList(), startMemberDescription(), and startMemberGroupHeader().

◆ indentLevel()

int RTFGenerator::indentLevel ( ) const
private

◆ init()

void RTFGenerator::init ( )
static

Definition at line 464 of file rtfgen.cpp.

465{
466 DString dir=Config_getString(RTF_OUTPUT);
467 Dir d(dir.str());
468 if (!d.exists() && !d.mkdir(dir.str()))
469 {
470 term("Could not create output directory {}\n",dir);
471 }
472
473 // first duplicate strings of rtf_Style_Default
474 const struct Rtf_Style_Default* def = rtf_Style_Default;
475 while (def->reference)
476 {
477 if (def->definition == nullptr)
478 {
479 err("Internal: rtf_Style_Default[{}] has no definition.\n", def->name);
480 }
481 else
482 {
483 rtf_Style.emplace(def->name, StyleData(def->reference, def->definition));
484 }
485 def++;
486 }
487
488 // overwrite some (or all) definitions from file
489 DString rtfStyleSheetFile = Config_getString(RTF_STYLESHEET_FILE);
490 if (!rtfStyleSheetFile.empty())
491 {
492 loadStylesheet(rtfStyleSheetFile, rtf_Style);
493 }
494
495 // If user has defined an extension file, load its contents.
496 DString rtfExtensionsFile = Config_getString(RTF_EXTENSIONS_FILE);
497 if (!rtfExtensionsFile.empty())
498 {
499 loadExtensions(rtfExtensionsFile);
500
501 if (!rtf_logoFilename.empty())
502 {
503 FileInfo fi(rtf_logoFilename.str());
504 if (!fi.exists())
505 {
506 err("Logo '{}' specified by 'LogoFilename' in the rtf extension file '{}' does not exist!\n",
507 rtf_logoFilename, rtfExtensionsFile);
508 rtf_logoFilename = "";
509 }
510 else
511 {
512 DString destFileName = Config_getString(RTF_OUTPUT)+"/"+fi.fileName();
513 copyFile(rtf_logoFilename,destFileName);
514 rtf_logoFilename = fi.fileName();
515 }
516 }
517 }
518
519 createSubDirs(d);
520}
#define term(fmt,...)
Definition message.h:137
Rtf_Style_Default rtf_Style_Default[]
Definition rtfstyle.cpp:93
void loadExtensions(const DString &name)
Definition rtfstyle.cpp:368
void loadStylesheet(const DString &name, StyleDataMap &map)
Definition rtfstyle.cpp:326
const char * name
Definition rtfstyle.h:41
const char * reference
Definition rtfstyle.h:42
const char * definition
Definition rtfstyle.h:43
void createSubDirs(const Dir &d)
Definition util.cpp:2969
bool copyFile(const DString &src, const DString &dest)
Copies the contents of file with name src to the newly created file with name dest.
Definition util.cpp:4619

References Config_getString, copyFile(), createSubDirs(), Rtf_Style_Default::definition, OutputGenerator::dir(), DString::empty(), err, Dir::exists(), FileInfo::exists(), FileInfo::fileName(), loadExtensions(), loadStylesheet(), Dir::mkdir(), Rtf_Style_Default::name, Rtf_Style_Default::reference, rtf_logoFilename, rtf_Style, rtf_Style_Default, DString::str(), and term.

Referenced by generateOutput().

◆ insertMemberAlign()

void RTFGenerator::insertMemberAlign ( bool )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 172 of file rtfgen.h.

172{}

◆ insertMemberAlignLeft()

void RTFGenerator::insertMemberAlignLeft ( MemberItemType ,
bool  )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 173 of file rtfgen.h.

173{}

◆ lastIndexPage()

void RTFGenerator::lastIndexPage ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1320 of file rtfgen.cpp.

1321{
1322 DBG_RTF(m_t << "{\\comment Beginning Body of RTF Document}\n")
1323 // end page and setup for rest of document
1324 m_t << "\\sect \\sbkpage \\pgndec \\pgnrestart\n";
1325 m_t << "\\sect \\sectd \\sbknone\n";
1326
1327 // set new footer with arabic numbers
1328 m_t << "{\\footer "<< rtf_Style["Footer"].reference() << "{\\chpgn}}\n";
1329
1330}

References DBG_RTF, OutputGenerator::m_t, and rtf_Style.

◆ lineBreak()

void RTFGenerator::lineBreak ( const DString & style = DString())
overridevirtual

Implements OutputGenIntf.

Definition at line 1336 of file rtfgen.cpp.

1337{
1338 DBG_RTF(m_t << "{\\comment (lineBreak)}" << "\n")
1339 m_t << "\\par\n";
1340 m_omitParagraph = true;
1341}

References DBG_RTF, m_omitParagraph, and OutputGenerator::m_t.

◆ newParagraph()

◆ operator=() [1/2]

RTFGenerator & RTFGenerator::operator= ( const RTFGenerator & og)

Definition at line 362 of file rtfgen.cpp.

363{
364 if (this!=&og)
365 {
366 m_dir = og.m_dir;
367 m_codeList = std::make_unique<OutputCodeList>(*og.m_codeList);
368 m_codeGen = m_codeList->get<RTFCodeGenerator>(OutputType::RTF);
372 m_numCols = og.m_numCols;
373 m_relPath = og.m_relPath;
376 }
377 return *this;
378}

References m_bstartedBody, m_codeGen, m_codeList, OutputGenerator::m_dir, m_indentLevel, m_listItemInfo, m_numCols, m_omitParagraph, m_relPath, OutputGenerator::m_t, RTF, RTFGenerator(), and RTFCodeGenerator::setTextStream().

◆ operator=() [2/2]

RTFGenerator & RTFGenerator::operator= ( RTFGenerator && )
delete

References RTFGenerator().

◆ preProcessFileInplace()

bool RTFGenerator::preProcessFileInplace ( const DString & path,
const DString & name )
static

This is an API to a VERY brittle RTF preprocessor that combines nested RTF files.

This version replaces the infile with the new file

Definition at line 2468 of file rtfgen.cpp.

2469{
2470 static bool rtfDebug = Debug::isFlagSet(Debug::Rtf);
2471
2472 Dir d(path.str());
2473 // store the original directory
2474 if (!d.exists())
2475 {
2476 err("Output dir {} does not exist!\n",path);
2477 return false;
2478 }
2479 std::string oldDir = Dir::currentDirPath();
2480
2481 // go to the html output directory (i.e. path)
2482 Dir::setCurrent(d.absPath());
2483 Dir thisDir;
2484
2485 DString combinedName = path+"/combined.rtf";
2486 DString mainRTFName = path+"/"+name;
2487
2488 std::ofstream f = Portable::openOutputStream(combinedName);
2489 if (!f.is_open())
2490 {
2491 err("Failed to open {} for writing!\n",combinedName);
2492 Dir::setCurrent(oldDir);
2493 return false;
2494 }
2495 TextStream outt(&f);
2496
2497 if (!preProcessFile(thisDir,mainRTFName,outt,true,false))
2498 {
2499 // it failed, remove the temp file
2500 outt.flush();
2501 f.close();
2502 if (!rtfDebug) removeSet.insert(FileInfo(thisDir.filePath(combinedName.str())).absFilePath());
2503 Dir::setCurrent(oldDir);
2504 return false;
2505 }
2506
2507 // everything worked, move the files
2508 outt.flush();
2509 f.close();
2510 if (!rtfDebug)
2511 {
2512 thisDir.remove(mainRTFName.str());
2513 }
2514 else
2515 {
2516 thisDir.rename(mainRTFName.str(),mainRTFName.str() + ".org");
2517 }
2518 thisDir.rename(combinedName.str(),mainRTFName.str());
2519
2520 testRTFOutput(mainRTFName);
2521
2522 DString rtfOutputDir = Dir::currentDirPath();
2523 for (auto &s : removeSet)
2524 {
2525 DString s1 = s;
2526 if (s1.startsWith(rtfOutputDir)) Portable::unlink(s1);
2527 }
2528
2529 Dir::setCurrent(oldDir);
2530 return true;
2531}
bool startsWith(const char *s) const
Definition dstring.h:600
@ Rtf
Definition debug.h:44
static bool isFlagSet(const DebugMask mask)
Definition debug.cpp:132
static std::string currentDirPath()
Definition dir.cpp:348
bool remove(const std::string &path, bool acceptsAbsPath=true) const
Definition dir.cpp:320
std::string filePath(const std::string &path, bool acceptsAbsPath=true) const
Definition dir.cpp:286
bool rename(const std::string &orgName, const std::string &newName, bool acceptsAbsPath=true) const
Definition dir.cpp:327
static bool setCurrent(const std::string &path)
Definition dir.cpp:356
void unlink(const DString &fileName)
Definition portable.cpp:560
std::ofstream openOutputStream(const DString &name, bool append=false)
Definition portable.cpp:681
static StringSet removeSet
Definition rtfgen.cpp:60
static bool preProcessFile(Dir &d, const DString &infName, TextStream &t, bool bIncludeHeader=true, bool removeFile=true)
VERY brittle routine inline RTF's included by other RTF's.
Definition rtfgen.cpp:2253
void testRTFOutput(const DString &name)
Tests the integrity of the result by counting brackets.
Definition rtfgen.cpp:2423

References FileInfo::absFilePath(), Dir::absPath(), Dir::currentDirPath(), err, Dir::exists(), Dir::filePath(), TextStream::flush(), Debug::isFlagSet(), Portable::openOutputStream(), preProcessFile(), Dir::remove(), removeSet, Dir::rename(), Debug::Rtf, Dir::setCurrent(), DString::startsWith(), DString::str(), testRTFOutput(), and Portable::unlink().

Referenced by generateOutput().

◆ rtf_BList_DepthStyle()

DString RTFGenerator::rtf_BList_DepthStyle ( )
private

Definition at line 2080 of file rtfgen.cpp.

2081{
2082 DString n=makeIndexName("ListBullet",indentLevel());
2083 return rtf_Style[n.str()].reference();
2084}
static DString makeIndexName(const DString &s, int i)
Definition rtfgen.cpp:107

References indentLevel(), makeIndexName(), rtf_Style, and DString::str().

Referenced by startItemListItem(), startMemberGroup(), and startMemberItem().

◆ rtf_CList_DepthStyle()

DString RTFGenerator::rtf_CList_DepthStyle ( )
private

Definition at line 2066 of file rtfgen.cpp.

2067{
2068 DString n=makeIndexName("ListContinue",indentLevel());
2069 return rtf_Style[n.str()].reference();
2070}

References indentLevel(), makeIndexName(), rtf_Style, and DString::str().

Referenced by endMemberGroupHeader(), startIndent(), startMemberDescription(), and startMemberSubtitle().

◆ rtf_DList_DepthStyle()

DString RTFGenerator::rtf_DList_DepthStyle ( )
private

Definition at line 2093 of file rtfgen.cpp.

2094{
2095 DString n=makeIndexName("DescContinue",indentLevel());
2096 return rtf_Style[n.str()].reference();
2097}

References indentLevel(), makeIndexName(), rtf_Style, and DString::str().

Referenced by startConstraintList(), startDescTable(), startExamples(), and startMemberDocSimple().

◆ rtf_EList_DepthStyle()

DString RTFGenerator::rtf_EList_DepthStyle ( )
private

Definition at line 2087 of file rtfgen.cpp.

2088{
2089 DString n=makeIndexName("ListEnum",indentLevel());
2090 return rtf_Style[n.str()].reference();
2091}

References indentLevel(), makeIndexName(), rtf_Style, and DString::str().

Referenced by startItemListItem().

◆ rtf_LCList_DepthStyle()

DString RTFGenerator::rtf_LCList_DepthStyle ( )
private

Definition at line 2073 of file rtfgen.cpp.

2074{
2075 DString n=makeIndexName("LatexTOC",indentLevel());
2076 return rtf_Style[n.str()].reference();
2077}

References indentLevel(), makeIndexName(), rtf_Style, and DString::str().

Referenced by startIndexList().

◆ rtfwriteRuler_doubleline()

void RTFGenerator::rtfwriteRuler_doubleline ( )
private

Definition at line 2639 of file rtfgen.cpp.

2640{
2641 DBG_RTF(m_t << "{\\comment (rtfwriteRuler_doubleline)}\n")
2642 m_t << "{\\pard\\widctlpar\\brdrb\\brdrdb\\brdrw15\\brsp20 \\adjustright \\par}\n";
2643}

References DBG_RTF, and OutputGenerator::m_t.

◆ rtfwriteRuler_emboss()

void RTFGenerator::rtfwriteRuler_emboss ( )
private

Definition at line 2645 of file rtfgen.cpp.

2646{
2647 DBG_RTF(m_t << "{\\comment (rtfwriteRuler_emboss)}\n")
2648 m_t << "{\\pard\\widctlpar\\brdrb\\brdremboss\\brdrw15\\brsp20 \\adjustright \\par}\n";
2649}

References DBG_RTF, and OutputGenerator::m_t.

Referenced by beginRTFSection().

◆ rtfwriteRuler_thick()

void RTFGenerator::rtfwriteRuler_thick ( )
private

Definition at line 2651 of file rtfgen.cpp.

2652{
2653 DBG_RTF(m_t << "{\\comment (rtfwriteRuler_thick)}\n")
2654 m_t << "{\\pard\\widctlpar\\brdrb\\brdrs\\brdrw75\\brsp20 \\adjustright \\par}\n";
2655}

References DBG_RTF, and OutputGenerator::m_t.

Referenced by beginRTFChapter().

◆ rtfwriteRuler_thin()

void RTFGenerator::rtfwriteRuler_thin ( )
private

Definition at line 2657 of file rtfgen.cpp.

2658{
2659 DBG_RTF(m_t << "{\\comment (rtfwriteRuler_thin)}\n")
2660 m_t << "{\\pard\\widctlpar\\brdrb\\brdrs\\brdrw5\\brsp20 \\adjustright \\par}\n";
2661}

References DBG_RTF, and OutputGenerator::m_t.

Referenced by writeRuler().

◆ setRelativePath()

void RTFGenerator::setRelativePath ( const DString & path)

Definition at line 387 of file rtfgen.cpp.

388{
389 m_relPath = path;
390}

References m_relPath.

Referenced by startFile().

◆ setSourceFileName()

void RTFGenerator::setSourceFileName ( const DString & sourceFileName)

Definition at line 392 of file rtfgen.cpp.

393{
395}
void setSourceFileName(const DString &name)
Definition rtfgen.cpp:335

References m_codeGen, and RTFCodeGenerator::setSourceFileName().

Referenced by endFile(), and startFile().

◆ startAnonTypeScope()

void RTFGenerator::startAnonTypeScope ( int )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 164 of file rtfgen.h.

164{}

◆ startBold()

void RTFGenerator::startBold ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 180 of file rtfgen.h.

180{ m_t << "{\\b "; }

References OutputGenerator::m_t.

Referenced by startConstraintList(), startExamples(), startInlineHeader(), and startMemberDoc().

◆ startCallGraph()

void RTFGenerator::startCallGraph ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2376 of file rtfgen.cpp.

2377{
2378 DBG_RTF(m_t << "{\\comment (startCallGraph)}\n")
2379}

References DBG_RTF, and OutputGenerator::m_t.

◆ startCenter()

void RTFGenerator::startCenter ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 192 of file rtfgen.h.

192{ m_t << "{\\qc\n"; }

References OutputGenerator::m_t.

◆ startClassDiagram()

void RTFGenerator::startClassDiagram ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1863 of file rtfgen.cpp.

1864{
1865 DBG_RTF(m_t << "{\\comment startClassDiagram }\n")
1866}

References DBG_RTF, and OutputGenerator::m_t.

◆ startCompoundTemplateParams()

void RTFGenerator::startCompoundTemplateParams ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1506 of file rtfgen.cpp.

1507{
1508 //beginRTFSubSubSection();
1509 m_t << "\n";
1510 DBG_RTF(m_t << "{\\comment Begin SubSubSection}\n")
1511 m_t << "{\n";
1512 int level = 4 + m_hierarchyLevel;
1513 m_t << rtf_Style_Reset << rtf_Style[DString().sprintf("Heading%d", level).str()].reference() << "\n";
1514}

References DBG_RTF, m_hierarchyLevel, OutputGenerator::m_t, rtf_Style, rtf_Style_Reset, DString::sprintf(), and DString::str().

◆ startConstraintDocs()

void RTFGenerator::startConstraintDocs ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2704 of file rtfgen.cpp.

2705{
2706 DBG_RTF(m_t << "{\\comment (startConstraintDocs)}\n")
2707}

References DBG_RTF, and OutputGenerator::m_t.

◆ startConstraintList()

void RTFGenerator::startConstraintList ( const DString & header)
overridevirtual

Implements OutputGenIntf.

Definition at line 2663 of file rtfgen.cpp.

2664{
2665 DBG_RTF(m_t << "{\\comment (startConstraintList)}\n")
2666 m_t << "{"; // ends at endConstraintList
2667 m_t << "{";
2668 startBold();
2669 newParagraph();
2670 docify(header);
2671 endBold();
2672 m_t << "}";
2673 newParagraph();
2676}
void incIndentLevel()
Definition rtfgen.cpp:2042
DString rtf_DList_DepthStyle()
Definition rtfgen.cpp:2093
void startBold() override
Definition rtfgen.h:180

References DBG_RTF, docify(), endBold(), incIndentLevel(), OutputGenerator::m_t, newParagraph(), rtf_DList_DepthStyle(), rtf_Style_Reset, and startBold().

◆ startConstraintParam()

void RTFGenerator::startConstraintParam ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2678 of file rtfgen.cpp.

2679{
2680 DBG_RTF(m_t << "{\\comment (startConstraintParam)}\n")
2681 startEmphasis();
2682}
void startEmphasis() override
Definition rtfgen.h:178

References DBG_RTF, OutputGenerator::m_t, and startEmphasis().

◆ startConstraintType()

void RTFGenerator::startConstraintType ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2691 of file rtfgen.cpp.

2692{
2693 DBG_RTF(m_t << "{\\comment (startConstraintType)}\n")
2694 startEmphasis();
2695}

References DBG_RTF, OutputGenerator::m_t, and startEmphasis().

◆ startContents()

void RTFGenerator::startContents ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 225 of file rtfgen.h.

225{}

◆ startDescForItem()

void RTFGenerator::startDescForItem ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1800 of file rtfgen.cpp.

1801{
1802 DBG_RTF(m_t << "{\\comment (startDescForItem) }\n")
1803}

References DBG_RTF, and OutputGenerator::m_t.

◆ startDescTable()

void RTFGenerator::startDescTable ( const DString & title,
const bool hasInits )
overridevirtual

Implements OutputGenIntf.

Definition at line 1953 of file rtfgen.cpp.

1954{
1955 DBG_RTF(m_t << "{\\comment (startDescTable) }\n")
1956 m_t << "{\\par\n";
1957 m_t << "{" << rtf_Style["Heading5"].reference() << "\n";
1958 docify(title);
1959 m_t << ":\\par}\n";
1961 m_t << "\\trowd \\trgaph108\\trleft426\\tblind426"
1962 "\\trbrdrt\\brdrs\\brdrw10\\brdrcf15 "
1963 "\\trbrdrl\\brdrs\\brdrw10\\brdrcf15 "
1964 "\\trbrdrb\\brdrs\\brdrw10\\brdrcf15 "
1965 "\\trbrdrr\\brdrs\\brdrw10\\brdrcf15 "
1966 "\\trbrdrh\\brdrs\\brdrw10\\brdrcf15 "
1967 "\\trbrdrv\\brdrs\\brdrw10\\brdrcf15 \n";
1968 int columnPos2[2] = { 25, 100 };
1969 int columnPos3[3] = { 25, 45, 100 };
1970 for (int i=0;i<(hasInits?3:2);i++)
1971 {
1972 m_t << "\\clvertalt\\clbrdrt\\brdrs\\brdrw10\\brdrcf15 "
1973 "\\clbrdrl\\brdrs\\brdrw10\\brdrcf15 "
1974 "\\clbrdrb\\brdrs\\brdrw10\\brdrcf15 "
1975 "\\clbrdrr \\brdrs\\brdrw10\\brdrcf15 "
1976 "\\cltxlrtb "
1977 "\\cellx" << (rtf_pageWidth*(hasInits?columnPos3[i]:columnPos2[i])/100) << "\n";
1978 }
1979 m_t << "\\pard \\widctlpar\\intbl\\adjustright\n";
1980}
const int rtf_pageWidth
Definition rtfstyle.h:26

References DBG_RTF, docify(), OutputGenerator::m_t, rtf_DList_DepthStyle(), rtf_pageWidth, rtf_Style, and rtf_Style_Reset.

◆ startDescTableData()

void RTFGenerator::startDescTableData ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2023 of file rtfgen.cpp.

2024{
2025 DBG_RTF(m_t << "{\\comment (startDescTableData) }\n")
2026 m_t << "{";
2027}

References DBG_RTF, and OutputGenerator::m_t.

◆ startDescTableInit()

void RTFGenerator::startDescTableInit ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2009 of file rtfgen.cpp.

2010{
2011 DBG_RTF(m_t << "{\\comment (startDescTableInit) }" << endl)
2012 m_t << "{";
2013 m_t << rtf_Style["BodyText"].reference();
2014 m_t << "\\qr ";
2015}

References DBG_RTF, OutputGenerator::m_t, and rtf_Style.

◆ startDescTableRow()

void RTFGenerator::startDescTableRow ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1988 of file rtfgen.cpp.

1989{
1990}

◆ startDescTableTitle()

void RTFGenerator::startDescTableTitle ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1996 of file rtfgen.cpp.

1997{
1998 DBG_RTF(m_t << "{\\comment (startDescTableTitle) }\n")
1999 m_t << "{";
2000 m_t << rtf_Style["BodyText"].reference();
2001}

References DBG_RTF, OutputGenerator::m_t, and rtf_Style.

◆ startDirDepGraph()

void RTFGenerator::startDirDepGraph ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2398 of file rtfgen.cpp.

2399{
2400 DBG_RTF(m_t << "{\\comment (startDirDepGraph)}\n")
2401}

References DBG_RTF, and OutputGenerator::m_t.

◆ startDotGraph()

void RTFGenerator::startDotGraph ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2323 of file rtfgen.cpp.

2324{
2325 DBG_RTF(m_t << "{\\comment (startDotGraph)}\n")
2326}

References DBG_RTF, and OutputGenerator::m_t.

◆ startDoxyAnchor()

void RTFGenerator::startDoxyAnchor ( const DString & ,
const DString & ,
const DString & ,
const DString & ,
const DString &  )
overridevirtual

Implements OutputGenIntf.

Definition at line 1715 of file rtfgen.cpp.

1719{
1720 DBG_RTF(m_t << "{\\comment startDoxyAnchor}\n")
1721}

References DBG_RTF, and OutputGenerator::m_t.

◆ startEmbeddedDoc()

void RTFGenerator::startEmbeddedDoc ( size_t )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 309 of file rtfgen.h.

309{}

◆ startEmphasis()

void RTFGenerator::startEmphasis ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 178 of file rtfgen.h.

178{ m_t << "{\\i "; }

References OutputGenerator::m_t.

Referenced by startConstraintParam(), startConstraintType(), startMemberDescription(), startMemberGroupDocs(), and startPageRef().

◆ startExamples()

void RTFGenerator::startExamples ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2574 of file rtfgen.cpp.

2575{
2576 DBG_RTF(m_t << "{\\comment (startExamples)}\n")
2577 m_t << "{"; // ends at endDescList
2578 m_t << "{"; // ends at endDescTitle
2579 startBold();
2580 newParagraph();
2581 docify(theTranslator->trExamples());
2582 endBold();
2583 m_t << "}";
2584 newParagraph();
2587}

References DBG_RTF, docify(), endBold(), incIndentLevel(), OutputGenerator::m_t, newParagraph(), rtf_DList_DepthStyle(), rtf_Style_Reset, startBold(), theTranslator, and Translator::trExamples().

◆ startFile()

void RTFGenerator::startFile ( const DString & name,
bool isSource,
const DString & manName,
const DString & title,
int id,
int hierarchyLevel )
overridevirtual

Implements OutputGenIntf.

Definition at line 708 of file rtfgen.cpp.

709{
710 //setEncoding(DString().sprintf("CP%s",theTranslator->trRTFansicp()));
711 DString fileName=name;
713 m_hierarchyLevel = hierarchyLevel;
714
715 if (!fileName.endsWith(".rtf")) fileName+=".rtf";
720}
bool endsWith(const char *s) const
Definition dstring.h:617
void setRelativePath(const DString &path)
Definition rtfgen.cpp:387
void startPlainFile(const DString &name) override
Definition rtfgen.h:306
void beginRTFDocument()
Definition rtfgen.cpp:529
DString relativePathToRoot(const DString &name)
Definition util.cpp:2912

References beginRTFDocument(), DString::endsWith(), OutputGenerator::fileName(), m_hierarchyLevel, m_relPath, relativePathToRoot(), setRelativePath(), setSourceFileName(), startPlainFile(), and stripPath().

◆ startGroupCollaboration()

void RTFGenerator::startGroupCollaboration ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2368 of file rtfgen.cpp.

2369{
2370}

◆ startGroupHeader()

void RTFGenerator::startGroupHeader ( const DString & ,
int extraIndent )
overridevirtual

Implements OutputGenIntf.

Definition at line 1647 of file rtfgen.cpp.

1648{
1649 DBG_RTF(m_t << "{\\comment startGroupHeader}\n")
1651 extraIndent += m_hierarchyLevel;
1652 if (extraIndent>=2)
1653 {
1654 m_t << rtf_Style["Heading5"].reference();
1655 }
1656 else if (extraIndent==1)
1657 {
1658 m_t << rtf_Style["Heading4"].reference();
1659 }
1660 else // extraIndent==0
1661 {
1662 m_t << rtf_Style["Heading3"].reference();
1663 }
1664 m_t << "\n";
1665}

References DBG_RTF, m_hierarchyLevel, OutputGenerator::m_t, rtf_Style, and rtf_Style_Reset.

Referenced by startMemberHeader().

◆ startHeaderSection()

void RTFGenerator::startHeaderSection ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 152 of file rtfgen.h.

152{}

◆ startInclDepGraph()

void RTFGenerator::startInclDepGraph ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2346 of file rtfgen.cpp.

2347{
2348 DBG_RTF(m_t << "{\\comment (startInclDepGraph)}\n")
2349}

References DBG_RTF, and OutputGenerator::m_t.

◆ startIndent()

void RTFGenerator::startIndent ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1766 of file rtfgen.cpp.

1767{
1769 DBG_RTF(m_t << "{\\comment (startIndent) }\n")
1770 m_t << "{\n";
1772}

References DBG_RTF, incIndentLevel(), OutputGenerator::m_t, rtf_CList_DepthStyle(), and rtf_Style_Reset.

◆ startIndexItem()

void RTFGenerator::startIndexItem ( const DString & ref,
const DString & file )
overridevirtual

Implements OutputGenIntf.

Definition at line 1418 of file rtfgen.cpp.

1419{
1420 DBG_RTF(m_t << "{\\comment (startIndexItem)}\n")
1421
1422 if (!m_omitParagraph)
1423 {
1424 m_t << "\\par\n";
1425 m_omitParagraph = true;
1426 }
1427}

References DBG_RTF, m_omitParagraph, and OutputGenerator::m_t.

◆ startIndexKey()

void RTFGenerator::startIndexKey ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1469 of file rtfgen.cpp.

1470{
1471 DBG_RTF(m_t << "{\\comment (startIndexKey)}\n")
1472 m_t << "{\\b ";
1473}

References DBG_RTF, and OutputGenerator::m_t.

◆ startIndexList()

void RTFGenerator::startIndexList ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1348 of file rtfgen.cpp.

1349{
1350 DBG_RTF(m_t << "{\\comment (startIndexList)}\n")
1351 m_t << "{\n";
1352 m_t << "\\par\n";
1355 m_omitParagraph = true;
1356}
DString rtf_LCList_DepthStyle()
Definition rtfgen.cpp:2073

References DBG_RTF, incIndentLevel(), m_omitParagraph, OutputGenerator::m_t, rtf_LCList_DepthStyle(), and rtf_Style_Reset.

◆ startIndexListItem()

void RTFGenerator::startIndexListItem ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2724 of file rtfgen.cpp.

2725{
2726 DBG_RTF(m_t << "{\\comment (startIndexListItem)}\n")
2727}

References DBG_RTF, and OutputGenerator::m_t.

◆ startIndexSection()

void RTFGenerator::startIndexSection ( IndexSection is)
overridevirtual

Implements OutputGenIntf.

Definition at line 742 of file rtfgen.cpp.

743{
744 //DString paperName;
745
746 //m_indentLevel = 0;
747
748 switch (is)
749 {
751 // basic RTFstart
752 // get readyfor author etc
753
754 m_t << "{\\info \n";
755 m_t << "{\\title {\\comment ";
756 break;
758 m_t << "}\n";
759 if (!rtf_subject.empty()) m_t << "{\\subject " << rtf_subject << "}\n";
760 if (!rtf_comments.empty()) m_t << "{\\comment " << rtf_comments << "}\n";
761 if (!rtf_company.empty()) m_t << "{\\company " << rtf_company << "}\n";
762 if (!rtf_author.empty()) m_t << "{\\author " << rtf_author << "}\n";
763 if (!rtf_manager.empty()) m_t << "{\\manager " << rtf_manager << "}\n";
764 if (!rtf_documentType.empty()) m_t << "{\\category " << rtf_documentType << "}\n";
765 if (!rtf_keywords.empty()) m_t << "{\\keywords " << rtf_keywords << "}\n";
766 m_t << "{\\comment ";
767 break;
769 //Introduction
771 break;
773 //Topic Index
775 break;
777 //Module Index
779 break;
781 //Directory Index
783 break;
785 //Namespace Index
787 break;
789 //Concept Index
791 break;
793 //Hierarchical Index
794 DBG_RTF(m_t << "{\\comment start classhierarchy}\n")
796 break;
797 case IndexSection::isCompoundIndex:
798 //Annotated Compound Index
800 break;
801 case IndexSection::isFileIndex:
802 //Annotated File Index
804 break;
805 case IndexSection::isPageIndex:
806 //Related Page Index
808 break;
809 case IndexSection::isTopicDocumentation:
810 {
811 //Topic Documentation
812 for (const auto &gd : *Doxygen::groupLinkedMap)
813 {
814 if (!gd->isReference())
815 {
817 break;
818 }
819 }
820 }
821 break;
823 {
824 //Module Documentation
825 for (const auto &mod : ModuleManager::instance().modules())
826 {
827 if (!mod->isReference() && mod->isPrimaryInterface())
828 {
830 break;
831 }
832 }
833 }
834 break;
836 {
837 //Directory Documentation
838 for (const auto &dd : *Doxygen::dirLinkedMap)
839 {
840 if (dd->isLinkableInProject())
841 {
843 break;
844 }
845 }
846 }
847 break;
849 {
850 // Namespace Documentation
851 for (const auto &nd : *Doxygen::namespaceLinkedMap)
852 {
853 if (nd->isLinkableInProject())
854 {
856 break;
857 }
858 }
859 }
860 break;
862 {
863 // Concept Documentation
864 for (const auto &cd : *Doxygen::conceptLinkedMap)
865 {
866 if (cd->isLinkableInProject())
867 {
869 break;
870 }
871 }
872 }
873 break;
875 {
876 //Compound Documentation
877 for (const auto &cd : *Doxygen::classLinkedMap)
878 {
879 if (cd->isLinkableInProject() &&
880 !cd->isImplicitTemplateInstance() &&
881 !cd->isEmbeddedInOuterScope() &&
882 !cd->isAlias()
883 )
884 {
886 break;
887 }
888 }
889 }
890 break;
892 {
893 //File Documentation
894 bool isFirst=true;
895 for (const auto &fn : *Doxygen::inputNameLinkedMap)
896 {
897 for (const auto &fd : *fn)
898 {
899 if (fd->isLinkableInProject() || fd->generateSourceFile())
900 {
901 if (isFirst)
902 {
904 isFirst=false;
905 break;
906 }
907 }
908 }
909 if (!isFirst)
910 {
911 break;
912 }
913 }
914 }
915 break;
917 {
918 //Example Documentation
920 }
921 break;
923 break;
925 break;
927 break;
928 }
929}
@ isMainPage
Definition index.h:34
DString rtf_comments
Definition rtfstyle.cpp:30
DString rtf_subject
Definition rtfstyle.cpp:29
DString rtf_manager
Definition rtfstyle.cpp:34
DString rtf_keywords
Definition rtfstyle.cpp:37

References beginRTFChapter(), Doxygen::classLinkedMap, Doxygen::conceptLinkedMap, DBG_RTF, Doxygen::dirLinkedMap, DString::empty(), Doxygen::groupLinkedMap, Doxygen::inputNameLinkedMap, ModuleManager::instance(), isClassDocumentation, isClassHierarchyIndex, isCompoundIndex, isConceptDocumentation, isConceptIndex, isDirDocumentation, isDirIndex, isEndIndex, isExampleDocumentation, isFileDocumentation, isFileIndex, isMainPage, isModuleDocumentation, isModuleIndex, isNamespaceDocumentation, isNamespaceIndex, isPageDocumentation, isPageDocumentation2, isPageIndex, isTitlePageAuthor, isTitlePageStart, isTopicDocumentation, isTopicIndex, OutputGenerator::m_t, Doxygen::namespaceLinkedMap, rtf_author, rtf_comments, rtf_company, rtf_documentType, rtf_keywords, rtf_manager, and rtf_subject.

◆ startIndexValue()

void RTFGenerator::startIndexValue ( bool hasBrief)
overridevirtual

Implements OutputGenIntf.

Definition at line 1480 of file rtfgen.cpp.

1481{
1482 DBG_RTF(m_t << "{\\comment (startIndexValue)}\n")
1483 m_t << " ";
1484 if (hasBrief) m_t << "(";
1485}

References DBG_RTF, and OutputGenerator::m_t.

◆ startInlineHeader()

void RTFGenerator::startInlineHeader ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2735 of file rtfgen.cpp.

2736{
2737 DBG_RTF(m_t << "{\\comment (startInlineHeader)}\n")
2738 m_t << "{\n";
2739 m_t << rtf_Style_Reset << rtf_Style["Heading5"].reference();
2740 startBold();
2741}

References DBG_RTF, OutputGenerator::m_t, rtf_Style, rtf_Style_Reset, and startBold().

◆ startInlineMemberDoc()

void RTFGenerator::startInlineMemberDoc ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2822 of file rtfgen.cpp.

2823{
2824 DBG_RTF(m_t << "{\\comment (startInlineMemberDoc)}\n")
2825 m_t << "{";
2826}

References DBG_RTF, and OutputGenerator::m_t.

◆ startInlineMemberName()

void RTFGenerator::startInlineMemberName ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2810 of file rtfgen.cpp.

2811{
2812 DBG_RTF(m_t << "{\\comment (startInlineMemberName)}\n")
2813 m_t << "{";
2814}

References DBG_RTF, and OutputGenerator::m_t.

◆ startInlineMemberType()

void RTFGenerator::startInlineMemberType ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2798 of file rtfgen.cpp.

2799{
2800 DBG_RTF(m_t << "{\\comment (startInlineMemberType)}\n")
2801 m_t << "{\\qr ";
2802}

References DBG_RTF, and OutputGenerator::m_t.

◆ startItemList()

void RTFGenerator::startItemList ( )
overridevirtual

start bullet list

Implements OutputGenIntf.

Definition at line 1371 of file rtfgen.cpp.

1372{
1373 newParagraph();
1375 int level = indentLevel();
1376 DBG_RTF(m_t << "{\\comment (startItemList level=" << level << ") }\n")
1377 m_t << "{";
1378 m_listItemInfo[level].number = 1;
1379 m_listItemInfo[level].isEnum = false;
1380 m_listItemInfo[level].type = '1';
1381}
OutputType type() const override
Definition rtfgen.h:101

References DBG_RTF, incIndentLevel(), indentLevel(), m_listItemInfo, OutputGenerator::m_t, and newParagraph().

◆ startItemListItem()

void RTFGenerator::startItemListItem ( )
overridevirtual

write bullet or enum item

Implements OutputGenIntf.

Definition at line 1394 of file rtfgen.cpp.

1395{
1396 DBG_RTF(m_t << "{\\comment (startItemListItem)}\n")
1397 newParagraph();
1399 int level = indentLevel();
1400 if (m_listItemInfo[level].isEnum)
1401 {
1402 m_t << rtf_EList_DepthStyle() << "\n";
1403 m_t << m_listItemInfo[level].number << ".\\tab ";
1404 m_listItemInfo[level].number++;
1405 }
1406 else
1407 {
1408 m_t << rtf_BList_DepthStyle() << "\n";
1409 }
1410 m_omitParagraph = true;
1411}
DString rtf_BList_DepthStyle()
Definition rtfgen.cpp:2080
DString rtf_EList_DepthStyle()
Definition rtfgen.cpp:2087

References DBG_RTF, indentLevel(), m_listItemInfo, m_omitParagraph, OutputGenerator::m_t, newParagraph(), rtf_BList_DepthStyle(), rtf_EList_DepthStyle(), and rtf_Style_Reset.

◆ startLabels()

void RTFGenerator::startLabels ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2834 of file rtfgen.cpp.

2835{
2836}

◆ startLocalToc()

void RTFGenerator::startLocalToc ( int )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 301 of file rtfgen.h.

301{}

◆ startMemberDeclaration()

void RTFGenerator::startMemberDeclaration ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 199 of file rtfgen.h.

199{}

◆ startMemberDescription()

void RTFGenerator::startMemberDescription ( const DString & ,
const DString & ,
bool  )
overridevirtual

Implements OutputGenIntf.

Definition at line 1781 of file rtfgen.cpp.

1782{
1783 DBG_RTF(m_t << "{\\comment (startMemberDescription)}\n")
1784 m_t << "{\n";
1787 startEmphasis();
1788}

References DBG_RTF, incIndentLevel(), OutputGenerator::m_t, rtf_CList_DepthStyle(), rtf_Style_Reset, and startEmphasis().

◆ startMemberDoc()

void RTFGenerator::startMemberDoc ( const DString & clname,
const DString & memname,
const DString & ,
const DString & ,
int ,
int ,
bool showInline )
overridevirtual

Implements OutputGenIntf.

Definition at line 1674 of file rtfgen.cpp.

1681{
1682 DBG_RTF(m_t << "{\\comment startMemberDoc}\n")
1683 if (!memname.empty() && memname[0]!='@')
1684 {
1685 addIndexItem(memname,clname);
1686 addIndexItem(clname,memname);
1687 }
1688
1689 int level = 4 + m_hierarchyLevel;
1690 if (showInline)
1691 ++level;
1692 if (level > 5)
1693 level = 5;
1694 if (level < 1)
1695 level = 1;
1696 m_t << rtf_Style_Reset << rtf_Style[DString().sprintf("Heading%d", level).str()].reference();
1697 //styleStack.push(rtf_Style_Heading4);
1698 m_t << "{\n";
1699 //printf("RTFGenerator::startMemberDoc() '%s'\n",rtf_Style["Heading4"].reference());
1700 startBold();
1701 m_t << "\n";
1702}

References addIndexItem(), DBG_RTF, DString::empty(), m_hierarchyLevel, OutputGenerator::m_t, rtf_Style, rtf_Style_Reset, DString::sprintf(), startBold(), and DString::str().

◆ startMemberDocList()

void RTFGenerator::startMemberDocList ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 158 of file rtfgen.h.

158{}

◆ startMemberDocName()

void RTFGenerator::startMemberDocName ( bool )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 265 of file rtfgen.h.

265{}

◆ startMemberDocPrefixItem()

void RTFGenerator::startMemberDocPrefixItem ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 263 of file rtfgen.h.

263{}

◆ startMemberDocSimple()

void RTFGenerator::startMemberDocSimple ( bool isEnum)
overridevirtual

Implements OutputGenIntf.

Definition at line 2751 of file rtfgen.cpp.

2752{
2753 DBG_RTF(m_t << "{\\comment (startMemberDocSimple)}\n")
2754 m_t << "{\\par\n";
2755 m_t << "{" << rtf_Style["Heading5"].reference() << "\n";
2756 if (isEnum)
2757 {
2759 }
2760 else
2761 {
2763 }
2764 m_t << ":\\par}\n";
2766 m_t << "\\trowd \\trgaph108\\trleft426\\tblind426"
2767 "\\trbrdrt\\brdrs\\brdrw10\\brdrcf15 "
2768 "\\trbrdrl\\brdrs\\brdrw10\\brdrcf15 "
2769 "\\trbrdrb\\brdrs\\brdrw10\\brdrcf15 "
2770 "\\trbrdrr\\brdrs\\brdrw10\\brdrcf15 "
2771 "\\trbrdrh\\brdrs\\brdrw10\\brdrcf15 "
2772 "\\trbrdrv\\brdrs\\brdrw10\\brdrcf15 \n";
2773 int n=3,columnPos[3] = { 25, 50, 100 };
2774 if (isEnum)
2775 {
2776 columnPos[0]=30;
2777 columnPos[1]=100;
2778 n=2;
2779 }
2780 for (int i=0;i<n;i++)
2781 {
2782 m_t << "\\clvertalt\\clbrdrt\\brdrs\\brdrw10\\brdrcf15 "
2783 "\\clbrdrl\\brdrs\\brdrw10\\brdrcf15 "
2784 "\\clbrdrb\\brdrs\\brdrw10\\brdrcf15 "
2785 "\\clbrdrr \\brdrs\\brdrw10\\brdrcf15 "
2786 "\\cltxlrtb "
2787 "\\cellx" << (rtf_pageWidth*columnPos[i]/100) << "\n";
2788 }
2789 m_t << "\\pard \\widctlpar\\intbl\\adjustright\n";
2790}
virtual DString trCompoundMembers()=0
virtual DString trEnumerationValues()=0

References DBG_RTF, OutputGenerator::m_t, rtf_DList_DepthStyle(), rtf_pageWidth, rtf_Style, rtf_Style_Reset, theTranslator, Translator::trCompoundMembers(), and Translator::trEnumerationValues().

◆ startMemberGroup()

void RTFGenerator::startMemberGroup ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2561 of file rtfgen.cpp.

2562{
2563 DBG_RTF(m_t << "{\\comment startMemberGroup}\n")
2565}

References DBG_RTF, OutputGenerator::m_t, rtf_BList_DepthStyle(), and rtf_Style_Reset.

◆ startMemberGroupDocs()

void RTFGenerator::startMemberGroupDocs ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2548 of file rtfgen.cpp.

2549{
2550 DBG_RTF(m_t << "{\\comment startMemberGroupDocs}\n")
2551 startEmphasis();
2552}

References DBG_RTF, OutputGenerator::m_t, and startEmphasis().

◆ startMemberGroupHeader()

void RTFGenerator::startMemberGroupHeader ( const DString & ,
bool hasHeader )
overridevirtual

Implements OutputGenIntf.

Definition at line 2533 of file rtfgen.cpp.

2534{
2535 DBG_RTF(m_t << "{\\comment startMemberGroupHeader}\n")
2536 m_t << "{\n";
2537 if (hasHeader) incIndentLevel();
2538 m_t << rtf_Style_Reset << rtf_Style["GroupHeader"].reference();
2539}

References DBG_RTF, incIndentLevel(), OutputGenerator::m_t, rtf_Style, and rtf_Style_Reset.

◆ startMemberHeader()

void RTFGenerator::startMemberHeader ( const DString & ,
int  )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 154 of file rtfgen.h.

154{ startGroupHeader("",0); }
void startGroupHeader(const DString &, int) override
Definition rtfgen.cpp:1647

References startGroupHeader().

◆ startMemberItem()

void RTFGenerator::startMemberItem ( const DString & ,
MemberItemType ,
const DString &  )
overridevirtual

Implements OutputGenIntf.

Definition at line 1885 of file rtfgen.cpp.

1886{
1887 DBG_RTF(m_t << "{\\comment startMemberItem }\n")
1888 m_t << rtf_Style_Reset << rtf_BList_DepthStyle() << "\n"; // set style to appropriate depth
1889}

References DBG_RTF, OutputGenerator::m_t, rtf_BList_DepthStyle(), and rtf_Style_Reset.

◆ startMemberList()

void RTFGenerator::startMemberList ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1932 of file rtfgen.cpp.

1933{
1934 m_t << "\n";
1935 DBG_RTF(m_t << "{\\comment (startMemberList) }\n")
1936 m_t << "{\n";
1937#ifdef DELETEDCODE
1938 if (!insideTabbing)
1939 m_t << "\\begin{CompactItemize}\n";
1940#endif
1941}

References DBG_RTF, and OutputGenerator::m_t.

◆ startMemberSections()

void RTFGenerator::startMemberSections ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 150 of file rtfgen.h.

150{}

◆ startMemberSubtitle()

void RTFGenerator::startMemberSubtitle ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2147 of file rtfgen.cpp.

2148{
2149 DBG_RTF(m_t << "{\\comment startMemberSubtitle}\n")
2150 m_t << "{\n";
2152}

References DBG_RTF, OutputGenerator::m_t, rtf_CList_DepthStyle(), and rtf_Style_Reset.

◆ startMemberTemplateParams()

void RTFGenerator::startMemberTemplateParams ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 168 of file rtfgen.h.

168{}

◆ startPageDoc()

void RTFGenerator::startPageDoc ( const DString & )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 112 of file rtfgen.h.

112{}

◆ startPageRef()

void RTFGenerator::startPageRef ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1593 of file rtfgen.cpp.

1594{
1595 m_t << " (";
1596 startEmphasis();
1597}

References OutputGenerator::m_t, and startEmphasis().

◆ startParagraph()

void RTFGenerator::startParagraph ( const DString & classDef)
overridevirtual

Implements OutputGenIntf.

Definition at line 2132 of file rtfgen.cpp.

2133{
2134 DBG_RTF(m_t << "{\\comment startParagraph}\n")
2135 newParagraph();
2136 m_t << "{\n";
2137 if (DString(txt) == "reference") m_t << "\\ql\n";
2138}

References DBG_RTF, OutputGenerator::m_t, and newParagraph().

◆ startParameterDefVal()

void RTFGenerator::startParameterDefVal ( const char * s)
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 273 of file rtfgen.h.

273{ docify(s); startTypewriter(); }
void startTypewriter() override
Definition rtfgen.h:143

References docify(), and startTypewriter().

◆ startParameterExtra()

void RTFGenerator::startParameterExtra ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 271 of file rtfgen.h.

271{}

◆ startParameterList()

void RTFGenerator::startParameterList ( bool openBracket)
overridevirtual

Implements OutputGenIntf.

Definition at line 2861 of file rtfgen.cpp.

2862{
2863 if (openBracket) m_t << "(";
2864}

References OutputGenerator::m_t.

◆ startParameterName()

void RTFGenerator::startParameterName ( bool )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 269 of file rtfgen.h.

269{}

◆ startParameterType()

void RTFGenerator::startParameterType ( bool first,
const DString & key )
overridevirtual

Implements OutputGenIntf.

Definition at line 2599 of file rtfgen.cpp.

2600{
2601 DBG_RTF(m_t << "{\\comment (startParameterType)}\n")
2602 if (!first && !key.empty())
2603 {
2604 m_t << " " << key << " ";
2605 }
2606}

References DBG_RTF, DString::empty(), and OutputGenerator::m_t.

◆ startPlainFile()

void RTFGenerator::startPlainFile ( const DString & name)
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 306 of file rtfgen.h.

void startPlainFile(const DString &name)
Definition outputgen.cpp:28

References OutputGenerator::startPlainFile().

Referenced by startFile().

◆ startProjectNumber()

void RTFGenerator::startProjectNumber ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 731 of file rtfgen.cpp.

732{
733 DBG_RTF(m_t << "{\\comment startProjectNumber }\n")
734 m_t << " ";
735}

References DBG_RTF, and OutputGenerator::m_t.

◆ startQuickIndices()

void RTFGenerator::startQuickIndices ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 217 of file rtfgen.h.

217{}

◆ startSection()

void RTFGenerator::startSection ( const DString & ,
const DString & title,
SectionType type )
overridevirtual

Implements OutputGenIntf.

Definition at line 1810 of file rtfgen.cpp.

1811{
1812 DBG_RTF(m_t << "{\\comment (startSection)}\n")
1813 m_t << "{";
1815 int num=SectionType::MaxLevel;
1816 switch(type.level())
1817 {
1818 case SectionType::Page: num=2+m_hierarchyLevel; break;
1819 case SectionType::Section: num=3+m_hierarchyLevel; break;
1820 case SectionType::Subsection: // fall through
1821 case SectionType::Subsubsection: // fall through
1822 case SectionType::Paragraph: // fall through
1823 case SectionType::Subparagraph: // fall through
1825 default: ASSERT(0); break;
1826 }
1827 num = std::clamp(num, SectionType::MinLevel, SectionType::MaxLevel);
1828 DString heading;
1829 heading.sprintf("Heading%d",num);
1830 // set style
1831 m_t << rtf_Style[heading.str()].reference();
1832 // make table of contents entry
1833 m_t << "{\\tc\\tcl" << num << " \\v ";
1834 docify(title);
1835 m_t << "}\n";
1836}
DString & sprintf(const char *format,...)
Definition dstring.cpp:34
static constexpr int Section
Definition section.h:33
static constexpr int MaxLevel
Definition section.h:39
static constexpr int Subsection
Definition section.h:34
static constexpr int Subsubsection
Definition section.h:35
static constexpr int Page
Definition section.h:31
static constexpr int MinLevel
Definition section.h:32
static constexpr int Paragraph
Definition section.h:36
static constexpr int Subsubparagraph
Definition section.h:38
static constexpr int Subparagraph
Definition section.h:37

References ASSERT, DBG_RTF, docify(), SectionType::level(), m_hierarchyLevel, OutputGenerator::m_t, SectionType::MaxLevel, SectionType::MinLevel, SectionType::Page, SectionType::Paragraph, rtf_Style, rtf_Style_Reset, SectionType::Section, DString::sprintf(), DString::str(), SectionType::Subparagraph, SectionType::Subsection, SectionType::Subsubparagraph, SectionType::Subsubsection, and type().

◆ startSmall()

void RTFGenerator::startSmall ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 194 of file rtfgen.h.

194{ m_t << "{\\sub "; }

References OutputGenerator::m_t.

◆ startTextBlock()

void RTFGenerator::startTextBlock ( bool dense)
overridevirtual

Implements OutputGenIntf.

Definition at line 2099 of file rtfgen.cpp.

2100{
2101 DBG_RTF(m_t << "{\\comment startTextBlock}\n")
2102 m_t << "{\n";
2104 if (dense) // no spacing between "paragraphs"
2105 {
2106 m_t << rtf_Style["DenseText"].reference();
2107 }
2108 else // some spacing
2109 {
2110 m_t << rtf_Style["BodyText"].reference();
2111 }
2112}

References DBG_RTF, OutputGenerator::m_t, rtf_Style, and rtf_Style_Reset.

◆ startTextLink()

void RTFGenerator::startTextLink ( const DString & f,
const DString & anchor )
overridevirtual

Implements OutputGenIntf.

Definition at line 1522 of file rtfgen.cpp.

1523{
1524 if (Config_getBool(RTF_HYPERLINKS))
1525 {
1526 DString ref;
1527 if (!f.empty())
1528 {
1529 ref+=stripPath(f);
1530 }
1531 if (!anchor.empty())
1532 {
1533 ref+='_';
1534 ref+=anchor;
1535 }
1536
1537 m_t << "{\\field {\\*\\fldinst { HYPERLINK \\\\l \"";
1538 m_t << rtfFormatBmkStr(ref);
1539 m_t << "\" }{}";
1540 m_t << "}{\\fldrslt {\\cs37\\ul\\cf2 ";
1541 }
1542}

References Config_getBool, DString::empty(), OutputGenerator::m_t, rtfFormatBmkStr(), and stripPath().

◆ startTitleHead()

void RTFGenerator::startTitleHead ( const DString & )
overridevirtual

Implements OutputGenIntf.

Definition at line 1616 of file rtfgen.cpp.

1617{
1618 DBG_RTF(m_t << "{\\comment startTitleHead}\n")
1619 int level = 2 + m_hierarchyLevel;
1620 DString heading;
1621 heading.sprintf("Heading%d", level);
1622 // beginRTFSection();
1623 m_t << rtf_Style_Reset << rtf_Style[heading.str()].reference() << "\n";
1624}

References DBG_RTF, m_hierarchyLevel, OutputGenerator::m_t, rtf_Style, rtf_Style_Reset, DString::sprintf(), and DString::str().

◆ startTocEntry()

void RTFGenerator::startTocEntry ( const SectionInfo * )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 303 of file rtfgen.h.

303{}

◆ startTypewriter()

void RTFGenerator::startTypewriter ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 143 of file rtfgen.h.

143{ m_t << "{\\f2 "; }

References OutputGenerator::m_t.

Referenced by startParameterDefVal().

◆ type()

OutputType RTFGenerator::type ( ) const
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 101 of file rtfgen.h.

101{ return OutputType::RTF; }

References RTF.

Referenced by startSection().

◆ writeAnchor()

void RTFGenerator::writeAnchor ( const DString & fileName,
const DString & name )
overridevirtual

Implements OutputGenIntf.

Definition at line 1897 of file rtfgen.cpp.

1898{
1899 DString anchor;
1900 if (!fileName.empty())
1901 {
1902 anchor+=stripPath(fileName);
1903 }
1904 if (!fileName.empty() && !name.empty())
1905 {
1906 anchor+='_';
1907 }
1908 if (!name.empty())
1909 {
1910 anchor+=name;
1911 }
1912 //printf("writeAnchor(%s->%s)\n",qPrint(anchor),qPrint(rtfFormatBmkStr(anchor)));
1913
1914 DBG_RTF(m_t << "{\\comment writeAnchor (" << anchor << ")}\n")
1915 m_t << "{\\bkmkstart " << rtfFormatBmkStr(anchor) << "}\n";
1916 m_t << "{\\bkmkend " << rtfFormatBmkStr(anchor) << "}\n";
1917}

References DBG_RTF, DString::empty(), OutputGenerator::fileName(), OutputGenerator::m_t, rtfFormatBmkStr(), and stripPath().

Referenced by endSection(), and endTitleHead().

◆ writeChar()

void RTFGenerator::writeChar ( char c)
overridevirtual

Implements OutputGenIntf.

Definition at line 1855 of file rtfgen.cpp.

1856{
1857 char cs[2];
1858 cs[0]=c;
1859 cs[1]=0;
1860 docify(cs);
1861}

References docify().

◆ writeDoc()

void RTFGenerator::writeDoc ( const IDocNodeAST * ast,
const Definition * ctx,
const MemberDef * ,
int ,
int  )
overridevirtual

Implements OutputGenIntf.

Definition at line 2628 of file rtfgen.cpp.

2629{
2630 auto astImpl = dynamic_cast<const DocNodeAST*>(ast);
2631 if (astImpl)
2632 {
2633 RTFDocVisitor visitor(m_t,*m_codeList,ctx?ctx->getDefFileExtension():DString(""),m_hierarchyLevel);
2634 std::visit(visitor,astImpl->root);
2635 }
2636 m_omitParagraph = true;
2637}
virtual DString getDefFileExtension() const =0

References Definition::getDefFileExtension(), m_codeList, m_hierarchyLevel, m_omitParagraph, and OutputGenerator::m_t.

Referenced by endIndexSection().

◆ writeExtensionsFile()

void RTFGenerator::writeExtensionsFile ( TextStream & t)
static

Definition at line 412 of file rtfgen.cpp.

413{
414 t << "# Generated by doxygen " << getDoxygenVersion() << "\n\n";
415 t << "# This file describes extensions used for generating RTF output.\n";
416 t << "# All text after a hash (#) is considered a comment and will be ignored.\n";
417 t << "# Remove a hash to activate a line.\n\n";
418
419 t << "# Overrides the project title.\n";
420
421 t << "#Title = \n\n";
422
423 t << "# Name of the company that produced this document.\n";
424 t << "#Company = \n\n";
425
426 t << "# Filename of a company or project logo.\n";
427 t << "#LogoFilename = \n\n";
428
429 t << "# Author of the document.\n";
430 t << "#Author = \n\n";
431
432 t << "# Type of document (e.g. Design Specification, User Manual, etc.).\n";
433 t << "#DocumentType = \n\n";
434
435 t << "# Document tracking number.\n";
436 t << "#DocumentId = \n\n";
437
438 t << "# Name of the author's manager.\n";
439 t << "# This field is not displayed in the document itself, but it is \n";
440 t << "# available in the information block of the rtf file. In Microsoft \n";
441 t << "# Word, it is available under File:Properties.\n";
442 t << "#Manager = \n\n";
443
444 t << "# Subject of the document.\n";
445 t << "# This field is not displayed in the document itself, but it is \n";
446 t << "# available in the information block of the rtf file. In Microsoft \n";
447 t << "# Word, it is available under File:Properties.\n";
448 t << "#Subject = \n\n";
449
450 t << "# Comments regarding the document.\n";
451 t << "# This field is not displayed in the document itself, but it is \n";
452 t << "# available in the information block of the rtf file. In Microsoft \n";
453 t << "# Word, it is available under File:Properties.\n";
454 t << "#Comments = \n\n";
455
456 t << "# Keywords associated with the document.\n";
457 t << "# This field is not displayed in the document itself, but it is \n";
458 t << "# available in the information block of the rtf file. In Microsoft \n";
459 t << "# Word, it is available under File:Properties.\n";
460 t << "#Keywords = \n\n";
461}

Referenced by readConfiguration().

◆ writeFooter()

void RTFGenerator::writeFooter ( const DString & )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 110 of file rtfgen.h.

110{}

◆ writeGraphicalHierarchy()

void RTFGenerator::writeGraphicalHierarchy ( DotGfxHierarchyTable & )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 250 of file rtfgen.h.

250{}

◆ writeInheritedSectionTitle()

void RTFGenerator::writeInheritedSectionTitle ( const DString & ,
const DString & ref,
const DString & file,
const DString & anchor,
const DString & title,
const DString & name )
overridevirtual

Implements OutputGenIntf.

Definition at line 2848 of file rtfgen.cpp.

2852{
2854 m_t << rtf_Style["Heading4"].reference();
2855 m_t << "\n";
2856 m_t << theTranslator->trInheritedFrom(docifyToString(title), objectLinkToString(ref, file, anchor, name));
2857 m_t << "\\par\n";
2858 m_t << rtf_Style_Reset << "\n";
2859}
virtual DString trInheritedFrom(const DString &members, const DString &what)=0
static DString objectLinkToString(const DString &ref, const DString &f, const DString &anchor, const DString &text)
Definition rtfgen.cpp:1552

References docifyToString(), OutputGenerator::m_t, objectLinkToString(), rtf_Style, rtf_Style_Reset, theTranslator, and Translator::trInheritedFrom().

◆ writeLabel()

void RTFGenerator::writeLabel ( const DString & l,
bool isLast )
overridevirtual

Implements OutputGenIntf.

Definition at line 2838 of file rtfgen.cpp.

2839{
2840 m_t << "{\\f2 [" << l << "]}";
2841 if (!isLast) m_t << ", ";
2842}

References OutputGenerator::m_t.

◆ writeLatexSpacing()

void RTFGenerator::writeLatexSpacing ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 189 of file rtfgen.h.

189{}//{ m_t << "\\hspace{0.3cm}"; }

◆ writeLogo()

void RTFGenerator::writeLogo ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 221 of file rtfgen.h.

221{}

◆ writeNavigationPath()

void RTFGenerator::writeNavigationPath ( const DString & )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 220 of file rtfgen.h.

220{}

◆ writeNonBreakableSpace()

void RTFGenerator::writeNonBreakableSpace ( int )
overridevirtual

Implements OutputGenIntf.

Definition at line 1926 of file rtfgen.cpp.

1927{
1928 m_t << "\\~ ";
1929}

References OutputGenerator::m_t.

◆ writeObjectLink()

void RTFGenerator::writeObjectLink ( const DString & ref,
const DString & file,
const DString & anchor,
const DString & name )
overridevirtual

Implements OutputGenIntf.

Definition at line 1587 of file rtfgen.cpp.

1589{
1590 m_t << objectLinkToString(ref,f,anchor,text);
1591}

References OutputGenerator::m_t, and objectLinkToString().

◆ writePageLink()

void RTFGenerator::writePageLink ( const DString & name,
bool  )
overridevirtual

Implements OutputGenIntf.

Definition at line 1312 of file rtfgen.cpp.

1313{
1314 m_t << "\\par " << rtf_Style_Reset << "\n";
1315 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"";
1316 m_t << name;
1317 m_t << ".rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1318}

References OutputGenerator::m_t, and rtf_Style_Reset.

Referenced by endIndexSection().

◆ writePageOutline()

void RTFGenerator::writePageOutline ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 224 of file rtfgen.h.

224{}

◆ writeQuickLinks()

void RTFGenerator::writeQuickLinks ( HighlightedItem ,
const DString & ,
bool  )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 222 of file rtfgen.h.

222{}

◆ writeRTFReference()

void RTFGenerator::writeRTFReference ( const DString & label)
private

Definition at line 1919 of file rtfgen.cpp.

1920{
1921 m_t << "{\\field\\fldedit {\\*\\fldinst PAGEREF ";
1922 m_t << rtfFormatBmkStr(stripPath(label));
1923 m_t << " \\\\*MERGEFORMAT}{\\fldrslt pagenum}}";
1924}

References OutputGenerator::m_t, rtfFormatBmkStr(), and stripPath().

Referenced by endIndexItem(), endIndexValue(), and endPageRef().

◆ writeRuler()

void RTFGenerator::writeRuler ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 175 of file rtfgen.h.

void rtfwriteRuler_thin()
Definition rtfgen.cpp:2657

References rtfwriteRuler_thin().

◆ writeSearchInfo()

void RTFGenerator::writeSearchInfo ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 109 of file rtfgen.h.

109{}

◆ writeSplitBar()

void RTFGenerator::writeSplitBar ( const DString & ,
const DString &  )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 219 of file rtfgen.h.

219{}

◆ writeStartAnnoItem()

void RTFGenerator::writeStartAnnoItem ( const DString & type,
const DString & file,
const DString & path,
const DString & name )
overridevirtual

Implements OutputGenIntf.

Definition at line 1445 of file rtfgen.cpp.

1447{
1448 DBG_RTF(m_t << "{\\comment (writeStartAnnoItem)}\n")
1449 m_t << "{\\b ";
1450 if (!path.empty()) docify(path);
1451 if (!f.empty() && Config_getBool(RTF_HYPERLINKS))
1452 {
1453 m_t << "{\\field {\\*\\fldinst { HYPERLINK \\\\l \"";
1455 m_t << "\" }{}";
1456 m_t << "}{\\fldrslt {\\cs37\\ul\\cf2 ";
1457
1458 docify(name);
1459
1460 m_t << "}}}\n";
1461 }
1462 else
1463 {
1464 docify(name);
1465 }
1466 m_t << "} ";
1467}

References Config_getBool, DBG_RTF, docify(), DString::empty(), OutputGenerator::m_t, rtfFormatBmkStr(), and stripPath().

◆ writeString()

void RTFGenerator::writeString ( const DString & text)
overridevirtual

Implements OutputGenIntf.

Definition at line 1343 of file rtfgen.cpp.

1344{
1345 m_t << text;
1346}

References OutputGenerator::m_t.

◆ writeStyleInfo()

void RTFGenerator::writeStyleInfo ( int part)
overridevirtual

Implements OutputGenIntf.

Definition at line 1332 of file rtfgen.cpp.

1333{
1334}

◆ writeStyleSheetFile()

void RTFGenerator::writeStyleSheetFile ( TextStream & t)
static

Definition at line 397 of file rtfgen.cpp.

398{
399 t << "# Generated by doxygen " << getDoxygenVersion() << "\n\n";
400 t << "# This file describes styles used for generating RTF output.\n";
401 t << "# All text after a hash (#) is considered a comment and will be ignored.\n";
402 t << "# Remove a hash to activate a line.\n\n";
403
404 for (int i=0 ; rtf_Style_Default[i].reference!=nullptr ; i++ )
405 {
406 t << "# " << rtf_Style_Default[i].name << " = "
408 << rtf_Style_Default[i].definition << "\n";
409 }
410}

References Rtf_Style_Default::definition, Rtf_Style_Default::name, Rtf_Style_Default::reference, and rtf_Style_Default.

Referenced by readConfiguration().

◆ writeSummaryLink()

void RTFGenerator::writeSummaryLink ( const DString & ,
const DString & ,
const DString & ,
bool  )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 223 of file rtfgen.h.

223{}

◆ writeSynopsis()

void RTFGenerator::writeSynopsis ( )
inlineoverridevirtual

Implements OutputGenIntf.

Definition at line 212 of file rtfgen.h.

212{}

Member Data Documentation

◆ m_bstartedBody

bool RTFGenerator::m_bstartedBody = false
private

Definition at line 332 of file rtfgen.h.

Referenced by operator=(), and RTFGenerator().

◆ m_codeGen

RTFCodeGenerator* RTFGenerator::m_codeGen
private

◆ m_codeList

std::unique_ptr<OutputCodeList> RTFGenerator::m_codeList
private

Definition at line 348 of file rtfgen.h.

Referenced by operator=(), RTFGenerator(), RTFGenerator(), and writeDoc().

◆ m_hierarchyLevel

int RTFGenerator::m_hierarchyLevel = 0
private

◆ m_indentLevel

int RTFGenerator::m_indentLevel = 0
private

Definition at line 340 of file rtfgen.h.

Referenced by decIndentLevel(), incIndentLevel(), indentLevel(), operator=(), and RTFGenerator().

◆ m_listItemInfo

std::array<RTFListItemInfo,maxIndentLevels> RTFGenerator::m_listItemInfo
private

Definition at line 347 of file rtfgen.h.

Referenced by operator=(), RTFGenerator(), startItemList(), and startItemListItem().

◆ m_numCols

size_t RTFGenerator::m_numCols = 0
private

Definition at line 334 of file rtfgen.h.

Referenced by operator=(), and RTFGenerator().

◆ m_omitParagraph

◆ m_relPath

DString RTFGenerator::m_relPath
private

◆ maxIndentLevels

const int RTFGenerator::maxIndentLevels = 13
staticprivate

Definition at line 339 of file rtfgen.h.

Referenced by incIndentLevel(), and indentLevel().


The documentation for this class was generated from the following files: