WPSContentListener.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
2 /* libwps
3  * Version: MPL 2.0 / LGPLv2.1+
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  *
9  * Major Contributor(s):
10  * Copyright (C) 2006, 2007 Andrew Ziem
11  * Copyright (C) 2006 Fridrich Strba (fridrich.strba@bluewin.ch)
12  * Copyright (C) 2003-2005 William Lachance (william.lachance@sympatico.ca)
13  * Copyright (C) 2003 Marc Maurer (uwog@uwog.net)
14  *
15  * For minor contributions see the git repository.
16  *
17  * Alternatively, the contents of this file may be used under the terms
18  * of the GNU Lesser General Public License Version 2.1 or later
19  * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
20  * applicable instead of those above.
21  *
22  * For further information visit http://libwps.sourceforge.net
23  */
24 
25 #ifndef WPSCONTENTLISTENER_H
26 #define WPSCONTENTLISTENER_H
27 
28 #include <vector>
29 
30 #include <libwpd/libwpd.h>
31 
32 #include "libwps_internal.h"
33 
34 class WPXBinaryData;
35 class WPXDocumentInterface;
36 class WPXString;
37 class WPXPropertyListVector;
38 
39 class WPSCell;
40 class WPSList;
41 class WPSPageSpan;
42 class WPSPosition;
43 class WPSSubDocument;
44 struct WPSTabStop;
45 
46 typedef shared_ptr<WPSSubDocument> WPSSubDocumentPtr;
47 
49 {
50  WPSDocumentParsingState(std::vector<WPSPageSpan> const &pageList);
52 
53  std::vector<WPSPageSpan> m_pageList;
54  WPXPropertyList m_metaData;
55 
57  int m_newListId; // a new free id
58 
60  std::vector<WPSSubDocumentPtr> m_subDocuments;
62 private:
65 };
66 
68 {
71 
72  WPXString m_textBuffer;
74 
76  double m_fontSize;
77  WPXString m_fontName;
78  uint32_t m_fontColor;
80 
89 
90  shared_ptr<WPSList> m_list;
92 
98 
102 
104 
105  std::vector<unsigned int> m_numRowsToSkip;
110 
111  unsigned m_currentPage;
114 
117  std::vector < WPSColumnDefinition > m_textColumns;
119 
123 
128 
129  double m_sectionMarginLeft; // In multicolumn sections, the above two will be rather interpreted
130  double m_sectionMarginRight; // as section margin change
133  double m_paragraphMarginLeft; // resulting paragraph margin that is one of the paragraph
134  double m_paragraphMarginRight; // properties
139  double m_leftMarginByPageMarginChange; // part of the margin due to the PAGE margin change
140  double m_rightMarginByPageMarginChange; // inside a page that already has content.
141  double m_leftMarginByParagraphMarginChange; // part of the margin due to the PARAGRAPH
142  double m_rightMarginByParagraphMarginChange; // margin change (in WP6)
143  double m_leftMarginByTabs; // part of the margin due to the LEFT or LEFT/RIGHT Indent; the
144  double m_rightMarginByTabs; // only part of the margin that is reset at the end of a paragraph
145 
146  double m_paragraphTextIndent; // resulting first line indent that is one of the paragraph properties
147  double m_textIndentByParagraphIndentChange; // part of the indent due to the PARAGRAPH indent (WP6???)
148  double m_textIndentByTabs; // part of the indent due to the "Back Tab" or "Left Tab"
149 
150  double m_listReferencePosition; // position from the left page margin of the list number/bullet
151  double m_listBeginPosition; // position from the left page margin of the beginning of the list
152  std::vector<bool> m_listOrderedLevels;
153 
155  std::vector<WPSTabStop> m_tabStops;
157 
159 
160  bool m_isNote;
162 
163 private:
166 };
167 
169 {
170 public:
171  WPSContentListener(std::vector<WPSPageSpan> const &pageList, WPXDocumentInterface *documentInterface);
172  virtual ~WPSContentListener();
173 
174  void setDocumentLanguage(int lcid);
175 
176  void startDocument();
177  void endDocument();
178  void handleSubDocument(WPSSubDocumentPtr &subDocument, libwps::SubDocumentType subDocumentType);
179  bool isHeaderFooterOpened() const;
180 
181  // ------ text data -----------
182 
184  void insertCharacter(uint8_t character);
188  void insertUnicode(uint32_t character);
190  void insertUnicodeString(WPXString const &str);
192  static void appendUnicode(uint32_t val, WPXString &buffer);
193 
194  void insertTab();
195  void insertEOL(bool softBreak=false);
196  void insertBreak(const uint8_t breakType);
197 
198  // ------ text format -----------
199  void setTextFont(const WPXString &fontName);
200  void setFontSize(const uint16_t fontSize);
201  void setFontAttributes(const uint32_t fontAttributes);
202  void setTextLanguage(int lcid);
203  void setTextColor(const uint32_t rgb);
204  void setFont(const WPSFont &font);
205 
206  // ------ paragraph format -----------
208  bool isParagraphOpened() const;
209  void setParagraphLineSpacing(const double lineSpacing, WPXUnit unit=WPX_PERCENT);
212  void setParagraphJustification(libwps::Justification justification, bool force=false);
214  void setParagraphTextIndent(double margin);
219  void setParagraphMargin(double margin, int pos);
223  void setTabs(const std::vector<WPSTabStop> &tabStops);
225  void setParagraphBackgroundColor(uint32_t color=0xFFFFFF);
230  void setParagraphBorders(int which, WPSBorder style=WPSBorder());
231 
232  // ------ list format -----------
234  void setCurrentList(shared_ptr<WPSList> list);
236  shared_ptr<WPSList> getCurrentList() const;
239  void setCurrentListLevel(int level);
240 
241  // ------- fields ----------------
245  void insertField(FieldType type);
247  void insertDateTimeField(char const *format);
248 
249  // ------- subdocument -----------------
253  void insertNote(const NoteType noteType, WPSSubDocumentPtr &subDocument);
255  void insertLabelNote(const NoteType noteType, WPXString const &label, WPSSubDocumentPtr &subDocument);
257  void insertComment(WPSSubDocumentPtr &subDocument);
258 
260  void insertPicture(WPSPosition const &pos, const WPXBinaryData &binaryData,
261  std::string type="image/pict",
262  WPXPropertyList frameExtras=WPXPropertyList());
264  void insertTextBox(WPSPosition const &pos, WPSSubDocumentPtr subDocument,
265  WPXPropertyList frameExtras=WPXPropertyList());
266 
267 
268  // ------- table -----------------
270  void openTable(std::vector<float> const &colWidth, WPXUnit unit);
272  void closeTable();
274  void openTableRow(float h, WPXUnit unit, bool headerRow=false);
276  void closeTableRow();
280  void openTableCell(WPSCell const &cell, WPXPropertyList const &extras);
282  void closeTableCell();
284  void addEmptyTableCell(Vec2i const &pos, Vec2i span=Vec2i(1,1));
285 
286  // ------- section ---------------
288  bool isSectionOpened() const;
290  int getSectionNumColumns() const;
292  bool openSection(std::vector<int> colsWidth=std::vector<int>(), WPXUnit unit=WPX_INCH);
294  bool closeSection();
295 
296 protected:
297  void _openSection();
298  void _closeSection();
299 
300  void _openPageSpan();
301  void _closePageSpan();
302  void _updatePageSpanDependent(bool set);
304 
305  void _startSubDocument();
306  void _endSubDocument();
307 
308  void _handleFrameParameters( WPXPropertyList &propList, WPSPosition const &pos);
309  bool _openFrame(WPSPosition const &pos, WPXPropertyList extras=WPXPropertyList());
310  void _closeFrame();
311 
312  void _openParagraph();
313  void _closeParagraph();
314  void _appendParagraphProperties(WPXPropertyList &propList, const bool isListElement=false);
315  void _getTabStops(WPXPropertyListVector &tabStops);
316  void _appendJustification(WPXPropertyList &propList, libwps::Justification justification);
317  void _resetParagraphState(const bool isListElement=false);
318 
319  void _openListElement();
320  void _closeListElement();
321  void _changeList();
322 
323  void _openSpan();
324  void _closeSpan();
325 
326  void _flushText();
327  void _flushDeferredTabs();
328 
329  void _insertBreakIfNecessary(WPXPropertyList &propList);
330 
331  static void _addLanguage(int lcid, WPXPropertyList &propList);
332 
336  shared_ptr<WPSContentParsingState> _pushParsingState();
338  void _popParsingState();
339 
340 protected:
341  shared_ptr<WPSDocumentParsingState> m_ds; // main parse state
342  shared_ptr<WPSContentParsingState> m_ps; // parse state
343  std::vector<shared_ptr<WPSContentParsingState> > m_psStack;
344  WPXDocumentInterface *m_documentInterface;
345 
346 private:
349 };
350 
351 typedef shared_ptr<WPSContentListener> WPSContentListenerPtr;
352 
353 #endif
354 /* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
void _recomputeParagraphPositions()
Definition: WPSContentListener.cpp:747
void _closeParagraph()
Definition: WPSContentListener.cpp:852
bool m_isTableOpened
Definition: WPSContentListener.h:106
void setParagraphLineSpacing(const double lineSpacing, WPXUnit unit=WPX_PERCENT)
Definition: WPSContentListener.cpp:385
int m_currentPageNumber
Definition: WPSContentListener.h:113
bool m_isTableRowOpened
Definition: WPSContentListener.h:107
double m_rightMarginByPageMarginChange
Definition: WPSContentListener.h:140
void _appendJustification(WPXPropertyList &propList, libwps::Justification justification)
Definition: WPSContentListener.cpp:897
~WPSDocumentParsingState()
Definition: WPSContentListener.cpp:51
bool m_isParagraphColumnBreak
Definition: WPSContentListener.h:81
double m_listBeginPosition
Definition: WPSContentListener.h:151
void startDocument()
Definition: WPSContentListener.cpp:621
void insertEOL(bool softBreak=false)
Definition: WPSContentListener.cpp:225
bool m_isNote
Definition: WPSContentListener.h:160
void _updatePageSpanDependent(bool set)
Definition: WPSContentListener.cpp:735
WPSContentListener & operator=(const WPSContentListener &)
static void _addLanguage(int lcid, WPXPropertyList &propList)
Definition: WPSContentListener.cpp:1963
shared_ptr< WPSContentListener > WPSContentListenerPtr
Definition: WPSCell.h:38
bool m_isHeaderFooterStarted
Definition: WPSContentListener.h:59
bool m_isSpanOpened
Definition: WPSContentListener.h:99
a border list
Definition: libwps_internal.h:225
WPSDocumentParsingState & operator=(const WPSDocumentParsingState &)
void setTextLanguage(int lcid)
Definition: WPSContentListener.cpp:370
WPXUnit m_paragraphMarginBottomUnit
Definition: WPSContentListener.h:138
void _flushText()
Definition: WPSContentListener.cpp:1251
void _closeListElement()
Definition: WPSContentListener.cpp:1035
Definition: WPSContentListener.h:48
void setDocumentLanguage(int lcid)
Definition: WPSContentListener.cpp:613
double m_textIndentByTabs
Definition: WPSContentListener.h:148
Definition: libwps_internal.h:161
void setTextColor(const uint32_t rgb)
Definition: WPSContentListener.cpp:363
bool _openFrame(WPSPosition const &pos, WPXPropertyList extras=WPXPropertyList())
Definition: WPSContentListener.cpp:1409
int m_textLanguage
Definition: WPSContentListener.h:79
double m_pageMarginBottom
Definition: WPSContentListener.h:127
void _flushDeferredTabs()
Definition: WPSContentListener.cpp:1236
shared_ptr< WPSContentParsingState > m_ps
Definition: WPSContentListener.h:342
void _popParsingState()
resets the previous parsing state
Definition: WPSContentListener.cpp:2007
double m_leftMarginByPageMarginChange
Definition: WPSContentListener.h:139
double m_pageFormWidth
Definition: WPSContentListener.h:121
int m_endNoteNumber
endnote number
Definition: WPSContentListener.h:56
double m_sectionMarginBottom
Definition: WPSContentListener.h:132
Definition: WPSContentListener.h:67
void closeTable()
closes this table
Definition: WPSContentListener.cpp:1819
void _changeList()
Definition: WPSContentListener.cpp:1052
std::vector< WPSTabStop > m_tabStops
Definition: WPSContentListener.h:155
Definition: WPSContentListener.h:243
bool m_isSectionOpened
Definition: WPSContentListener.h:94
int m_numPagesRemainingInSpan
Definition: WPSContentListener.h:112
uint16_t m_alignmentCharacter
a stack used to know what is open
Definition: WPSContentListener.h:154
Definition: WPSContentListener.h:243
bool m_isTableCellOpened
Definition: WPSContentListener.h:109
void _openPageSpan()
Definition: WPSContentListener.cpp:666
std::vector< unsigned int > m_numRowsToSkip
Definition: WPSContentListener.h:105
void insertBreak(const uint8_t breakType)
Definition: WPSContentListener.cpp:258
std::vector< WPSSubDocumentPtr > m_subDocuments
Definition: WPSContentListener.h:60
void insertDateTimeField(char const *format)
insert a date/time field with given format (see strftime)
Definition: WPSContentListener.cpp:521
WPXDocumentInterface * m_documentInterface
Definition: WPSContentListener.h:344
Definition: WPSContentListener.h:243
Definition: WPSContentListener.h:168
unsigned m_currentPage
Definition: WPSContentListener.h:111
void setParagraphBorders(int which, WPSBorder style=WPSBorder())
indicates that the paragraph has a basic borders (ie.
Definition: WPSContentListener.cpp:445
bool m_pageFormOrientationIsPortrait
Definition: WPSContentListener.h:122
WPSContentListener(std::vector< WPSPageSpan > const &pageList, WPXDocumentInterface *documentInterface)
Definition: WPSContentListener.cpp:135
int m_newListId
Definition: WPSContentListener.h:57
void endDocument()
Definition: WPSContentListener.cpp:637
shared_ptr< WPSList > m_list
Definition: WPSContentListener.h:90
libwps::Justification m_paragraphJustification
Definition: WPSContentListener.h:83
Definition: WPSContentListener.h:251
Definition: WPSContentListener.h:243
void setParagraphTextIndent(double margin)
sets the first paragraph text indent.
Definition: WPSContentListener.cpp:405
bool m_isParagraphOpened
Definition: WPSContentListener.h:100
void setFontAttributes(const uint32_t fontAttributes)
Definition: WPSContentListener.cpp:336
a structure used to defined the cell position, and a format
Definition: WPSCell.h:119
void _startSubDocument()
Definition: WPSContentListener.cpp:1763
Justification
Definition: libwps_internal.h:266
void _appendParagraphProperties(WPXPropertyList &propList, const bool isListElement=false)
Definition: WPSContentListener.cpp:923
shared_ptr< WPSList > getCurrentList() const
returns the current list
Definition: WPSContentListener.cpp:472
void closeTableRow()
closes this row
Definition: WPSContentListener.cpp:1857
FieldType
Defines some basic type for field.
Definition: WPSContentListener.h:243
Basic class used to store a sub document.
Definition: WPSSubDocument.h:33
bool m_isDocumentStarted
Definition: WPSContentListener.h:59
double m_paragraphMarginBottom
Definition: WPSContentListener.h:137
double m_paragraphMarginLeft
Definition: WPSContentListener.h:133
bool m_isPageSpanBreakDeferred
Definition: WPSContentListener.h:96
NoteType
defines the footnote type
Definition: WPSContentListener.h:251
uint8_t m_currentListLevel
Definition: WPSContentListener.h:91
double m_leftMarginByParagraphMarginChange
Definition: WPSContentListener.h:141
int m_footNoteNumber
footnote number
Definition: WPSContentListener.h:56
WPXUnit m_paragraphLineSpacingUnit
Definition: WPSContentListener.h:85
double m_sectionMarginTop
Definition: WPSContentListener.h:131
double m_textIndentByParagraphIndentChange
Definition: WPSContentListener.h:147
void insertUnicodeString(WPXString const &str)
adds a unicode string
Definition: WPSContentListener.cpp:172
void _closePageSpan()
Definition: WPSContentListener.cpp:723
bool m_isParagraphPageBreak
Definition: WPSContentListener.h:82
void setTextFont(const WPXString &fontName)
Definition: WPSContentListener.cpp:344
void openTableCell(WPSCell const &cell, WPXPropertyList const &extras)
low level function to define a cell.
Definition: WPSContentListener.cpp:1889
uint32_t m_paragraphBackgroundColor
Definition: WPSContentListener.h:86
void setParagraphBackgroundColor(uint32_t color=0xFFFFFF)
sets the paragraph background color
Definition: WPSContentListener.cpp:440
void _endSubDocument()
Definition: WPSContentListener.cpp:1769
double m_paragraphLineSpacing
Definition: WPSContentListener.h:84
double m_paragraphMarginTop
Definition: WPSContentListener.h:135
void insertField(FieldType type)
adds a field type
Definition: WPSContentListener.cpp:481
double m_sectionMarginRight
Definition: WPSContentListener.h:130
void insertComment(WPSSubDocumentPtr &subDocument)
adds comment
Definition: WPSContentListener.cpp:1354
shared_ptr< WPSContentParsingState > _pushParsingState()
creates a new parsing state (copy of the actual state)
Definition: WPSContentListener.cpp:1987
double m_pageMarginLeft
Definition: WPSContentListener.h:124
void _getTabStops(WPXPropertyListVector &tabStops)
Definition: WPSContentListener.cpp:996
SubDocumentType
Definition: libwps_internal.h:265
a small structure used to store the informations about a list
Definition: WPSList.h:39
double m_listReferencePosition
Definition: WPSContentListener.h:150
void setFontSize(const uint16_t fontSize)
Definition: WPSContentListener.cpp:353
void _openListElement()
Definition: WPSContentListener.cpp:1007
~WPSContentParsingState()
Definition: WPSContentListener.cpp:131
double m_sectionMarginLeft
Definition: WPSContentListener.h:129
bool isHeaderFooterOpened() const
Definition: WPSContentListener.cpp:1758
std::vector< WPSPageSpan > m_pageList
Definition: WPSContentListener.h:53
int getSectionNumColumns() const
returns the actual number of columns ( or 1 if no section is opened )
Definition: WPSContentListener.cpp:540
WPSContentParsingState & operator=(const WPSContentParsingState &)
shared_ptr< WPSDocumentParsingState > m_ds
Definition: WPSContentListener.h:341
void _handleFrameParameters(WPXPropertyList &propList, WPSPosition const &pos)
Definition: WPSContentListener.cpp:1464
bool m_isListElementOpened
Definition: WPSContentListener.h:101
void _openParagraph()
Definition: WPSContentListener.cpp:820
WPXPropertyList m_metaData
Definition: WPSContentListener.h:54
int m_numDeferredTabs
Definition: WPSContentListener.h:73
WPXString m_textBuffer
Definition: WPSContentListener.h:72
double m_paragraphMarginRight
Definition: WPSContentListener.h:134
Definition: WPSContentListener.h:243
void setFont(const WPSFont &font)
Definition: WPSContentListener.cpp:324
double m_rightMarginByParagraphMarginChange
Definition: WPSContentListener.h:142
double m_pageMarginRight
Definition: WPSContentListener.h:125
void insertTab()
Definition: WPSContentListener.cpp:246
void setParagraphMargin(double margin, int pos)
sets the paragraph margin.
Definition: WPSContentListener.cpp:411
bool m_firstParagraphInPageSpan
Definition: WPSContentListener.h:103
void insertTextBox(WPSPosition const &pos, WPSSubDocumentPtr subDocument, WPXPropertyList frameExtras=WPXPropertyList())
adds a textbox in given position
Definition: WPSContentListener.cpp:1381
shared_ptr< WPSSubDocument > WPSSubDocumentPtr
Definition: WPSContentListener.h:44
bool m_isTextColumnWithoutParagraph
Definition: WPSContentListener.h:118
void insertPicture(WPSPosition const &pos, const WPXBinaryData &binaryData, std::string type="image/pict", WPXPropertyList frameExtras=WPXPropertyList())
adds a picture in given position
Definition: WPSContentListener.cpp:1394
int m_numColumns
Definition: WPSContentListener.h:116
void insertCharacter(uint8_t character)
adds a basic character, ..
Definition: WPSContentListener.cpp:150
Vec2< int > Vec2i
Vec2 of int.
Definition: libwps_internal.h:494
double m_pageMarginTop
Definition: WPSContentListener.h:126
void _openSpan()
Definition: WPSContentListener.cpp:1129
WPSDocumentParsingState(std::vector< WPSPageSpan > const &pageList)
Definition: WPSContentListener.cpp:43
static void appendUnicode(uint32_t val, WPXString &buffer)
adds an unicode character to a string ( with correct encoding ).
Definition: WPSContentListener.cpp:179
WPSContentParsingState()
Definition: WPSContentListener.cpp:55
bool m_sectionAttributesChanged
Definition: WPSContentListener.h:115
void openTable(std::vector< float > const &colWidth, WPXUnit unit)
open a table
Definition: WPSContentListener.cpp:1783
libwps::SubDocumentType m_subDocumentType
Definition: WPSContentListener.h:161
double m_leftMarginByTabs
Definition: WPSContentListener.h:143
bool isParagraphOpened() const
returns true if a paragraph or a list is opened
Definition: WPSContentListener.cpp:380
void setCurrentList(shared_ptr< WPSList > list)
function to set the actual list
Definition: WPSContentListener.cpp:466
uint32_t m_fontColor
Definition: WPSContentListener.h:78
bool m_isFrameOpened
Definition: WPSContentListener.h:95
bool closeSection()
close a section
Definition: WPSContentListener.cpp:592
void handleSubDocument(WPSSubDocumentPtr &subDocument, libwps::SubDocumentType subDocumentType)
Definition: WPSContentListener.cpp:1679
void _resetParagraphState(const bool isListElement=false)
Definition: WPSContentListener.cpp:875
Definition: WPSParagraph.h:41
uint32_t m_textAttributeBits
Definition: WPSContentListener.h:75
Definition: WPSPageSpan.h:42
WPXString m_fontName
Definition: WPSContentListener.h:77
void closeTableCell()
close a cell
Definition: WPSContentListener.cpp:1944
std::vector< WPSColumnDefinition > m_textColumns
Definition: WPSContentListener.h:117
bool isSectionOpened() const
returns true if a section is opened
Definition: WPSContentListener.cpp:535
bool m_isPageSpanOpened
Definition: WPSContentListener.h:93
void setParagraphJustification(libwps::Justification justification, bool force=false)
Define the paragraph justification.
Definition: WPSContentListener.cpp:391
void setTabs(const std::vector< WPSTabStop > &tabStops)
sets the tabulations.
Definition: WPSContentListener.cpp:434
void _closeFrame()
Definition: WPSContentListener.cpp:1452
void _openSection()
Definition: WPSContentListener.cpp:761
void insertNote(const NoteType noteType, WPSSubDocumentPtr &subDocument)
adds note
Definition: WPSContentListener.cpp:1285
void insertLabelNote(const NoteType noteType, WPXString const &label, WPSSubDocumentPtr &subDocument)
adds a label note
Definition: WPSContentListener.cpp:1296
void insertUnicode(uint32_t character)
adds an unicode character
Definition: WPSContentListener.cpp:162
bool m_isTabPositionRelative
Definition: WPSContentListener.h:156
WPSBorder m_paragraphBordersStyle
Definition: WPSContentListener.h:88
Class to define the position of an object (textbox, picture, ..) in the document. ...
Definition: WPSPosition.h:39
int m_paragraphBorders
Definition: WPSContentListener.h:87
void _insertBreakIfNecessary(WPXPropertyList &propList)
Definition: WPSContentListener.cpp:304
double m_rightMarginByTabs
Definition: WPSContentListener.h:144
double m_paragraphTextIndent
Definition: WPSContentListener.h:146
Definition: WPSContentListener.h:243
void setCurrentListLevel(int level)
function to set the level of the current list
Definition: WPSContentListener.cpp:456
Definition: WPSContentListener.h:251
virtual ~WPSContentListener()
Definition: WPSContentListener.cpp:143
void _closeSection()
Definition: WPSContentListener.cpp:801
void _closeSpan()
Definition: WPSContentListener.cpp:1223
Definition: WPSContentListener.h:243
void openTableRow(float h, WPXUnit unit, bool headerRow=false)
open a row with given height.
Definition: WPSContentListener.cpp:1834
bool openSection(std::vector< int > colsWidth=std::vector< int >(), WPXUnit unit=WPX_INCH)
open a section if possible
Definition: WPSContentListener.cpp:545
bool m_inSubDocument
Definition: WPSContentListener.h:158
double m_fontSize
Definition: WPSContentListener.h:76
void addEmptyTableCell(Vec2i const &pos, Vec2i span=Vec2i(1, 1))
add empty cell
Definition: WPSContentListener.cpp:1868
std::vector< bool > m_listOrderedLevels
Definition: WPSContentListener.h:152
std::vector< shared_ptr< WPSContentParsingState > > m_psStack
Definition: WPSContentListener.h:343
WPXUnit m_paragraphMarginTopUnit
Definition: WPSContentListener.h:136
bool m_isHeaderFooterWithoutParagraph
Definition: WPSContentListener.h:97
bool m_isTableColumnOpened
Definition: WPSContentListener.h:108
double m_pageFormLength
Definition: WPSContentListener.h:120

Generated on Wed Jun 11 2014 02:26:01 for libwps by doxygen 1.8.5