Go to the documentation of this file.
25 #ifndef WPSCONTENTLISTENER_H
26 #define WPSCONTENTLISTENER_H
30 #include <librevenge/librevenge.h>
47 WPSContentListener(std::vector<WPSPageSpan>
const &pageList, librevenge::RVNGTextInterface *documentInterface);
51 void setMetaData(
const librevenge::RVNGPropertyList &list);
70 void insertEOL(
bool softBreak=
false)
final;
109 std::string type=
"image/pict",
110 librevenge::RVNGPropertyList frameExtras=librevenge::RVNGPropertyList());
113 librevenge::RVNGPropertyList frameExtras=librevenge::RVNGPropertyList());
117 librevenge::RVNGPropertyList frameExtras=librevenge::RVNGPropertyList());
std::shared_ptr< WPSList > m_list
Definition: WPSContentListener.cpp:95
void _appendParagraphProperties(librevenge::RVNGPropertyList &propList, const bool isListElement=false)
Definition: WPSContentListener.cpp:793
void closeGroup() final
close a group
Definition: WPSContentListener.cpp:1227
Definition: WPSPosition.h:47
Definition: WPSPosition.h:45
void closeTableCell()
close a cell
Definition: WPSContentListener.cpp:1777
void sendHeaderFooters(WPSContentListener *listener, librevenge::RVNGTextInterface *documentInterface)
Definition: WPSPageSpan.cpp:155
std::shared_ptr< WPSList > getCurrentList() const
returns the current list
Definition: WPSContentListener.cpp:419
double m_pageFormWidth
Definition: WPSContentListener.cpp:130
static float getScaleFactor(librevenge::RVNGUnit orig, librevenge::RVNGUnit dest)
returns a float which can be used to convert between to unit
Definition: WPSPosition.h:136
a field
Definition: libwps_internal.h:462
void _changeList()
Definition: WPSContentListener.cpp:864
bool m_sectionAttributesChanged
Definition: WPSContentListener.cpp:124
int m_listLevelIndex
the actual level index
Definition: WPSParagraph.h:121
bool m_inSubDocument
a stack used to know what is open
Definition: WPSContentListener.cpp:140
bool m_isTableCellOpened
Definition: WPSContentListener.cpp:118
#define WPS_SOFT_PAGE_BREAK
Definition: libwps_internal.h:520
bool m_isPageSpanOpened
Definition: WPSContentListener.cpp:100
bool isSectionOpened() const
returns true if a section is opened
Definition: WPSContentListener.cpp:449
void _openPageSpan()
Definition: WPSContentListener.cpp:591
~WPSContentListener() final
Definition: WPSContentListener.cpp:220
std::vector< bool > m_listOrderedLevels
Definition: WPSContentListener.cpp:138
Definition: WPSPosition.h:47
bool isParagraphOpened() const final
returns true if a paragraph or a list is opened
Definition: WPSContentListener.cpp:376
bool m_isListElementOpened
Definition: WPSContentListener.cpp:110
void setFont(const WPSFont &font) final
set the actual font
Definition: WPSContentListener.cpp:354
AnchorTo m_anchorTo
anchor position
Definition: WPSPosition.h:239
librevenge::RVNGTextInterface * m_documentInterface
Definition: WPSContentListener.h:194
WPSDocumentParsingState(std::vector< WPSPageSpan > const &pageList)
constructor
Definition: WPSContentListener.cpp:67
double getFormLength() const
Definition: WPSPageSpan.h:57
double m_pageMarginLeft
Definition: WPSContentListener.cpp:133
double m_margins[3]
the margins
Definition: WPSParagraph.h:101
#define WPS_SUBSCRIPT_BIT
Definition: libwps_internal.h:500
WPSParagraph m_paragraph
Definition: WPSContentListener.cpp:94
bool m_pageFormOrientationIsPortrait
Definition: WPSContentListener.cpp:131
void setDocumentLanguage(int lcid) final
Definition: WPSContentListener.cpp:528
void _closeParagraph()
Definition: WPSContentListener.cpp:751
#define WPS_OVERLINE_BIT
Definition: libwps_internal.h:515
#define WPS_UNDERLINE_BIT
Definition: libwps_internal.h:508
~WPSContentParsingState()
Definition: WPSContentListener.cpp:207
bool m_isParagraphOpened
Definition: WPSContentListener.cpp:109
const WPSFont & getFont() const final
returns the actual font
Definition: WPSContentListener.cpp:368
void _handleFrameParameters(librevenge::RVNGPropertyList &propList, WPSPosition const &pos)
Definition: WPSContentListener.cpp:1308
Definition: libwps_internal.cpp:38
bool _openFrame(WPSPosition const &pos, librevenge::RVNGPropertyList extras=librevenge::RVNGPropertyList())
Definition: WPSContentListener.cpp:1239
bool m_isFrameOpened
Definition: WPSContentListener.cpp:102
#define WPS_SUPERSCRIPT_BIT
Definition: libwps_internal.h:499
bool m_isTableColumnOpened
Definition: WPSContentListener.cpp:117
double getMarginLeft() const
Definition: WPSPageSpan.h:69
bool m_isHeaderFooterStarted
Definition: WPSContentListener.cpp:59
void insertEOL(bool softBreak=false) final
Definition: WPSContentListener.cpp:255
const WPSParagraph & getParagraph() const final
returns the actual paragraph
Definition: WPSContentListener.cpp:381
void _endSubDocument()
Definition: WPSContentListener.cpp:1637
Wrapping m_wrapping
Wrapping.
Definition: WPSPosition.h:247
const Vec2f & origin() const
return the frame origin
Definition: WPSPosition.h:116
WPSContentParsingState & operator=(const WPSContentParsingState &)=delete
librevenge::RVNGString m_anchorCellName
the anchor cell name
Definition: WPSPosition.h:241
void _insertBreakIfNecessary(librevenge::RVNGPropertyList &propList)
Definition: WPSContentListener.cpp:334
Definition: WPSContentListener.h:44
int m_languageId
the language (simplified locale name id) if known
Definition: WPSFont.h:91
define the font properties
Definition: WPSFont.h:36
WPSContentListener(std::vector< WPSPageSpan > const &pageList, librevenge::RVNGTextInterface *documentInterface)
Definition: WPSContentListener.cpp:211
void setCurrentList(std::shared_ptr< WPSList > list)
function to set the actual list
Definition: WPSContentListener.cpp:413
Definition: WPSPosition.h:43
Definition: WPSParagraph.h:37
librevenge::RVNGString m_textBuffer
Definition: WPSContentListener.cpp:90
ListLevel m_listLevel
the actual level
Definition: WPSParagraph.h:123
void _closeFrame()
Definition: WPSContentListener.cpp:1296
void _openSection()
Definition: WPSContentListener.cpp:666
void insertLabelNote(const NoteType noteType, librevenge::RVNGString const &label, WPSSubDocumentPtr &subDocument)
adds a label note
Definition: WPSContentListener.cpp:1046
void insertNote(const NoteType noteType, WPSSubDocumentPtr &subDocument)
adds note
Definition: WPSContentListener.cpp:1035
Definition: libwps_internal.h:255
int getSectionNumColumns() const
returns the actual number of columns ( or 1 if no section is opened )
Definition: WPSContentListener.cpp:454
bool openGroup(WPSPosition const &pos) final
open a group
Definition: WPSContentListener.cpp:1173
void insertField(WPSField const &field) final
adds a field
Definition: WPSContentListener.cpp:427
Definition: libwps_internal.h:248
Definition: WPSPosition.h:43
std::shared_ptr< WPSDocumentParsingState > m_ds
Definition: WPSContentListener.h:191
#define WPS_PAGE_BREAK
Definition: libwps_internal.h:519
void _openParagraph()
Definition: WPSContentListener.cpp:722
bool m_isSectionOpened
Definition: WPSContentListener.cpp:101
double getFormWidth() const
Definition: WPSPageSpan.h:61
void _flushDeferredTabs()
Definition: WPSContentListener.cpp:978
std::vector< std::shared_ptr< WPSContentParsingState > > m_psStack
Definition: WPSContentListener.h:193
bool m_isNote
Definition: WPSContentListener.cpp:142
bool addTo(librevenge::RVNGPropertyList &propList) const
add the link property to proplist (if possible)
Definition: libwps_internal.cpp:530
double m_pageMarginBottom
Definition: WPSContentListener.cpp:136
float getInvUnitScale(librevenge::RVNGUnit unt) const
returns a float which can be used to scale some data in object unit
Definition: WPSPosition.h:174
Definition: libwps_internal.h:151
void _closeSpan()
Definition: WPSContentListener.cpp:965
Type m_type
the type
Definition: libwps_internal.h:484
#define WPS_DEBUG_MSG(M)
Definition: libwps_internal.h:134
Definition: WPSPosition.h:49
#define WPS_FALLTHROUGH
fall through attributes
Definition: libwps_internal.h:82
class to store the paragraph properties
Definition: WPSParagraph.h:57
libwps::SubDocumentType m_subDocumentType
Definition: WPSContentListener.cpp:143
void _updatePageSpanDependent(bool set)
Definition: WPSContentListener.cpp:659
void openTableCell(WPSCell const &cell, librevenge::RVNGPropertyList const &extras=librevenge::RVNGPropertyList())
low level function to define a cell.
Definition: WPSContentListener.cpp:1757
int m_footNoteNumber
footnote number
Definition: WPSContentListener.cpp:56
T x() const
first element
Definition: libwps_internal.h:542
void getPageProperty(librevenge::RVNGPropertyList &pList) const
Definition: WPSPageSpan.cpp:282
Definition: WPSPosition.h:49
bool openSection(std::vector< int > colsWidth=std::vector< int >(), librevenge::RVNGUnit unit=librevenge::RVNG_INCH)
open a section if possible
Definition: WPSContentListener.cpp:459
bool m_isSpanOpened
Definition: WPSContentListener.cpp:108
Definition: libwps_internal.h:248
void insertTextBox(WPSPosition const &pos, WPSSubDocumentPtr subDocument, librevenge::RVNGPropertyList frameExtras=librevenge::RVNGPropertyList())
adds a textbox in given position
Definition: WPSContentListener.cpp:1131
void appendUnicode(uint32_t val, librevenge::RVNGString &buffer)
adds an unicode character to a string ( with correct encoding ).
Definition: libwps_internal.cpp:836
SubDocumentType
Definition: libwps_internal.h:248
Definition: WPSPageSpan.h:41
virtual class for content listener
Definition: WPSListener.h:36
Definition: WPSPosition.h:49
double m_pageMarginTop
Definition: WPSContentListener.cpp:135
int m_endNoteNumber
endnote number
Definition: WPSContentListener.cpp:56
librevenge::RVNGString getString() const
returns a string corresponding to the field (if possible) */
Definition: libwps_internal.cpp:584
void _closeListElement()
Definition: WPSContentListener.cpp:847
bool m_isHeaderFooterWithoutParagraph
Definition: WPSContentListener.cpp:104
Definition: WPSPosition.h:49
void handleSubDocument(WPSSubDocumentPtr &subDocument, libwps::SubDocumentType subDocumentType)
Definition: WPSContentListener.cpp:1538
void startDocument()
Definition: WPSContentListener.cpp:546
Definition: libwps_internal.h:248
void _resetParagraphState(const bool isListElement=false)
Definition: WPSContentListener.cpp:774
void addTo(librevenge::RVNGPropertyList &propList) const
add to the propList
Definition: WPSCell.cpp:534
void setMetaData(const librevenge::RVNGPropertyList &list)
Definition: WPSContentListener.cpp:536
bool m_isParagraphPageBreak
Definition: WPSContentListener.cpp:98
Definition: WPSPosition.h:43
std::vector< WPSColumnDefinition > m_textColumns
Definition: WPSContentListener.cpp:126
int page() const
returns the frame page
Definition: WPSPosition.h:111
Definition: libwps_internal.h:248
void insertPicture(WPSPosition const &pos, const librevenge::RVNGBinaryData &binaryData, std::string type="image/pict", librevenge::RVNGPropertyList frameExtras=librevenge::RVNGPropertyList())
adds a picture in given position
Definition: WPSContentListener.cpp:1144
double m_size
font size
Definition: WPSFont.h:83
void insertObject(WPSPosition const &pos, const WPSEmbeddedObject &obj, librevenge::RVNGPropertyList frameExtras=librevenge::RVNGPropertyList())
adds an object with replacement picture in given position
Definition: WPSContentListener.cpp:1157
std::shared_ptr< WPSSubDocument > WPSSubDocumentPtr
shared pointer to WPSSubDocument
Definition: libwps_internal.h:111
small class use to define a embedded object
Definition: libwps_internal.h:1076
bool m_isGroupOpened
a flag to know if openGroup was called
Definition: WPSContentListener.cpp:106
librevenge::RVNGUnit unit() const
returns the unit
Definition: WPSPosition.h:131
void _flushText()
Definition: WPSContentListener.cpp:1001
void _closePageSpan()
Definition: WPSContentListener.cpp:647
Definition: WPSPosition.h:43
Definition: libwps_internal.h:248
a structure used to defined the cell position, and a format
Definition: WPSCell.h:290
void insertTab() final
adds an unicode character to a string ( with correct encoding ).
Definition: WPSContentListener.cpp:276
void openTableRow(float h, librevenge::RVNGUnit unit, bool headerRow=false)
open a row with given height.
Definition: WPSContentListener.cpp:1702
double getMarginTop() const
Definition: WPSPageSpan.h:77
int m_numPagesRemainingInSpan
Definition: WPSContentListener.cpp:121
void _popParsingState()
resets the previous parsing state
Definition: WPSContentListener.cpp:1818
Definition: libwps_internal.h:248
bool m_isParagraphColumnBreak
Definition: WPSContentListener.cpp:97
Definition: WPSPosition.h:47
int m_currentPageNumber
Definition: WPSContentListener.cpp:122
Definition: WPSPosition.h:43
int getPageSpan() const
Definition: WPSPageSpan.h:105
double m_labelWidth
the list width
Definition: WPSList.h:94
void openTable(std::vector< float > const &colWidth, librevenge::RVNGUnit unit)
open a table
Definition: WPSContentListener.cpp:1651
Definition: WPSPageSpan.h:38
Definition: WPSPosition.h:43
double m_width
Definition: libwps_internal.h:263
double getMarginBottom() const
Definition: WPSPageSpan.h:81
void insertBreak(const uint8_t breakType) final
Definition: WPSContentListener.cpp:288
void closeTable()
closes this table
Definition: WPSContentListener.cpp:1687
the content state
Definition: WPSContentListener.cpp:85
WPSDocumentParsingState & operator=(const WPSDocumentParsingState &)=delete
Definition: libwps_internal.h:248
double m_pageFormLength
Definition: WPSContentListener.cpp:129
void addEmptyTableCell(Vec2i const &pos, Vec2i span=Vec2i(1, 1))
add empty cell
Definition: WPSContentListener.cpp:1736
bool isHeaderFooterOpened() const
Definition: WPSContentListener.cpp:1626
librevenge::RVNGPropertyList m_metaData
Definition: WPSContentListener.cpp:54
bool m_isTableRowOpened
Definition: WPSContentListener.cpp:116
void _closeSection()
Definition: WPSContentListener.cpp:703
double getMarginRight() const
Definition: WPSPageSpan.h:73
Class to define the position of an object (textbox, picture, ..) in the document.
Definition: WPSPosition.h:39
Definition: WPSPosition.h:47
const Vec2f & size() const
returns the frame size
Definition: WPSPosition.h:121
bool addTo(librevenge::RVNGPropertyList &propList) const
add the link property to proplist
Definition: libwps_internal.cpp:784
bool m_isTextColumnWithoutParagraph
Definition: WPSContentListener.cpp:127
a small structure used to store the informations about a list
Definition: WPSList.h:36
bool m_firstParagraphInPageSpan
Definition: WPSContentListener.cpp:112
YPos m_yPos
Y relative position.
Definition: WPSPosition.h:245
NoteType
defines the footnote type
Definition: WPSContentListener.h:99
~WPSDocumentParsingState()
destructor
Definition: WPSContentListener.cpp:79
void insertUnicodeString(librevenge::RVNGString const &str) final
adds a unicode string
Definition: WPSContentListener.cpp:248
std::shared_ptr< WPSContentParsingState > m_ps
Definition: WPSContentListener.h:192
int m_numDeferredTabs
Definition: WPSContentListener.cpp:91
Definition: WPSContentListener.h:99
bool m_isPageSpanBreakDeferred
Definition: WPSContentListener.cpp:103
std::vector< WPSSubDocumentPtr > m_subDocuments
Definition: WPSContentListener.cpp:60
bool m_isTableOpened
Definition: WPSContentListener.cpp:115
int m_newListId
Definition: WPSContentListener.cpp:57
const Vec2f & naturalSize() const
returns the natural size (if known)
Definition: WPSPosition.h:126
bool m_isDocumentStarted
Definition: WPSContentListener.cpp:59
#define WPS_COLUMN_BREAK
Definition: libwps_internal.h:521
double m_pageMarginRight
Definition: WPSContentListener.cpp:134
void endDocument()
Definition: WPSContentListener.cpp:562
void closeTableRow()
closes this row
Definition: WPSContentListener.cpp:1725
Definition: WPSOLEStream.h:33
FormOrientation getFormOrientation() const
Definition: WPSPageSpan.h:65
void insertCharacter(uint8_t character) final
adds a basic character, ..
Definition: WPSContentListener.cpp:227
void _openSpan()
Definition: WPSContentListener.cpp:940
std::vector< WPSPageSpan > m_pageList
Definition: WPSContentListener.cpp:53
void _startSubDocument()
Definition: WPSContentListener.cpp:1631
a noop deleter used to transform a librevenge pointer in a false std::shared_ptr
Definition: libwps_internal.h:71
int m_numColumns
Definition: WPSContentListener.cpp:125
Definition: WPSPosition.h:43
std::vector< unsigned int > m_numRowsToSkip
Definition: WPSContentListener.cpp:114
void insertUnicode(uint32_t character) final
adds an unicode character
Definition: WPSContentListener.cpp:239
int getPageNumber() const
Definition: WPSPageSpan.h:89
void insertComment(WPSSubDocumentPtr &subDocument)
adds comment
Definition: WPSContentListener.cpp:1104
T y() const
second element
Definition: libwps_internal.h:547
XPos m_xPos
X relative position.
Definition: WPSPosition.h:243
WPSFont m_font
Definition: WPSContentListener.cpp:93
void setParagraph(const WPSParagraph ¶) final
sets the actual paragraph
Definition: WPSContentListener.cpp:386
unsigned m_currentPage
Definition: WPSContentListener.cpp:120
std::shared_ptr< WPSContentParsingState > _pushParsingState()
creates a new parsing state (copy of the actual state)
Definition: WPSContentListener.cpp:1798
bool closeSection()
close a section
Definition: WPSContentListener.cpp:507
the document state
Definition: WPSContentListener.cpp:46
librevenge::RVNGString m_name
font name
Definition: WPSFont.h:81
Definition: WPSContentListener.h:99
void _openListElement()
Definition: WPSContentListener.cpp:822
WPSContentParsingState()
Definition: WPSContentListener.cpp:150
Definition: WPSPosition.h:45
Generated on Mon Jan 20 2020 00:08:43 for libwps by
doxygen 1.8.16