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 1750 of file rtfgen.cpp.

1751{
1752 if (!s1.empty())
1753 {
1754 m_t << "{\\xe \\v ";
1755 docify(s1);
1756 if (!s2.empty())
1757 {
1758 m_t << "\\:";
1759 docify(s2);
1760 }
1761 m_t << "}\n";
1762 }
1763}
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:1847

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 1744 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ beginRTFChapter()

void RTFGenerator::beginRTFChapter ( )
private

Definition at line 666 of file rtfgen.cpp.

667{
668 m_t << "\n";
669 DBG_RTF(m_t << "{\\comment BeginRTFChapter}\n")
671
672 // if we are compact, no extra page breaks...
673 if (Config_getBool(COMPACT_RTF))
674 {
675 // m_t << "\\sect\\sectd\\sbknone\n";
676 m_t << "\\sect\\sbknone\n";
678 }
679 else
680 m_t << "\\sect\\sbkpage\n";
681 //m_t << "\\sect\\sectd\\sbkpage\n";
682
683 m_t << rtf_Style["Heading1"].reference() << "\n";
684}
void rtfwriteRuler_thick()
Definition rtfgen.cpp:2650
#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::letter: m_t << "\\paperw12240\\paperh15840"; break;
593 case PAPER_TYPE_t::legal: m_t << "\\paperw12240\\paperh20160"; break;
594 case PAPER_TYPE_t::executive: m_t << "\\paperw10440\\paperh15120"; break;
595 }
596 m_t << "\\margl1800\\margr1800\\margt1440\\margb1440\\gutter0\\ltrsect}\n";
597
598 // sort styles ascending by \s-number via an intermediate QArray
599 unsigned maxIndex = 0;
600 for (const auto &[name,data] : rtf_Style)
601 {
602 uint32_t index = data.index();
603 if (index > maxIndex) maxIndex = index;
604 }
605 std::vector<const StyleData*> array(maxIndex + 1, nullptr);
606 ASSERT(maxIndex < array.size());
607
608 for (const auto &[name,data] : rtf_Style)
609 {
610 uint32_t index = data.index();
611 if (array[index] != nullptr)
612 {
613 err("Style '{}' redefines \\s{}.\n", name, index);
614 }
615 array[index] = &data;
616 }
617
618 // write array elements
619 size_t size = array.size();
620 for(size_t i = 0; i < size; i++)
621 {
622 const StyleData *pStyle = array[i];
623 if (pStyle)
624 {
625 m_t << "{" << pStyle->reference() << pStyle->definition() << ";}\n";
626 }
627 }
628
629 m_t << "}\n";
630
631 // place to write rtf_Table_Default
632 int id = -1;
633 m_t << "{\\*\\listtable" << "\n";
634 for (int i=0 ; rtf_Table_Default[i].definition ; i++ )
635 {
636 if (id != rtf_Table_Default[i].id)
637 {
638 if (id != -1)
639 {
640 m_t << "\\listid" << id << "}" << "\n";
641 }
642 id = rtf_Table_Default[i].id;
643 m_t << "{\\list\\listtemplateid" << rtf_Table_Default[i].id << "\n";
644 }
645 m_t << "{ " << rtf_Table_Default[i].definition << " }" << "\n";
646 }
647 m_t << "\\listid" << id << "}" << "\n";
648 m_t << "}" <<"\n";
649 m_t << "{\\listoverridetable" <<"\n";
650 id = -1;
651 for (int i=0 ; rtf_Table_Default[i].definition ; i++ )
652 {
653 if (id != rtf_Table_Default[i].id)
654 {
655 id = rtf_Table_Default[i].id;
656 m_t << "{\\listoverride\\listid" << id << "\\listoverridecount0\\ls" << id << "}" << "\n";
657 }
658 }
659 m_t << "}" << "\n";
660
661 // this comment is needed for postprocessing!
662 m_t << "{\\comment begin body}\n";
663
664}
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 686 of file rtfgen.cpp.

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

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 2053 of file rtfgen.cpp.

2054{
2055 m_indentLevel--;
2056 if (m_indentLevel<0)
2057 {
2058 err("Negative indent level while generating RTF output!\n");
2059 m_indentLevel=0;
2060 }
2062}
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 1847 of file rtfgen.cpp.

1848{
1849 if (str.empty()) return;
1850 m_t << docifyToString(str);
1851 m_omitParagraph = false;
1852}
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 2380 of file rtfgen.cpp.

2381{
2382 newParagraph();
2383
2385
2386 // display the file
2387 m_t << "{\n";
2388 m_t << rtf_Style_Reset << "\n";
2389 m_t << "\\par\\pard \\qc {\\field\\flddirty {\\*\\fldinst INCLUDEPICTURE \"";
2390 DString imgExt = getDotImageExtension();
2391 m_t << fn << "." << imgExt;
2392 m_t << "\" \\\\d \\\\*MERGEFORMAT}{\\fldrslt IMAGE}}\\par\n";
2393 m_t << "}\n";
2394 DBG_RTF(m_t << "{\\comment (endCallGraph)}\n")
2395}
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:2121
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 1867 of file rtfgen.cpp.

1869{
1870 newParagraph();
1871
1872 // create a png file
1873 d.writeImage(m_t,dir(),m_relPath,fileName,false,false);
1874
1875 // display the file
1876 m_t << "{\n";
1877 m_t << rtf_Style_Reset << "\n";
1878 m_t << "\\par\\pard \\qc {\\field\\flddirty {\\*\\fldinst INCLUDEPICTURE \"";
1879 m_t << fileName << ".png\"";
1880 m_t << " \\\\d \\\\*MERGEFORMAT}{\\fldrslt IMAGE}}\\par\n";
1881 m_t << "}\n";
1882}
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 1515 of file rtfgen.cpp.

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

