This class contents the main functions needed to create a Word processing Document. More...
#include <MWAWTextListener.hxx>
 
  
| Public Member Functions | |
| MWAWTextListener (MWAWParserState &parserState, std::vector< MWAWPageSpan > const &pageList, librevenge::RVNGTextInterface *documentInterface) | |
| constructor  More... | |
| ~MWAWTextListener () final | |
| destructor  More... | |
| Type | getType () const final | 
| returns the listener type  More... | |
| void | setDocumentMetaData (librevenge::RVNGPropertyList const &metadata) final | 
| sets the documents metadata  More... | |
| void | setDocumentLanguage (std::string const &locale) final | 
| sets the documents language  More... | |
| void | startDocument () final | 
| starts the document  More... | |
| void | endDocument (bool sendDelayedSubDoc=true) final | 
| ends the document  More... | |
| bool | isDocumentStarted () const final | 
| returns true if a document is opened  More... | |
| void | handleSubDocument (MWAWSubDocumentPtr const &subDocument, libmwaw::SubDocumentType subDocumentType) final | 
| function called to add a subdocument  More... | |
| bool | isSubDocumentOpened (libmwaw::SubDocumentType &subdocType) const final | 
| returns try if a subdocument is open  More... | |
| bool | openFrame (MWAWPosition const &pos, MWAWGraphicStyle const &style=MWAWGraphicStyle::emptyStyle()) final | 
| tries to open a frame  More... | |
| void | closeFrame () final | 
| tries to close the last open frame  More... | |
| bool | openGroup (MWAWPosition const &pos) final | 
| open a group  More... | |
| void | closeGroup () final | 
| close a group  More... | |
| bool | canWriteText () const final | 
| returns true if we can add text data  More... | |
| bool | isPageSpanOpened () const final | 
| returns true if a page is opened  More... | |
| MWAWPageSpan const & | getPageSpan () final | 
| returns the current page span  More... | |
| bool | insertHeader (MWAWSubDocumentPtr const &subDocument, librevenge::RVNGPropertyList const &extras) final | 
| insert a header  More... | |
| bool | insertFooter (MWAWSubDocumentPtr const &subDocument, librevenge::RVNGPropertyList const &extras) final | 
| insert a footer  More... | |
| bool | isHeaderFooterOpened () const final | 
| returns true if the header/footer is open  More... | |
| void | insertChar (uint8_t character) final | 
| adds a basic character, ..  More... | |
| void | insertCharacter (unsigned char c) final | 
| insert a character using the font converter to find the utf8 character  More... | |
| int | insertCharacter (unsigned char c, MWAWInputStreamPtr &input, long endPos=-1) final | 
| insert a character using the font converter to find the utf8 character and if needed, input to read extra character.  More... | |
| void | insertUnicode (uint32_t character) final | 
| adds an unicode character.  More... | |
| void | insertUnicodeString (librevenge::RVNGString const &str) final | 
| adds a unicode string  More... | |
| void | insertTab () final | 
| adds a tab  More... | |
| void | insertEOL (bool softBreak=false) final | 
| adds an end of line ( by default an hard one)  More... | |
| void | setFont (MWAWFont const &font) final | 
| sets the font  More... | |
| MWAWFont const & | getFont () const final | 
| returns the actual font  More... | |
| bool | isParagraphOpened () const final | 
| returns true if a paragraph or a list is opened  More... | |
| void | setParagraph (MWAWParagraph const ¶graph) final | 
| sets the paragraph  More... | |
| MWAWParagraph const & | getParagraph () const final | 
| returns the actual paragraph  More... | |
| void | insertField (MWAWField const &field) final | 
| adds a field type  More... | |
| void | openLink (MWAWLink const &link) final | 
| open a link  More... | |
| void | closeLink () final | 
| close a link  More... | |
| void | insertNote (MWAWNote const ¬e, MWAWSubDocumentPtr &subDocument) final | 
| insert a note  More... | |
| void | insertComment (MWAWSubDocumentPtr &subDocument) final | 
| adds comment  More... | |
| void | insertPicture (MWAWPosition const &pos, MWAWEmbeddedObject const &picture, MWAWGraphicStyle const &style=MWAWGraphicStyle::emptyStyle()) final | 
| adds a picture with potential various representationin given position  More... | |
| void | insertShape (MWAWPosition const &pos, MWAWGraphicShape const &shape, MWAWGraphicStyle const &style) final | 
| adds a shape picture in given position  More... | |
| void | insertTextBox (MWAWPosition const &pos, MWAWSubDocumentPtr const &subDocument, MWAWGraphicStyle const &frameStyle=MWAWGraphicStyle::emptyStyle()) final | 
| adds a textbox in given position  More... | |
| void | openTable (MWAWTable const &table) final | 
| open a table  More... | |
| void | closeTable () final | 
| closes this table  More... | |
| void | openTableRow (float h, librevenge::RVNGUnit unit, bool headerRow=false) final | 
| open a row with given height ( if h < 0.0, set min-row-height = -h )  More... | |
| void | closeTableRow () final | 
| closes this row  More... | |
| void | openTableCell (MWAWCell const &cell) final | 
| open a cell  More... | |
| void | closeTableCell () final | 
| close a cell  More... | |
| void | addEmptyTableCell (MWAWVec2i const &pos, MWAWVec2i span=MWAWVec2i(1, 1)) final | 
| add empty cell  More... | |
| bool | canOpenSectionAddBreak () const final | 
| returns true if we can add open a section, add page break, ...  More... | |
| bool | isSectionOpened () const final | 
| returns true if a section is opened  More... | |
| MWAWSection const & | getSection () const final | 
| returns the actual section  More... | |
| bool | openSection (MWAWSection const §ion) final | 
| open a section if possible  More... | |
| bool | closeSection () final | 
| close a section  More... | |
| void | insertBreak (BreakType breakType) final | 
| inserts a break type: ColumBreak, PageBreak, ..  More... | |
|  Public Member Functions inherited from MWAWListener | |
| virtual | ~MWAWListener () | 
| destructor  More... | |
| virtual void | insertTextBoxInShape (MWAWPosition const &pos, MWAWSubDocumentPtr const &subDocument, MWAWGraphicShape const &, MWAWGraphicStyle const &frameStyle=MWAWGraphicStyle::emptyStyle()) | 
| adds a textbox in given position  More... | |
| Protected Member Functions | |
| void | _openSection () | 
| does open a section (low level)  More... | |
| void | _closeSection () | 
| does close a section (low level)  More... | |
| void | _openPageSpan (bool sendHeaderFooters=true) | 
| does open a new page (low level)  More... | |
| void | _closePageSpan () | 
| does close a page (low level)  More... | |
| void | _startSubDocument () | 
| void | _endSubDocument () | 
| void | _handleFrameParameters (librevenge::RVNGPropertyList &propList, MWAWPosition const &pos) | 
| void | _openParagraph () | 
| void | _closeParagraph () | 
| void | _appendParagraphProperties (librevenge::RVNGPropertyList &propList, const bool isListElement=false) | 
| void | _resetParagraphState (const bool isListElement=false) | 
| void | _openListElement () | 
| open a list level  More... | |
| void | _closeListElement () | 
| close a list level  More... | |
| void | _changeList () | 
| update the list so that it corresponds to the actual level  More... | |
| int | _getListId () const | 
| low level: find a list id which corresponds to actual list and a change of level.  More... | |
| void | _openSpan () | 
| low level: the function which opens a new span property  More... | |
| void | _closeSpan () | 
| low level: the function which closes the last opened span property  More... | |
| void | _flushText () | 
| low level: flush the deferred text  More... | |
| void | _flushDeferredTabs () | 
| low level: flush the deferred tabs  More... | |
| void | _insertBreakIfNecessary (librevenge::RVNGPropertyList &propList) | 
| std::shared_ptr< MWAWTextListenerInternal::State > | _pushParsingState () | 
| creates a new parsing state (copy of the actual state)  More... | |
| void | _popParsingState () | 
| resets the previous parsing state  More... | |
| Protected Attributes | |
| std::shared_ptr< MWAWTextListenerInternal::DocumentState > | m_ds | 
| the main parse state  More... | |
| std::shared_ptr< MWAWTextListenerInternal::State > | m_ps | 
| the actual local parse state  More... | |
| std::vector< std::shared_ptr< MWAWTextListenerInternal::State > > | m_psStack | 
| stack of local state  More... | |
| MWAWParserState & | m_parserState | 
| the parser state  More... | |
| librevenge::RVNGTextInterface * | m_documentInterface | 
| the document interface  More... | |
| Private Member Functions | |
| MWAWTextListener (const MWAWTextListener &)=delete | |
| copy constructor (unimplemented)  More... | |
| MWAWTextListener & | operator= (const MWAWTextListener &)=delete | 
| operator= (unimplemented)  More... | |
| Additional Inherited Members | |
|  Public Types inherited from MWAWListener | |
| enum | Type { Graphic, Presentation, Spreadsheet, Text } | 
| the listener type  More... | |
| enum | BreakType { PageBreak =0, SoftPageBreak, ColumnBreak } | 
| the different break type  More... | |
This class contents the main functions needed to create a Word processing Document.
| MWAWTextListener::MWAWTextListener | ( | MWAWParserState & | parserState, | 
| std::vector< MWAWPageSpan > const & | pageList, | ||
| librevenge::RVNGTextInterface * | documentInterface | ||
| ) | 
constructor
| 
 | final | 
