LibreOffice Module starmath (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
SmNodeToTextVisitor Class Referencefinal

Extract command text from pNodes. More...

#include <visitors.hxx>

Inheritance diagram for SmNodeToTextVisitor:
[legend]
Collaboration diagram for SmNodeToTextVisitor:
[legend]

Public Member Functions

 SmNodeToTextVisitor (SmNode *pNode, OUString &rText)
 
virtual ~SmNodeToTextVisitor ()
 
void Visit (SmTableNode *pNode) override
 
void Visit (SmBraceNode *pNode) override
 
void Visit (SmBracebodyNode *pNode) override
 
void Visit (SmOperNode *pNode) override
 
void Visit (SmAlignNode *pNode) override
 
void Visit (SmAttributeNode *pNode) override
 
void Visit (SmFontNode *pNode) override
 
void Visit (SmUnHorNode *pNode) override
 
void Visit (SmBinHorNode *pNode) override
 
void Visit (SmBinVerNode *pNode) override
 
void Visit (SmBinDiagonalNode *pNode) override
 
void Visit (SmSubSupNode *pNode) override
 
void Visit (SmMatrixNode *pNode) override
 
void Visit (SmPlaceNode *pNode) override
 
void Visit (SmTextNode *pNode) override
 
void Visit (SmSpecialNode *pNode) override
 
void Visit (SmGlyphSpecialNode *pNode) override
 
void Visit (SmMathSymbolNode *pNode) override
 
void Visit (SmBlankNode *pNode) override
 
void Visit (SmErrorNode *pNode) override
 
void Visit (SmLineNode *pNode) override
 
void Visit (SmExpressionNode *pNode) override
 
void Visit (SmPolyLineNode *pNode) override
 
void Visit (SmRootNode *pNode) override
 
void Visit (SmRootSymbolNode *pNode) override
 
void Visit (SmRectangleNode *pNode) override
 
void Visit (SmVerticalBraceNode *pNode) override
 
virtual void Visit (SmTableNode *pNode)=0
 
virtual void Visit (SmBraceNode *pNode)=0
 
virtual void Visit (SmBracebodyNode *pNode)=0
 
virtual void Visit (SmOperNode *pNode)=0
 
virtual void Visit (SmAlignNode *pNode)=0
 
virtual void Visit (SmAttributeNode *pNode)=0
 
virtual void Visit (SmFontNode *pNode)=0
 
virtual void Visit (SmUnHorNode *pNode)=0
 
virtual void Visit (SmBinHorNode *pNode)=0
 
virtual void Visit (SmBinVerNode *pNode)=0
 
virtual void Visit (SmBinDiagonalNode *pNode)=0
 
virtual void Visit (SmSubSupNode *pNode)=0
 
virtual void Visit (SmMatrixNode *pNode)=0
 
virtual void Visit (SmPlaceNode *pNode)=0
 
virtual void Visit (SmTextNode *pNode)=0
 
virtual void Visit (SmSpecialNode *pNode)=0
 
virtual void Visit (SmGlyphSpecialNode *pNode)=0
 
virtual void Visit (SmMathSymbolNode *pNode)=0
 
virtual void Visit (SmBlankNode *pNode)=0
 
virtual void Visit (SmErrorNode *pNode)=0
 
virtual void Visit (SmLineNode *pNode)=0
 
virtual void Visit (SmExpressionNode *pNode)=0
 
virtual void Visit (SmPolyLineNode *pNode)=0
 
virtual void Visit (SmRootNode *pNode)=0
 
virtual void Visit (SmRootSymbolNode *pNode)=0
 
virtual void Visit (SmRectangleNode *pNode)=0
 
virtual void Visit (SmVerticalBraceNode *pNode)=0
 

Private Member Functions

void LineToText (SmNode *pNode)
 Extract text from a pNode that constitutes a line. More...
 
void Append (std::u16string_view rText)
 Appends rText to the OUStringBuffer ( maCmdText ). More...
 
void Separate ()
 Append a blank for separation, if needed. More...
 

Private Attributes

OUStringBuffer maCmdText
 Output text generated from the pNodes. More...
 

Additional Inherited Members

- Protected Member Functions inherited from SmVisitor
 ~SmVisitor ()
 

Detailed Description

Extract command text from pNodes.

Definition at line 464 of file visitors.hxx.

Constructor & Destructor Documentation

◆ SmNodeToTextVisitor()

SmNodeToTextVisitor::SmNodeToTextVisitor ( SmNode pNode,
OUString &  rText 
)

Definition at line 1862 of file visitors.cxx.

References SmNode::Accept(), and maCmdText.

◆ ~SmNodeToTextVisitor()

virtual SmNodeToTextVisitor::~SmNodeToTextVisitor ( )
inlinevirtual

Definition at line 468 of file visitors.hxx.

Member Function Documentation

◆ Append()

void SmNodeToTextVisitor::Append ( std::u16string_view  rText)
inlineprivate

Appends rText to the OUStringBuffer ( maCmdText ).

Parameters
rText
Returns

Definition at line 515 of file visitors.hxx.

References maCmdText.

Referenced by Visit().

◆ LineToText()

void SmNodeToTextVisitor::LineToText ( SmNode pNode)
inlineprivate

Extract text from a pNode that constitutes a line.

Parameters
pNode
Returns

Definition at line 504 of file visitors.hxx.

References SmNode::Accept(), and Separate().

Referenced by Visit().

◆ Separate()

void SmNodeToTextVisitor::Separate ( )
inlineprivate

Append a blank for separation, if needed.

It is needed if last char is not ' '.

Returns

Definition at line 524 of file visitors.hxx.

References maCmdText.

Referenced by LineToText(), and Visit().

◆ Visit() [1/27]

void SmNodeToTextVisitor::Visit ( SmAlignNode pNode)
overridevirtual

◆ Visit() [2/27]

void SmNodeToTextVisitor::Visit ( SmAttributeNode pNode)
overridevirtual

Implements SmVisitor.

Definition at line 2026 of file visitors.cxx.

References Append(), SmToken::aText, SmAttributeNode::Body(), SmNode::GetToken(), and LineToText().

◆ Visit() [3/27]

void SmNodeToTextVisitor::Visit ( SmBinDiagonalNode pNode)
overridevirtual

Implements SmVisitor.

Definition at line 2215 of file visitors.cxx.

References Append(), SmStructureNode::GetSubNode(), LineToText(), Separate(), and u.

◆ Visit() [4/27]

void SmNodeToTextVisitor::Visit ( SmBinHorNode pNode)
overridevirtual

◆ Visit() [5/27]

void SmNodeToTextVisitor::Visit ( SmBinVerNode pNode)
overridevirtual

◆ Visit() [6/27]

void SmNodeToTextVisitor::Visit ( SmBlankNode pNode)
overridevirtual

Implements SmVisitor.

Definition at line 2555 of file visitors.cxx.

References Append(), SmBlankNode::GetBlankNum(), i, and u.

◆ Visit() [7/27]

void SmNodeToTextVisitor::Visit ( SmBracebodyNode pNode)
overridevirtual

Implements SmVisitor.

Definition at line 1944 of file visitors.cxx.

References Separate().

◆ Visit() [8/27]

void SmNodeToTextVisitor::Visit ( SmBraceNode pNode)
overridevirtual

◆ Visit() [9/27]

void SmNodeToTextVisitor::Visit ( SmErrorNode pNode)
overridevirtual

Implements SmVisitor.

Definition at line 2569 of file visitors.cxx.

◆ Visit() [10/27]

void SmNodeToTextVisitor::Visit ( SmExpressionNode pNode)
overridevirtual

◆ Visit() [11/27]

void SmNodeToTextVisitor::Visit ( SmFontNode pNode)
overridevirtual

◆ Visit() [12/27]

void SmNodeToTextVisitor::Visit ( SmGlyphSpecialNode pNode)
overridevirtual

Implements SmVisitor.

Definition at line 2369 of file visitors.cxx.

References Append(), SmToken::aText, SmToken::eType, SmNode::GetToken(), TBOPER, and u.

◆ Visit() [13/27]

void SmNodeToTextVisitor::Visit ( SmLineNode pNode)
overridevirtual

Implements SmVisitor.

Definition at line 2573 of file visitors.cxx.

References Separate().

◆ Visit() [14/27]

void SmNodeToTextVisitor::Visit ( SmMathSymbolNode pNode)
overridevirtual

◆ Visit() [15/27]

void SmNodeToTextVisitor::Visit ( SmMatrixNode pNode)
overridevirtual

◆ Visit() [16/27]

void SmNodeToTextVisitor::Visit ( SmOperNode pNode)
overridevirtual

◆ Visit() [17/27]

void SmNodeToTextVisitor::Visit ( SmPlaceNode pNode)
overridevirtual

Implements SmVisitor.

Definition at line 2319 of file visitors.cxx.

References Append(), and u.

◆ Visit() [18/27]

void SmNodeToTextVisitor::Visit ( SmPolyLineNode pNode)
overridevirtual

Implements SmVisitor.

Definition at line 2612 of file visitors.cxx.

◆ Visit() [19/27]

void SmNodeToTextVisitor::Visit ( SmRectangleNode pNode)
overridevirtual

Implements SmVisitor.

Definition at line 2632 of file visitors.cxx.

◆ Visit() [20/27]

void SmNodeToTextVisitor::Visit ( SmRootNode pNode)
overridevirtual

Implements SmVisitor.

Definition at line 2616 of file visitors.cxx.

References Append(), SmStructureNode::GetSubNode(), LineToText(), and u.

◆ Visit() [21/27]

void SmNodeToTextVisitor::Visit ( SmRootSymbolNode pNode)
overridevirtual

Implements SmVisitor.

Definition at line 2628 of file visitors.cxx.

◆ Visit() [22/27]

void SmNodeToTextVisitor::Visit ( SmSpecialNode pNode)
overridevirtual

Implements SmVisitor.

Definition at line 2353 of file visitors.cxx.

References Append(), SmToken::aText, SmToken::eType, SmNode::GetToken(), TLIMINF, TLIMSUP, type, and u.

◆ Visit() [23/27]

void SmNodeToTextVisitor::Visit ( SmSubSupNode pNode)
overridevirtual

◆ Visit() [24/27]

void SmNodeToTextVisitor::Visit ( SmTableNode pNode)
overridevirtual

◆ Visit() [25/27]

void SmNodeToTextVisitor::Visit ( SmTextNode pNode)
overridevirtual

Implements SmVisitor.

Definition at line 2324 of file visitors.cxx.

References Append(), SmToken::aText, SmToken::eType, SmNode::GetToken(), Separate(), TFUNC, THEX, TIDENT, TNUMBER, TTEXT, type, and u.

◆ Visit() [26/27]

void SmNodeToTextVisitor::Visit ( SmUnHorNode pNode)
overridevirtual

◆ Visit() [27/27]

void SmNodeToTextVisitor::Visit ( SmVerticalBraceNode pNode)
overridevirtual

Member Data Documentation

◆ maCmdText

OUStringBuffer SmNodeToTextVisitor::maCmdText
private

Output text generated from the pNodes.

Definition at line 530 of file visitors.hxx.

Referenced by Append(), Separate(), and SmNodeToTextVisitor().


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