References OutputGenerator::m_t, and newParagraph().

◆ endConstraintDocs()

void RTFGenerator::endConstraintDocs ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2708 of file rtfgen.cpp.

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

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

◆ endConstraintList()

void RTFGenerator::endConstraintList ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2714 of file rtfgen.cpp.

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

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

◆ endConstraintParam()

void RTFGenerator::endConstraintParam ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2683 of file rtfgen.cpp.

2684{
2685 DBG_RTF(m_t << "{\\comment (endConstraintParam)}\n")
2686 endEmphasis();
2687 m_t << " : ";
2688}
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 2696 of file rtfgen.cpp.

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

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 1804 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ endDescTable()

void RTFGenerator::endDescTable ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1981 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ endDescTableData()

void RTFGenerator::endDescTableData ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2028 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ endDescTableInit()

void RTFGenerator::endDescTableInit ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2016 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ endDescTableRow()

void RTFGenerator::endDescTableRow ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1991 of file rtfgen.cpp.

1992{
1993}

◆ endDescTableTitle()

void RTFGenerator::endDescTableTitle ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2002 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ endDirDepGraph()

void RTFGenerator::endDirDepGraph ( DotDirDeps & g)
overridevirtual

Implements OutputGenIntf.

Definition at line 2402 of file rtfgen.cpp.

2403{
2404 newParagraph();
2405
2407
2408 // display the file
2409 m_t << "{\n";
2410 m_t << rtf_Style_Reset << "\n";
2411 m_t << "\\par\\pard \\qc {\\field\\flddirty {\\*\\fldinst INCLUDEPICTURE \"";
2412 DString imgExt = getDotImageExtension();
2413 m_t << fn << "." << imgExt;
2414 m_t << "\" \\\\d \\\\*MERGEFORMAT}{\\fldrslt IMAGE}}\\par\n";
2415 m_t << "}\n";
2416 DBG_RTF(m_t << "{\\comment (endDirDepGraph)}\n")
2417}
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 2327 of file rtfgen.cpp.

2328{
2329 newParagraph();
2330
2332
2333 // display the file
2334 m_t << "{\n";
2335 m_t << rtf_Style_Reset << "\n";
2336 m_t << "\\par\\pard \\qc {\\field\\flddirty {\\*\\fldinst INCLUDEPICTURE \"";
2337 DString imgExt = getDotImageExtension();
2338 m_t << fn << "." << imgExt;
2339 m_t << "\" \\\\d \\\\*MERGEFORMAT}{\\fldrslt IMAGE}}\\par\n";
2340 m_t << "}\n";
2341 newParagraph();
2342 DBG_RTF(m_t << "{\\comment (endDotGraph)}\n")
2343}
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 1722 of file rtfgen.cpp.

1723{
1724 DString ref;
1725 if (!fName.empty())
1726 {
1727 ref+=stripPath(fName);
1728 }
1729 if (!anchor.empty())
1730 {
1731 ref+='_';
1732 ref+=anchor;
1733 }
1734
1735 DBG_RTF(m_t << "{\\comment endDoxyAnchor}\n")
1736 m_t << "{\\bkmkstart ";
1737 m_t << rtfFormatBmkStr(ref);
1738 m_t << "}\n";
1739 m_t << "{\\bkmkend ";
1740 m_t << rtfFormatBmkStr(ref);
1741 m_t << "}\n";
1742}
DString rtfFormatBmkStr(const DString &name)
Definition rtfgen.cpp:2879
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 2588 of file rtfgen.cpp.

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

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

◆ endFile()

void RTFGenerator::endFile ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 721 of file rtfgen.cpp.

722{
723 DBG_RTF(m_t << "{\\comment endFile}\n")
724 m_t << "}";
725
726 endPlainFile();
728}
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 2371 of file rtfgen.cpp.

2372{
2373}

◆ endGroupHeader()

void RTFGenerator::endGroupHeader ( int )
overridevirtual

Implements OutputGenIntf.

Definition at line 1666 of file rtfgen.cpp.

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

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 2350 of file rtfgen.cpp.

2351{
2352 newParagraph();
2353
2355
2356 // display the file
2357 m_t << "{\n";
2358 m_t << rtf_Style_Reset << "\n";
2359 m_t << "\\par\\pard \\qc {\\field\\flddirty {\\*\\fldinst INCLUDEPICTURE \"";
2360 DString imgExt = getDotImageExtension();
2361 m_t << fn << "." << imgExt;
2362 m_t << "\" \\\\d \\\\*MERGEFORMAT}{\\fldrslt IMAGE}}\\par\n";
2363 m_t << "}\n";
2364 DBG_RTF(m_t << "{\\comment (endInclDepGraph)}\n")
2365}
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 1773 of file rtfgen.cpp.

1774{
1775 m_t << "}\n";
1777}

References decIndentLevel(), and OutputGenerator::m_t.

◆ endIndexItem()

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

Implements OutputGenIntf.

Definition at line 1428 of file rtfgen.cpp.

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

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

◆ endIndexKey()

void RTFGenerator::endIndexKey ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1474 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ endIndexList()

void RTFGenerator::endIndexList ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1357 of file rtfgen.cpp.

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

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

◆ endIndexListItem()

void RTFGenerator::endIndexListItem ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2728 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ endIndexSection()

void RTFGenerator::endIndexSection ( IndexSection is)
overridevirtual

Implements OutputGenIntf.

Definition at line 930 of file rtfgen.cpp.