destructor
| 
 | privatedelete | 
copy constructor (unimplemented)
| 
 | protected | 
Referenced by _openListElement(), and _openParagraph().
| 
 | protected | 
update the list so that it corresponds to the actual level
Referenced by _closeSection(), _endSubDocument(), _openSpan(), closeTableCell(), endDocument(), and insertNote().
| 
 | protected | 
close a list level
Referenced by _closeParagraph().
| 
 | protected | 
does close a page (low level)
Referenced by _closeListElement(), _closeParagraph(), endDocument(), and insertBreak().
| 
 | protected | 
Referenced by _changeList(), _closeSection(), _endSubDocument(), closeTableCell(), endDocument(), insertBreak(), insertEOL(), insertNote(), and openTable().
| 
 | protected | 
does close a section (low level)
Referenced by _closePageSpan(), _openListElement(), _openParagraph(), closeSection(), endDocument(), and handleSubDocument().
| 
 | protected | 
low level: the function which closes the last opened span property
Referenced by _closeListElement(), _closeParagraph(), _flushDeferredTabs(), closeLink(), insertComment(), insertNote(), and setFont().
| 
 | protected | 
Referenced by closeGroup(), closeTable(), and handleSubDocument().
| 
 | protected | 
low level: flush the deferred tabs
Referenced by insertChar(), insertEOL(), insertField(), insertTab(), insertUnicode(), and insertUnicodeString().
| 
 | protected | 
low level: flush the deferred text
Referenced by _closeSpan(), insertComment(), insertEOL(), insertField(), insertNote(), insertTab(), openFrame(), and openGroup().
| 
 | protected | 
low level: find a list id which corresponds to actual list and a change of level.
Referenced by _changeList().
| 
 | protected | 
Referenced by openFrame(), and openGroup().
| 
 | protected | 
Referenced by _appendParagraphProperties().
| 
 | protected | 
open a list level
Referenced by _openSpan().
| 
 | protected | 
does open a new page (low level)
Referenced by _openSection(), endDocument(), and getPageSpan().
| 
 | protected | 
Referenced by _openSpan(), insertComment(), insertNote(), openFrame(), and openGroup().
| 
 | protected | 
does open a section (low level)
Referenced by _changeList(), _openListElement(), _openParagraph(), and openSection().
| 
 | protected | 
low level: the function which opens a new span property
Referenced by _flushDeferredTabs(), endDocument(), handleSubDocument(), insertBreak(), insertChar(), insertEOL(), insertField(), insertUnicode(), insertUnicodeString(), openFrame(), openGroup(), and openLink().
| 
 | protected | 
resets the previous parsing state
Referenced by closeGroup(), closeLink(), closeTable(), and handleSubDocument().
| 
 | protected | 
creates a new parsing state (copy of the actual state)
Referenced by handleSubDocument(), openGroup(), openLink(), and openTable().
| 
 | protected | 
Referenced by _openListElement(), and _openParagraph().
| 
 | protected | 
Referenced by handleSubDocument(), openGroup(), and openTable().
| 
 | finalvirtual | 
add empty cell
Implements MWAWListener.
| 
 | finalvirtual | 
returns true if we can add open a section, add page break, ...
Implements MWAWListener.
| 
 | inlinefinalvirtual | 
returns true if we can add text data
Implements MWAWListener.
| 
 | finalvirtual | 
| 
 | finalvirtual | 
close a group
Implements MWAWListener.
| 
 | finalvirtual | 
close a link
Implements MWAWListener.
| 
 | finalvirtual | 
close a section
Implements MWAWListener.
| 
 | finalvirtual | 
| 
 | finalvirtual | 
| 
 | finalvirtual | 
closes this row
Implements MWAWListener.
| 
 | finalvirtual | 
ends the document
Implements MWAWListener.
| 
 | finalvirtual | 
returns the actual font
Implements MWAWListener.
| 
 | finalvirtual | 
returns the current page span
Implements MWAWListener.
| 
 | finalvirtual | 
returns the actual paragraph
Implements MWAWListener.
| 
 | finalvirtual | 
returns the actual section
Implements MWAWListener.
| 
 | inlinefinalvirtual | 
returns the listener type
Implements MWAWListener.
| 
 | finalvirtual | 
function called to add a subdocument
Implements MWAWListener.
Referenced by insertComment(), insertFooter(), insertHeader(), and insertNote().
| 
 | finalvirtual | 
inserts a break type: ColumBreak, PageBreak, ..
Implements MWAWListener.
| 
 | finalvirtual | 
| 
 | finalvirtual | 
insert a character using the font converter to find the utf8 character
Implements MWAWListener.
| 
 | finalvirtual | 
insert a character using the font converter to find the utf8 character and if needed, input to read extra character.
Implements MWAWListener.
| 
 | finalvirtual | 
adds comment
Implements MWAWListener.
| 
 | finalvirtual | 
adds an end of line ( by default an hard one)
Implements MWAWListener.
| 
 | finalvirtual | 
adds a field type
Implements MWAWListener.
| 
 | finalvirtual | 
insert a footer
Implements MWAWListener.
| 
 | finalvirtual | 
insert a header
Implements MWAWListener.
| 
 | finalvirtual | 
insert a note
Must not happen excepted in corrupted document, so we do the minimum. Note that we have no choice, either we begin by closing the paragraph, ... or we reprogram handleSubDocument.
Implements MWAWListener.
| 
 | finalvirtual | 
adds a picture with potential various representationin given position
Implements MWAWListener.
| 
 | finalvirtual | 
adds a shape picture in given position
Implements MWAWListener.
| 
 | finalvirtual | 
adds a tab
Implements MWAWListener.
| 
 | finalvirtual | 
adds a textbox in given position
Implements MWAWListener.
| 
 | finalvirtual | 
adds an unicode character.
By convention if character=0xfffd(undef), no character is added
Implements MWAWListener.
Referenced by insertChar(), and insertCharacter().
| 
 | finalvirtual | 
| 
 | finalvirtual | 
| 
 | finalvirtual | 
returns true if the header/footer is open
Implements MWAWListener.
| 
 | finalvirtual | 
returns true if a page is opened
Implements MWAWListener.
| 
 | finalvirtual | 
returns true if a paragraph or a list is opened
Implements MWAWListener.
| 
 | finalvirtual | 
returns true if a section is opened
Implements MWAWListener.
| 
 | finalvirtual | 
returns try if a subdocument is open
Implements MWAWListener.
| 
 | finalvirtual | 
| 
 | finalvirtual | 
open a group
Implements MWAWListener.
| 
 | finalvirtual | 
open a link
Implements MWAWListener.
| 
 | finalvirtual | 
open a section if possible
Implements MWAWListener.
| 
 | finalvirtual | 
open a table
Implements MWAWListener.
| 
 | finalvirtual | 
open a cell
Implements MWAWListener.
| 
 | finalvirtual | 
open a row with given height ( if h < 0.0, set min-row-height = -h )
Implements MWAWListener.
| 
 | privatedelete | 
operator= (unimplemented)
| 
 | finalvirtual | 
sets the documents language
Implements MWAWListener.
| 
 | finalvirtual | 
sets the documents metadata
Implements MWAWListener.
| 
 | finalvirtual | 
| 
 | finalvirtual | 
sets the paragraph
Implements MWAWListener.
| 
 | finalvirtual | 
| 
 | protected | 
the document interface
Referenced by _changeList(), _closeListElement(), _closePageSpan(), _closeParagraph(), _closeSection(), _closeSpan(), _flushDeferredTabs(), _flushText(), _openListElement(), _openPageSpan(), _openParagraph(), _openSection(), _openSpan(), addEmptyTableCell(), closeFrame(), closeGroup(), closeLink(), closeTable(), closeTableCell(), closeTableRow(), endDocument(), insertComment(), insertEOL(), insertField(), insertFooter(), insertHeader(), insertNote(), insertPicture(), openFrame(), openGroup(), openLink(), openTable(), openTableCell(), openTableRow(), and startDocument().
| 
 | protected | 
the main parse state
Referenced by _appendParagraphProperties(), _changeList(), _openPageSpan(), _startSubDocument(), endDocument(), getPageSpan(), handleSubDocument(), insertFooter(), insertHeader(), insertNote(), insertPicture(), isDocumentStarted(), isHeaderFooterOpened(), openFrame(), openGroup(), setDocumentLanguage(), setDocumentMetaData(), and startDocument().
| 
 | protected | 
the parser state
Referenced by _changeList(), _getListId(), _openSpan(), insertCharacter(), and openTableCell().
| 
 | protected | 
the actual local parse state
Referenced by _appendParagraphProperties(), _changeList(), _closeListElement(), _closePageSpan(), _closeParagraph(), _closeSection(), _closeSpan(), _endSubDocument(), _flushDeferredTabs(), _flushText(), _getListId(), _insertBreakIfNecessary(), _openListElement(), _openPageSpan(), _openParagraph(), _openSection(), _openSpan(), _popParsingState(), _pushParsingState(), _resetParagraphState(), _startSubDocument(), addEmptyTableCell(), canOpenSectionAddBreak(), closeFrame(), closeGroup(), closeLink(), closeSection(), closeTable(), closeTableCell(), closeTableRow(), endDocument(), getFont(), getPageSpan(), getParagraph(), getSection(), handleSubDocument(), insertBreak(), insertChar(), insertCharacter(), insertComment(), insertEOL(), insertNote(), insertTab(), insertUnicode(), insertUnicodeString(), isPageSpanOpened(), isParagraphOpened(), isSectionOpened(), isSubDocumentOpened(), openFrame(), openGroup(), openLink(), openSection(), openTable(), openTableCell(), openTableRow(), setFont(), and setParagraph().
| 
 | protected | 
stack of local state
Referenced by _popParsingState(), and _pushParsingState().