931{
932 bool fortranOpt = Config_getBool(OPTIMIZE_FOR_FORTRAN);
933 bool vhdlOpt = Config_getBool(OPTIMIZE_OUTPUT_VHDL);
934 DString projectName = Config_getString(PROJECT_NAME);
935
936 switch (is)
937 {
939 if (!rtf_title.empty())
940 // User has overridden document title in extensions file
941 m_t << "}" << rtf_title;
942 else
943 m_t << "}" << projectName;
944 break;
946 {
947 m_t << " doxygen " << getDoxygenVersion() << ".}\n";
949 DBG_RTF(m_t << "{\\comment end of infoblock}\n");
950 // setup for this section
951 m_t << "}";
952 m_t << rtf_Style_Reset <<"\n";
953 m_t << "\\sectd\\pgnlcrm\n";
954 m_t << "{\\footer "<<rtf_Style["Footer"].reference() << "{\\chpgn}}\n";
955 // the title entry
956 DBG_RTF(m_t << "{\\comment begin title page}\n")
957
958
959 m_t << rtf_Style_Reset << rtf_Style["SubTitle"].reference() << "\n"; // set to title style
960
961 m_t << "\\vertalc\\qc\\par\\par\\par\\par\\par\\par\\par\n";
962 if (!rtf_logoFilename.empty())
963 {
964 m_t << "{\\field\\flddirty {\\*\\fldinst INCLUDEPICTURE \"" << rtf_logoFilename;
965 m_t << "\" \\\\d \\\\*MERGEFORMAT} {\\fldrslt IMAGE }}\\par\\par\n";
966 }
967 if (!rtf_company.empty())
968 {
969 m_t << rtf_company << "\\par\\par\n";
970 }
971
972 m_t << rtf_Style_Reset << rtf_Style["Title"].reference() << "\n"; // set to title style
973 if (!rtf_title.empty())
974 {
975 // User has overridden document title in extensions file
976 m_t << "{\\field\\fldedit {\\*\\fldinst TITLE \\\\*MERGEFORMAT}{\\fldrslt " << rtf_title << "}}\\par\n";
977 }
978 else
979 {
980 auto parser { createDocParser() };
981 auto ast { validatingParseText(*parser.get(), projectName) };
982 if (ast)
983 {
984 m_t << "{\\field\\fldedit {\\*\\fldinst TITLE \\\\*MERGEFORMAT}{\\fldrslt ";
985 writeDoc(ast.get(),nullptr,nullptr,0,-1);
986 m_t << "}}\\par\n";
987 }
988 }
989
990 m_t << rtf_Style_Reset << rtf_Style["SubTitle"].reference() << "\n"; // set to title style
991 m_t << "\\par\n";
992 if (!rtf_documentType.empty())
993 {
994 m_t << rtf_documentType << "\\par\n";
995 }
996 if (!rtf_documentId.empty())
997 {
998 m_t << rtf_documentId << "\\par\n";
999 }
1000 m_t << "\\par\\par\\par\\par\\par\\par\\par\\par\\par\\par\\par\\par\n";
1001
1002 m_t << rtf_Style_Reset << rtf_Style["SubTitle"].reference() << "\n"; // set to subtitle style
1003 if (!rtf_author.empty())
1004 {
1005 m_t << "{\\field\\fldedit {\\*\\fldinst AUTHOR \\\\*MERGEFORMAT}{\\fldrslt "<< rtf_author << " }}\\par\n";
1006 }
1007 else
1008 {
1009 m_t << "{\\field\\fldedit {\\*\\fldinst AUTHOR \\\\*MERGEFORMAT}{\\fldrslt AUTHOR}}\\par\n";
1010 }
1011
1012 m_t << theTranslator->trVersion() << " " << Config_getString(PROJECT_NUMBER) << "\\par";
1013 switch (Config_getEnum(TIMESTAMP))
1014 {
1015 case TIMESTAMP_t::YES:
1016 case TIMESTAMP_t::DATETIME:
1017 m_t << "{\\field\\fldedit {\\*\\fldinst CREATEDATE \\\\*MERGEFORMAT}"
1018 "{\\fldrslt "<< dateToString(DateTimeType::DateTime) << " }}\\par\n";
1019 break;
1020 case TIMESTAMP_t::DATE:
1021 m_t << "{\\field\\fldedit {\\*\\fldinst CREATEDATE \\\\*MERGEFORMAT}"
1022 "{\\fldrslt "<< dateToString(DateTimeType::Date) << " }}\\par\n";
1023 break;
1024 case TIMESTAMP_t::NO:
1025 break;
1026 }
1027 m_t << "\\page\\page";
1028 DBG_RTF(m_t << "{\\comment End title page}\n")
1029
1030 // table of contents section
1031 DBG_RTF(m_t << "{\\comment Table of contents}\n")
1032 m_t << "\\vertalt\n";
1033 m_t << rtf_Style_Reset << "\n";
1034 m_t << rtf_Style["Heading1"].reference();
1035 m_t << theTranslator->trRTFTableOfContents() << "\\par\n";
1036 m_t << rtf_Style_Reset << "\\par\n";
1037 m_t << "{\\field\\fldedit {\\*\\fldinst TOC \\\\f \\\\*MERGEFORMAT}{\\fldrslt Table of contents}}\\par\n";
1038 m_t << rtf_Style_Reset << "\n";
1039 }
1040 break;
1041 case IndexSection::isMainPage:
1042 if (Doxygen::mainPage)
1043 {
1044 writePageLink(Doxygen::mainPage->getOutputFileBase(), true);
1045 }
1046 break;
1048 m_t << "\\par " << rtf_Style_Reset << "\n";
1049 m_t << "{\\tc \\v " << theTranslator->trTopicIndex() << "}\n";
1050 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"topics.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1051 break;
1053 m_t << "\\par " << rtf_Style_Reset << "\n";
1054 m_t << "{\\tc \\v " << theTranslator->trModuleIndex() << "}\n";
1055 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"modules.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1056 break;
1058 m_t << "\\par " << rtf_Style_Reset << "\n";
1059 m_t << "{\\tc \\v " << theTranslator->trDirIndex() << "}\n";
1060 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"dirs.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1061 break;
1063 m_t << "\\par " << rtf_Style_Reset << "\n";
1064 if (fortranOpt)
1065 {
1066 m_t << "{\\tc \\v " << theTranslator->trModulesIndex() << "}\n";
1067 }
1068 else
1069 {
1070 m_t << "{\\tc \\v " << theTranslator->trNamespaceIndex() << "}\n";
1071 }
1072
1073 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"namespaces.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1074 break;
1076 m_t << "\\par " << rtf_Style_Reset << "\n";
1077 m_t << "{\\tc \\v " << theTranslator->trConceptIndex() << "}\n";
1078 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"concepts.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1079 break;
1081 m_t << "\\par " << rtf_Style_Reset << "\n";
1082 m_t << "{\\tc \\v " << theTranslator->trHierarchicalIndex() << "}\n";
1083 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"hierarchy.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1084 break;
1086 m_t << "\\par " << rtf_Style_Reset << "\n";
1087 if (fortranOpt)
1088 {
1089 m_t << "{\\tc \\v " << theTranslator->trCompoundIndexFortran() << "}\n";
1090 }
1091 else if (vhdlOpt)
1092 {
1093 m_t << "{\\tc \\v " << theTranslator->trDesignUnitIndex() << "}\n";
1094 }
1095 else
1096 {
1097 m_t << "{\\tc \\v " << theTranslator->trCompoundIndex() << "}\n";
1098 }
1099 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"annotated.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1100 break;
1102 m_t << "\\par " << rtf_Style_Reset << "\n";
1103 m_t << "{\\tc \\v " << theTranslator->trFileIndex() << "}\n";
1104 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"files.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1105 break;
1107 m_t << "\\par " << rtf_Style_Reset << "\n";
1108 m_t << "{\\tc \\v " << theTranslator->trPageIndex() << "}\n";
1109 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"pages.rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1110 break;
1112 {
1113 m_t << "{\\tc \\v " << theTranslator->trTopicDocumentation() << "}\n";
1114 for (const auto &gd : *Doxygen::groupLinkedMap)
1115 {
1116 if (!gd->isReference() && !gd->isASubGroup())
1117 {
1118 writePageLink(gd->getOutputFileBase(), false);
1119 }
1120 }
1121 }
1122 break;
1124 {
1125 m_t << "{\\tc \\v " << theTranslator->trModuleDocumentation() << "}\n";
1126 for (const auto &mod : ModuleManager::instance().modules())
1127 {
1128 if (!mod->isReference() && mod->isPrimaryInterface())
1129 {
1130 writePageLink(mod->getOutputFileBase(), false);
1131 }
1132 }
1133 }
1134 break;
1136 {
1137 bool first=true;
1138 m_t << "{\\tc \\v " << theTranslator->trDirDocumentation() << "}\n";
1139 for (const auto &dd : *Doxygen::dirLinkedMap)
1140 {
1141 if (dd->isLinkableInProject())
1142 {
1143 m_t << "\\par " << rtf_Style_Reset << "\n";
1144 if (!first)
1145 {
1147 }
1148 first=false;
1149 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"";
1150 m_t << dd->getOutputFileBase();
1151 m_t << ".rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1152 }
1153 }
1154 }
1155 break;
1157 {
1158 bool first=true;
1159 for (const auto &nd : *Doxygen::namespaceLinkedMap)
1160 {
1161 if (nd->isLinkableInProject() && !nd->isAlias())
1162 {
1163 m_t << "\\par " << rtf_Style_Reset << "\n";
1164 if (!first)
1165 {
1167 }
1168 first=false;
1169 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"";
1170 m_t << nd->getOutputFileBase();
1171 m_t << ".rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1172 }
1173 }
1174 }
1175 break;
1177 {
1178 bool first=true;
1179 for (const auto &cd : *Doxygen::conceptLinkedMap)
1180 {
1181 if (cd->isLinkableInProject() && !cd->isAlias())
1182 {
1183 m_t << "\\par " << rtf_Style_Reset << "\n";
1184 if (!first)
1185 {
1187 }
1188 first=false;
1189 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"";
1190 m_t << cd->getOutputFileBase();
1191 m_t << ".rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1192 }
1193 }
1194 }
1195 break;
1197 {
1198 bool first=true;
1199 if (fortranOpt)
1200 {
1201 m_t << "{\\tc \\v " << theTranslator->trTypeDocumentation() << "}\n";
1202 }
1203 else
1204 {
1205 m_t << "{\\tc \\v " << theTranslator->trClassDocumentation() << "}\n";
1206 }
1207 for (const auto &cd : *Doxygen::classLinkedMap)
1208 {
1209 if (cd->isLinkableInProject() &&
1210 !cd->isImplicitTemplateInstance() &&
1211 !cd->isEmbeddedInOuterScope() &&
1212 !cd->isAlias()
1213 )
1214 {
1215 m_t << "\\par " << rtf_Style_Reset << "\n";
1216 if (!first)
1217 {
1219 }
1220 first=false;
1221 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"";
1222 m_t << cd->getOutputFileBase();
1223 m_t << ".rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1224 }
1225 }
1226 }
1227 break;
1229 {
1230 bool isFirst=true;
1231
1232 m_t << "{\\tc \\v " << theTranslator->trFileDocumentation() << "}\n";
1233 for (const auto &fn : *Doxygen::inputNameLinkedMap)
1234 {
1235 for (const auto &fd : *fn)
1236 {
1237 if (fd->isLinkableInProject())
1238 {
1239 m_t << "\\par " << rtf_Style_Reset << "\n";
1240 if (!isFirst)
1241 {
1243 }
1244 isFirst=false;
1245 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"";
1246 m_t << fd->getOutputFileBase();
1247 m_t << ".rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1248 }
1249 if (fd->generateSourceFile())
1250 {
1251 m_t << "\\par " << rtf_Style_Reset << "\n";
1252 if (!isFirst)
1253 {
1255 }
1256 isFirst=false;
1257 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"";
1258 m_t << fd->getSourceFileBase();
1259 m_t << ".rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1260 }
1261 }
1262 }
1263 }
1264 break;
1266 {
1267 //m_t << "}\n";
1268 bool isFirst=true;
1269 m_t << "{\\tc \\v " << theTranslator->trExamples() << "}\n";
1270 for (const auto &pd : *Doxygen::exampleLinkedMap)
1271 {
1272 m_t << "\\par " << rtf_Style_Reset << "\n";
1273 if (!isFirst)
1274 {
1276 }
1277 isFirst=false;
1278 m_t << "{\\field\\fldedit{\\*\\fldinst INCLUDETEXT \"";
1279 m_t << pd->getOutputFileBase();
1280 m_t << ".rtf\" \\\\*MERGEFORMAT}{\\fldrslt includedstuff}}\n";
1281 }
1282 }
1283 break;
1285 {
1286 m_t << "\\par " << rtf_Style_Reset << "\n";
1287 for (const auto &pd : *Doxygen::pageLinkedMap)
1288 {
1289 if (!pd->getGroupDef() && !pd->isReference() && !pd->hasParentPage()
1290 && Doxygen::mainPage.get() != pd.get())
1291 {
1292 writePageLink(pd->getOutputFileBase(), false);
1293 }
1294 }
1295 }
1296 break;
1298 break;
1301 m_t << rtf_Style["Heading1"].reference();
1302 m_t << theTranslator->trRTFGeneralIndex() << "\\par \n";
1303 m_t << rtf_Style_Reset << "\n";
1304 m_t << "{\\tc \\v " << theTranslator->trRTFGeneralIndex() << "}\n";
1305 m_t << "{\\field\\fldedit {\\*\\fldinst INDEX \\\\c2 \\\\*MERGEFORMAT}{\\fldrslt INDEX}}\n";
1306
1307 break;
1308 }
1309}
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:666
void writeDoc(const IDocNodeAST *ast, const Definition *, const MemberDef *, int, int) override
Definition rtfgen.cpp:2627
void beginRTFSection()
Definition rtfgen.cpp:686
void writePageLink(const DString &, bool) override
Definition rtfgen.cpp:1311
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 1486 of file rtfgen.cpp.

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

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

◆ endInlineHeader()

void RTFGenerator::endInlineHeader ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2742 of file rtfgen.cpp.

2743{
2744 DBG_RTF(m_t << "{\\comment (endInlineHeader)}\n")
2745 endBold();
2746 m_t << "\\par";
2747 m_t << "}\n";
2748}
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 2827 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ endInlineMemberName()

void RTFGenerator::endInlineMemberName ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2815 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ endInlineMemberType()

void RTFGenerator::endInlineMemberType ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2803 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ endItemList()

void RTFGenerator::endItemList ( )
overridevirtual

end bullet list

Implements OutputGenIntf.

Definition at line 1383 of file rtfgen.cpp.

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

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

◆ endItemListItem()

void RTFGenerator::endItemListItem ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1412 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ endLabels()

void RTFGenerator::endLabels ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2843 of file rtfgen.cpp.

2844{
2845}

◆ 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 1789 of file rtfgen.cpp.

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

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

◆ endMemberDoc()

void RTFGenerator::endMemberDoc ( bool )
overridevirtual

Implements OutputGenIntf.

Definition at line 1703 of file rtfgen.cpp.

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

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 2791 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ endMemberGroup()

void RTFGenerator::endMemberGroup ( bool hasHeader)
overridevirtual

Implements OutputGenIntf.

Definition at line 2566 of file rtfgen.cpp.

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

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

◆ endMemberGroupDocs()

void RTFGenerator::endMemberGroupDocs ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2553 of file rtfgen.cpp.

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

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

◆ endMemberGroupHeader()

void RTFGenerator::endMemberGroupHeader ( bool )
overridevirtual

Implements OutputGenIntf.

Definition at line 2540 of file rtfgen.cpp.

2541{
2542 DBG_RTF(m_t << "{\\comment endMemberGroupHeader}\n")
2543 newParagraph();
2545}
DString rtf_CList_DepthStyle()
Definition rtfgen.cpp:2065

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:1666

References endGroupHeader().

◆ endMemberItem()

void RTFGenerator::endMemberItem ( MemberItemType )
overridevirtual

Implements OutputGenIntf.

Definition at line 1890 of file rtfgen.cpp.

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

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

◆ endMemberList()

void RTFGenerator::endMemberList ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1942 of file rtfgen.cpp.

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

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 2153 of file rtfgen.cpp.

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

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 1598 of file rtfgen.cpp.

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

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

◆ endParagraph()

void RTFGenerator::endParagraph ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2139 of file rtfgen.cpp.

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

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 2865 of file rtfgen.cpp.

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

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 2607 of file rtfgen.cpp.

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

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 736 of file rtfgen.cpp.

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

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 1837 of file rtfgen.cpp.

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

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 2113 of file rtfgen.cpp.

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

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

◆ endTextLink()

void RTFGenerator::endTextLink ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1543 of file rtfgen.cpp.

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

References Config_getBool, and OutputGenerator::m_t.

◆ endTitleHead()

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

Implements OutputGenIntf.

Definition at line 1625 of file rtfgen.cpp.

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

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 2613 of file rtfgen.cpp.

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

References DBG_RTF, OutputGenerator::m_t, and prefix.

◆ incIndentLevel()

void RTFGenerator::incIndentLevel ( )
private

Definition at line 2041 of file rtfgen.cpp.

2042{
2043 m_indentLevel++;
2045 {
2047 int m = maxIndentLevels;
2048 err("Maximum indent level ({}) exceeded while generating RTF output!\n",m);
2049 }
2051}
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 1319 of file rtfgen.cpp.

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

References DBG_RTF, OutputGenerator::m_t, and rtf_Style.

◆ lineBreak()

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

Implements OutputGenIntf.

Definition at line 1335 of file rtfgen.cpp.

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

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 2467 of file rtfgen.cpp.

2468{
2469 static bool rtfDebug = Debug::isFlagSet(Debug::Rtf);
2470
2471 Dir d(path.str());
2472 // store the original directory
2473 if (!d.exists())
2474 {
2475 err("Output dir {} does not exist!\n",path);
2476 return false;
2477 }
2478 std::string oldDir = Dir::currentDirPath();
2479
2480 // go to the html output directory (i.e. path)
2481 Dir::setCurrent(d.absPath());
2482 Dir thisDir;
2483
2484 DString combinedName = path+"/combined.rtf";
2485 DString mainRTFName = path+"/"+name;
2486
2487 std::ofstream f = Portable::openOutputStream(combinedName);
2488 if (!f.is_open())
2489 {
2490 err("Failed to open {} for writing!\n",combinedName);
2491 Dir::setCurrent(oldDir);
2492 return false;
2493 }
2494 TextStream outt(&f);
2495
2496 if (!preProcessFile(thisDir,mainRTFName,outt,true,false))
2497 {
2498 // it failed, remove the temp file
2499 outt.flush();
2500 f.close();
2501 if (!rtfDebug) removeSet.insert(FileInfo(thisDir.filePath(combinedName.str())).absFilePath());
2502 Dir::setCurrent(oldDir);
2503 return false;
2504 }
2505
2506 // everything worked, move the files
2507 outt.flush();
2508 f.close();
2509 if (!rtfDebug)
2510 {
2511 thisDir.remove(mainRTFName.str());
2512 }
2513 else
2514 {
2515 thisDir.rename(mainRTFName.str(),mainRTFName.str() + ".org");
2516 }
2517 thisDir.rename(combinedName.str(),mainRTFName.str());
2518
2519 testRTFOutput(mainRTFName);
2520
2521 DString rtfOutputDir = Dir::currentDirPath();
2522 for (auto &s : removeSet)
2523 {
2524 DString s1 = s;
2525 if (s1.startsWith(rtfOutputDir)) Portable::unlink(s1);
2526 }
2527
2528 Dir::setCurrent(oldDir);
2529 return true;
2530}
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:2252
void testRTFOutput(const DString &name)
Tests the integrity of the result by counting brackets.
Definition rtfgen.cpp:2422

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 2079 of file rtfgen.cpp.

2080{
2081 DString n=makeIndexName("ListBullet",indentLevel());
2082 return rtf_Style[n.str()].reference();
2083}
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 2065 of file rtfgen.cpp.

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

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 2092 of file rtfgen.cpp.

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

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 2086 of file rtfgen.cpp.

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

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

Referenced by startItemListItem().

◆ rtf_LCList_DepthStyle()

DString RTFGenerator::rtf_LCList_DepthStyle ( )
private

Definition at line 2072 of file rtfgen.cpp.

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

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

Referenced by startIndexList().

◆ rtfwriteRuler_doubleline()

void RTFGenerator::rtfwriteRuler_doubleline ( )
private

Definition at line 2638 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ rtfwriteRuler_emboss()

void RTFGenerator::rtfwriteRuler_emboss ( )
private

Definition at line 2644 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

Referenced by beginRTFSection().

◆ rtfwriteRuler_thick()

void RTFGenerator::rtfwriteRuler_thick ( )
private

Definition at line 2650 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

Referenced by beginRTFChapter().

◆ rtfwriteRuler_thin()

void RTFGenerator::rtfwriteRuler_thin ( )
private

Definition at line 2656 of file rtfgen.cpp.

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

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 2375 of file rtfgen.cpp.

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

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 1862 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ startCompoundTemplateParams()

void RTFGenerator::startCompoundTemplateParams ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1505 of file rtfgen.cpp.

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

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 2703 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ startConstraintList()

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

Implements OutputGenIntf.

Definition at line 2662 of file rtfgen.cpp.

2663{
2664 DBG_RTF(m_t << "{\\comment (startConstraintList)}\n")
2665 m_t << "{"; // ends at endConstraintList
2666 m_t << "{";
2667 startBold();
2668 newParagraph();
2669 docify(header);
2670 endBold();
2671 m_t << "}";
2672 newParagraph();
2675}
void incIndentLevel()
Definition rtfgen.cpp:2041
DString rtf_DList_DepthStyle()
Definition rtfgen.cpp:2092
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 2677 of file rtfgen.cpp.

2678{
2679 DBG_RTF(m_t << "{\\comment (startConstraintParam)}\n")
2680 startEmphasis();
2681}
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 2690 of file rtfgen.cpp.

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

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 1799 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ startDescTable()

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

Implements OutputGenIntf.

Definition at line 1952 of file rtfgen.cpp.

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

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

References DBG_RTF, and OutputGenerator::m_t.

◆ startDescTableInit()

void RTFGenerator::startDescTableInit ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2008 of file rtfgen.cpp.

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

References DBG_RTF, OutputGenerator::m_t, and rtf_Style.

◆ startDescTableRow()

void RTFGenerator::startDescTableRow ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1987 of file rtfgen.cpp.

1988{
1989}

◆ startDescTableTitle()

void RTFGenerator::startDescTableTitle ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1995 of file rtfgen.cpp.

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

References DBG_RTF, OutputGenerator::m_t, and rtf_Style.

◆ startDirDepGraph()

void RTFGenerator::startDirDepGraph ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2397 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ startDotGraph()

void RTFGenerator::startDotGraph ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2322 of file rtfgen.cpp.

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

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 1714 of file rtfgen.cpp.

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

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 2573 of file rtfgen.cpp.

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

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 707 of file rtfgen.cpp.

708{
709 //setEncoding(DString().sprintf("CP%s",theTranslator->trRTFansicp()));
710 DString fileName=name;
712 m_hierarchyLevel = hierarchyLevel;
713
714 if (!fileName.endsWith(".rtf")) fileName+=".rtf";
719}
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 2367 of file rtfgen.cpp.

2368{
2369}

◆ startGroupHeader()

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

Implements OutputGenIntf.

Definition at line 1646 of file rtfgen.cpp.

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

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 2345 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ startIndent()

void RTFGenerator::startIndent ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1765 of file rtfgen.cpp.

1766{
1768 DBG_RTF(m_t << "{\\comment (startIndent) }\n")
1769 m_t << "{\n";
1771}

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 1417 of file rtfgen.cpp.

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

References DBG_RTF, m_omitParagraph, and OutputGenerator::m_t.

◆ startIndexKey()

void RTFGenerator::startIndexKey ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1468 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ startIndexList()

void RTFGenerator::startIndexList ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1347 of file rtfgen.cpp.

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

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 2723 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ startIndexSection()

void RTFGenerator::startIndexSection ( IndexSection is)
overridevirtual

Implements OutputGenIntf.

Definition at line 741 of file rtfgen.cpp.

742{
743 //DString paperName;
744
745 //m_indentLevel = 0;
746
747 switch (is)
748 {
750 // basic RTFstart
751 // get readyfor author etc
752
753 m_t << "{\\info \n";
754 m_t << "{\\title {\\comment ";
755 break;
757 m_t << "}\n";
758 if (!rtf_subject.empty()) m_t << "{\\subject " << rtf_subject << "}\n";
759 if (!rtf_comments.empty()) m_t << "{\\comment " << rtf_comments << "}\n";
760 if (!rtf_company.empty()) m_t << "{\\company " << rtf_company << "}\n";
761 if (!rtf_author.empty()) m_t << "{\\author " << rtf_author << "}\n";
762 if (!rtf_manager.empty()) m_t << "{\\manager " << rtf_manager << "}\n";
763 if (!rtf_documentType.empty()) m_t << "{\\category " << rtf_documentType << "}\n";
764 if (!rtf_keywords.empty()) m_t << "{\\keywords " << rtf_keywords << "}\n";
765 m_t << "{\\comment ";
766 break;
768 //Introduction
770 break;
772 //Topic Index
774 break;
776 //Module Index
778 break;
780 //Directory Index
782 break;
784 //Namespace Index
786 break;
788 //Concept Index
790 break;
792 //Hierarchical Index
793 DBG_RTF(m_t << "{\\comment start classhierarchy}\n")
795 break;
796 case IndexSection::isCompoundIndex:
797 //Annotated Compound Index
799 break;
800 case IndexSection::isFileIndex:
801 //Annotated File Index
803 break;
804 case IndexSection::isPageIndex:
805 //Related Page Index
807 break;
808 case IndexSection::isTopicDocumentation:
809 {
810 //Topic Documentation
811 for (const auto &gd : *Doxygen::groupLinkedMap)
812 {
813 if (!gd->isReference())
814 {
816 break;
817 }
818 }
819 }
820 break;
822 {
823 //Module Documentation
824 for (const auto &mod : ModuleManager::instance().modules())
825 {
826 if (!mod->isReference() && mod->isPrimaryInterface())
827 {
829 break;
830 }
831 }
832 }
833 break;
835 {
836 //Directory Documentation
837 for (const auto &dd : *Doxygen::dirLinkedMap)
838 {
839 if (dd->isLinkableInProject())
840 {
842 break;
843 }
844 }
845 }
846 break;
848 {
849 // Namespace Documentation
850 for (const auto &nd : *Doxygen::namespaceLinkedMap)
851 {
852 if (nd->isLinkableInProject())
853 {
855 break;
856 }
857 }
858 }
859 break;
861 {
862 // Concept Documentation
863 for (const auto &cd : *Doxygen::conceptLinkedMap)
864 {
865 if (cd->isLinkableInProject())
866 {
868 break;
869 }
870 }
871 }
872 break;
874 {
875 //Compound Documentation
876 for (const auto &cd : *Doxygen::classLinkedMap)
877 {
878 if (cd->isLinkableInProject() &&
879 !cd->isImplicitTemplateInstance() &&
880 !cd->isEmbeddedInOuterScope() &&
881 !cd->isAlias()
882 )
883 {
885 break;
886 }
887 }
888 }
889 break;
891 {
892 //File Documentation
893 bool isFirst=true;
894 for (const auto &fn : *Doxygen::inputNameLinkedMap)
895 {
896 for (const auto &fd : *fn)
897 {
898 if (fd->isLinkableInProject() || fd->generateSourceFile())
899 {
900 if (isFirst)
901 {
903 isFirst=false;
904 break;
905 }
906 }
907 }
908 if (!isFirst)
909 {
910 break;
911 }
912 }
913 }
914 break;
916 {
917 //Example Documentation
919 }
920 break;
922 break;
924 break;
926 break;
927 }
928}
@ 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 1479 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ startInlineHeader()

void RTFGenerator::startInlineHeader ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2734 of file rtfgen.cpp.

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

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

◆ startInlineMemberDoc()

void RTFGenerator::startInlineMemberDoc ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2821 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ startInlineMemberName()

void RTFGenerator::startInlineMemberName ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2809 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ startInlineMemberType()

void RTFGenerator::startInlineMemberType ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2797 of file rtfgen.cpp.

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

References DBG_RTF, and OutputGenerator::m_t.

◆ startItemList()

void RTFGenerator::startItemList ( )
overridevirtual

start bullet list

Implements OutputGenIntf.

Definition at line 1370 of file rtfgen.cpp.

1371{
1372 newParagraph();
1374 int level = indentLevel();
1375 DBG_RTF(m_t << "{\\comment (startItemList level=" << level << ") }\n")
1376 m_t << "{";
1377 m_listItemInfo[level].number = 1;
1378 m_listItemInfo[level].isEnum = false;
1379 m_listItemInfo[level].type = '1';
1380}
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 1393 of file rtfgen.cpp.

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

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 2833 of file rtfgen.cpp.

2834{
2835}

◆ 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 1780 of file rtfgen.cpp.

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

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 1673 of file rtfgen.cpp.

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

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 2750 of file rtfgen.cpp.

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

2561{
2562 DBG_RTF(m_t << "{\\comment startMemberGroup}\n")
2564}

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

◆ startMemberGroupDocs()

void RTFGenerator::startMemberGroupDocs ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 2547 of file rtfgen.cpp.

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

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

◆ startMemberGroupHeader()

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

Implements OutputGenIntf.

Definition at line 2532 of file rtfgen.cpp.

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

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:1646

References startGroupHeader().

◆ startMemberItem()

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

Implements OutputGenIntf.

Definition at line 1884 of file rtfgen.cpp.

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

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

◆ startMemberList()

void RTFGenerator::startMemberList ( )
overridevirtual

Implements OutputGenIntf.

Definition at line 1931 of file rtfgen.cpp.

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

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 2146 of file rtfgen.cpp.

2147{
2148 DBG_RTF(m_t << "{\\comment startMemberSubtitle}\n")
2149 m_t << "{\n";
2151}

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 1592 of file rtfgen.cpp.

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

References OutputGenerator::m_t, and startEmphasis().

◆ startParagraph()

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

Implements OutputGenIntf.

Definition at line 2131 of file rtfgen.cpp.

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

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 2860 of file rtfgen.cpp.

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

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 2598 of file rtfgen.cpp.

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

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 730 of file rtfgen.cpp.

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

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 1809 of file rtfgen.cpp.

1810{
1811 DBG_RTF(m_t << "{\\comment (startSection)}\n")
1812 m_t << "{";
1814 int num=SectionType::MaxLevel;
1815 switch(type.level())
1816 {
1817 case SectionType::Page: num=2+m_hierarchyLevel; break;
1818 case SectionType::Section: num=3+m_hierarchyLevel; break;
1819 case SectionType::Subsection: // fall through
1820 case SectionType::Subsubsection: // fall through
1821 case SectionType::Paragraph: // fall through
1822 case SectionType::Subparagraph: // fall through
1824 default: ASSERT(0); break;
1825 }
1826 num = std::clamp(num, SectionType::MinLevel, SectionType::MaxLevel);
1827 DString heading;
1828 heading.sprintf("Heading%d",num);
1829 // set style
1830 m_t << rtf_Style[heading.str()].reference();
1831 // make table of contents entry
1832 m_t << "{\\tc\\tcl" << num << " \\v ";
1833 docify(title);
1834 m_t << "}\n";
1835}
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 2098 of file rtfgen.cpp.

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

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 1521 of file rtfgen.cpp.

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

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

◆ startTitleHead()

void RTFGenerator::startTitleHead ( const DString & )
overridevirtual

Implements OutputGenIntf.

Definition at line 1615 of file rtfgen.cpp.

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

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 1896 of file rtfgen.cpp.

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

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 1854 of file rtfgen.cpp.

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

References docify().

◆ writeDoc()

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

Implements OutputGenIntf.

Definition at line 2627 of file rtfgen.cpp.

2628{
2629 auto astImpl = dynamic_cast<const DocNodeAST*>(ast);
2630 if (astImpl)
2631 {
2632 RTFDocVisitor visitor(m_t,*m_codeList,ctx?ctx->getDefFileExtension():DString(""),m_hierarchyLevel);
2633 std::visit(visitor,astImpl->root);
2634 }
2635 m_omitParagraph = true;
2636}
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 2847 of file rtfgen.cpp.

2851{
2853 m_t << rtf_Style["Heading4"].reference();
2854 m_t << "\n";
2855 m_t << theTranslator->trInheritedFrom(docifyToString(title), objectLinkToString(ref, file, anchor, name));
2856 m_t << "\\par\n";
2857 m_t << rtf_Style_Reset << "\n";
2858}
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:1551

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 2837 of file rtfgen.cpp.

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

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 1925 of file rtfgen.cpp.

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

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 1586 of file rtfgen.cpp.

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

References OutputGenerator::m_t, and objectLinkToString().

◆ writePageLink()

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

Implements OutputGenIntf.

Definition at line 1311 of file rtfgen.cpp.

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

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 1918 of file rtfgen.cpp.

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

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:2656

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 1444 of file rtfgen.cpp.

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

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 1342 of file rtfgen.cpp.

1343{
1344 m_t << text;
1345}

References OutputGenerator::m_t.

◆ writeStyleInfo()

void RTFGenerator::writeStyleInfo ( int part)
overridevirtual

Implements OutputGenIntf.

Definition at line 1331 of file rtfgen.cpp.

1332{
1333}

◆ 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: