WP6ContentListener.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
2 /* libwpd
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) 2002 William Lachance (wrlach@gmail.com)
11  * Copyright (C) 2002 Marc Maurer (uwog@uwog.net)
12  * Copyright (C) 2005-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
13  *
14  * For minor contributions see the git repository.
15  *
16  * Alternatively, the contents of this file may be used under the terms
17  * of the GNU Lesser General Public License Version 2.1 or later
18  * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
19  * applicable instead of those above.
20  *
21  * For further information visit http://libwpd.sourceforge.net
22  */
23 
24 /* "This product is not manufactured, approved, or supported by
25  * Corel Corporation or Corel Corporation Limited."
26  */
27 
28 #ifndef WP6CONTENTLISTENER_H
29 #define WP6CONTENTLISTENER_H
30 
31 #include <librevenge/librevenge.h>
32 #include "WP6Listener.h"
33 #include "WPXContentListener.h"
34 #include "WP6FileStructure.h"
35 
36 #include <stack>
37 #include <map>
38 #include <memory>
39 #include <vector>
40 
41 class WPXTable;
42 
49  };
50 
52 
53 const int STATE_MEMORY = 3;
55 {
56 public:
58  {
59  clear();
60  }
62  {
63  for (unsigned i=(STATE_MEMORY-1); i>0; i--) m_stateSequence[i] = m_stateSequence[i-1];
64  m_stateSequence[0]=state;
65  }
67  {
68  return m_stateSequence[0];
69  }
71  {
72  return m_stateSequence[1];
73  }
74  void clear()
75  {
76  m_stateSequence.clear();
77  for (int i=0; i<STATE_MEMORY; i++) m_stateSequence.push_back(NORMAL);
78  }
79 
80 private:
81  std::vector<WP6StyleState> m_stateSequence;
82 };
83 
85 {
86  WP6ContentParsingState(WPXTableList tableList, unsigned nextTableIndice = 0);
88  librevenge::RVNGString m_bodyText;
89  librevenge::RVNGString m_textBeforeNumber;
90  librevenge::RVNGString m_textBeforeDisplayReference;
91  librevenge::RVNGString m_numberText;
92  librevenge::RVNGString m_textAfterDisplayReference;
93  librevenge::RVNGString m_textAfterNumber;
94 
97 
99 
102 
104  std::shared_ptr<WPXTable> m_currentTable;
106 
107  std::stack<unsigned> m_listLevelStack;
108  std::stack<WP6ListType> m_listTypeStack;
109  unsigned short m_currentOutlineHash; // probably should replace Hash with Key in these sorts of cases
110  unsigned char m_oldListLevel;
114 
115  unsigned m_noteTextPID;
117 
119 
121 
123  unsigned char m_leaderNumSpaces;
124  std::vector<WPXTabStop> m_tempTabStops;
125  std::vector<bool> m_tempUsePreWP9LeaderMethod;
126 
128 
129 private:
132 };
133 
135 {
136  int m_level;
138 };
139 
141 {
142 public:
144  WP6OutlineDefinition(const unsigned char *numberingMethods, const unsigned char tabBehaviourFlag);
145  void update(const unsigned char *numberingMethods, const unsigned char tabBehaviourFlag);
146 
148  {
149  if (level >= 0 && unsigned(level) < WPD_NUM_ELEMENTS(m_listTypes))
150  return m_listTypes[level];
151  return WPXNumberingType();
152  }
153 
154 protected:
155  void _updateNumberingMethods(const unsigned char *numberingMethods);
156 
157 private:
159 };
160 
162 {
163 public:
164  WP6ContentListener(std::list<WPXPageSpan> &pageList, WPXTableList tableList, librevenge::RVNGTextInterface *documentInterface);
165  ~WP6ContentListener() override;
166 
167  void startDocument() override
168  {
170  }
171  void startSubDocument() override
172  {
174  }
175  void setDate(const unsigned short type, const unsigned short year,
176  const unsigned char month, const unsigned char day,
177  const unsigned char hour, const unsigned char minute,
178  const unsigned char second, const unsigned char dayOfWeek,
179  const unsigned char timeZone, const unsigned char unused) override;
180  void setExtendedInformation(const unsigned short type, const librevenge::RVNGString &data) override;
181  void setAlignmentCharacter(const unsigned character) override;
182  void setLeaderCharacter(const unsigned character, const unsigned char numSpaces) override;
183  void defineTabStops(const bool isRelative, const std::vector<WPXTabStop> &tabStops,
184  const std::vector<bool> &usePreWP9LeaderMethods) override;
185  void insertCharacter(unsigned character) override;
186  void insertTab(const unsigned char tabType, double tabPosition) override;
187  void handleLineBreak() override;
188  void insertEOL() override;
189  void insertBreak(const unsigned char breakType) override
190  {
192  }
193  void lineSpacingChange(const double lineSpacing) override
194  {
196  }
197  void justificationChange(const unsigned char justification) override
198  {
200  }
201  void characterColorChange(const unsigned char red, const unsigned char green, const unsigned char blue) override;
202  void characterShadingChange(const unsigned char shading) override;
203  void highlightChange(const bool isOn, const RGBSColor &color) override;
204  void fontChange(const unsigned short matchedFontPointSize, const unsigned short fontPID, const librevenge::RVNGString &fontName) override;
205  void attributeChange(const bool isOn, const unsigned char attribute) override;
206  void spacingAfterParagraphChange(const double spacingRelative, const double spacingAbsolute) override;
207  void pageNumberingChange(const WPXPageNumberPosition /* page numbering position */, const unsigned short /* matchedFontPointSize */, const unsigned short /* fontPID */) override {}
208  void pageMarginChange(const unsigned char /* side */, const unsigned short /* margin */) override {}
209  void pageFormChange(const unsigned short /* length */, const unsigned short /* width */, const WPXFormOrientation /* orientation */) override {}
210  void marginChange(const unsigned char side, const unsigned short margin) override;
211  void paragraphMarginChange(const unsigned char side, const signed short margin) override;
212  void indentFirstLineChange(const signed short offset) override;
213  void columnChange(const WPXTextColumnType columnType, const unsigned char numColumns, const std::vector<double> &columnWidth,
214  const std::vector<bool> &isFixedWidth) override;
215  void updateOutlineDefinition(const unsigned short outlineHash, const unsigned char *numberingMethods, const unsigned char tabBehaviourFlag) override;
216 
217  void paragraphNumberOn(const unsigned short outlineHash, const unsigned char level, const unsigned char flag) override;
218  void paragraphNumberOff() override;
219  void displayNumberReferenceGroupOn(const unsigned char subGroup, const unsigned char level) override;
220  void displayNumberReferenceGroupOff(const unsigned char subGroup) override;
221  void styleGroupOn(const unsigned char subGroup) override;
222  void styleGroupOff(const unsigned char subGroup) override;
223  void globalOn(const unsigned char systemStyle) override;
224  void globalOff() override;
225  void noteOn(const unsigned short textPID) override;
226  void noteOff(const WPXNoteType noteType) override;
227  void headerFooterGroup(const unsigned char /* headerFooterType */, const unsigned char /* occurrenceBits */, const unsigned short /* textPID */) override {}
228  void suppressPageCharacteristics(const unsigned char /* suppressCode */) override {}
229  void setPageNumber(const unsigned short /* pageNumber */) override {}
230  void setPageNumberingType(const WPXNumberingType pageNumberingType) override;
231  void endDocument() override
232  {
234  }
235  void endSubDocument() override
236  {
238  }
239 
240  void defineTable(const unsigned char position, const unsigned short leftOffset) override;
241  void addTableColumnDefinition(const unsigned width, const unsigned leftGutter, const unsigned rightGutter,
242  const unsigned attributes, const unsigned char alignment) override;
243  void startTable() override;
244  void insertRow(const unsigned short rowHeight, const bool isMinimumHeight, const bool isHeaderRow) override;
245  void insertCell(const unsigned char colSpan, const unsigned char rowSpan, const unsigned char borderBits,
246  const RGBSColor *cellFgColor, const RGBSColor *cellBgColor,
247  const RGBSColor *cellBorderColor, const WPXVerticalAlignment cellVerticalAlignment,
248  const bool useCellAttributes, const unsigned cellAttributes) override;
249  void endTable() override;
250  void boxOn(const unsigned char anchoringType, const unsigned char generalPositioningFlags, const unsigned char horizontalPositioningFlags,
251  const signed short horizontalOffset, const unsigned char leftColumn, const unsigned char rightColumn,
252  const unsigned char verticalPositioningFlags, const signed short verticalOffset, const unsigned char widthFlags, const unsigned short width,
253  const unsigned char heightFlags, const unsigned short height, const unsigned char boxContentType, const unsigned short nativeWidth,
254  const unsigned short nativeHeight,
255  const librevenge::RVNGString &linkTarget) override;
256  void boxOff() override;
257  void insertGraphicsData(const unsigned short packetId) override;
258  void insertTextBox(const WP6SubDocument *subDocument) override;
259  void commentAnnotation(const unsigned short textPID) override;
260 
261  void undoChange(const unsigned char undoType, const unsigned short undoLevel) override;
262 
263 protected:
264  void _handleSubDocument(const WPXSubDocument *subDocument, WPXSubDocumentType subDocumentType, WPXTableList tableList, unsigned nextTableIndice = 0) override;
265 
266  //void _handleLineBreakElementBegin();
267  void _paragraphNumberOn(const unsigned short outlineHash, const unsigned char level);
268  void _flushText() override;
269  void _handleListChange(const unsigned short outlineHash);
270 
271  void _changeList() override;
272 
273 private:
276  std::unique_ptr<WP6ContentParsingState> m_parseState;
277 
278  std::map<unsigned short,WP6OutlineDefinition> m_outlineDefineHash;
279  std::map<unsigned, librevenge::RVNGPropertyList> m_listDefinitions;
280 };
281 
282 #endif /* WP6CONTENTLISTENER_H */
283 /* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
const int STATE_MEMORY
Definition: WP6ContentListener.h:53
WP6ListType
Definition: WP6ContentListener.h:51
@ ORDERED
Definition: WP6ContentListener.h:51
@ UNORDERED
Definition: WP6ContentListener.h:51
WP6StyleState
Definition: WP6ContentListener.h:43
@ STYLE_END
Definition: WP6ContentListener.h:48
@ DOCUMENT_NOTE_GLOBAL
Definition: WP6ContentListener.h:43
@ NORMAL
Definition: WP6ContentListener.h:43
@ BEGIN_NUMBERING_BEFORE_DISPLAY_REFERENCING
Definition: WP6ContentListener.h:45
@ STYLE_BODY
Definition: WP6ContentListener.h:48
@ BEGIN_AFTER_NUMBERING
Definition: WP6ContentListener.h:48
@ BEGIN_NUMBERING_AFTER_DISPLAY_REFERENCING
Definition: WP6ContentListener.h:47
@ DOCUMENT_NOTE
Definition: WP6ContentListener.h:43
@ BEGIN_BEFORE_NUMBERING
Definition: WP6ContentListener.h:44
@ DISPLAY_REFERENCING
Definition: WP6ContentListener.h:46
#define WP6_NUM_LIST_LEVELS
Definition: WP6FileStructure.h:36
Definition: WP6ContentListener.h:162
void indentFirstLineChange(const signed short offset) override
Definition: WP6ContentListener.cpp:903
void setPageNumberingType(const WPXNumberingType pageNumberingType) override
Definition: WP6ContentListener.cpp:1264
void noteOff(const WPXNoteType noteType) override
Definition: WP6ContentListener.cpp:1227
void setExtendedInformation(const unsigned short type, const librevenge::RVNGString &data) override
Definition: WP6ContentListener.cpp:238
void characterColorChange(const unsigned char red, const unsigned char green, const unsigned char blue) override
Definition: WP6ContentListener.cpp:669
void setAlignmentCharacter(const unsigned character) override
Definition: WP6ContentListener.cpp:385
void insertGraphicsData(const unsigned short packetId) override
Definition: WP6ContentListener.cpp:1709
void insertBreak(const unsigned char breakType) override
Definition: WP6ContentListener.h:189
void globalOff() override
Definition: WP6ContentListener.cpp:1193
void _handleListChange(const unsigned short outlineHash)
Definition: WP6ContentListener.cpp:1888
void startDocument() override
Definition: WP6ContentListener.h:167
void pageMarginChange(const unsigned char, const unsigned short) override
Definition: WP6ContentListener.h:208
void spacingAfterParagraphChange(const double spacingRelative, const double spacingAbsolute) override
Definition: WP6ContentListener.cpp:798
void _handleSubDocument(const WPXSubDocument *subDocument, WPXSubDocumentType subDocumentType, WPXTableList tableList, unsigned nextTableIndice=0) override
Definition: WP6ContentListener.cpp:1768
void setDate(const unsigned short type, const unsigned short year, const unsigned char month, const unsigned char day, const unsigned char hour, const unsigned char minute, const unsigned char second, const unsigned char dayOfWeek, const unsigned char timeZone, const unsigned char unused) override
Definition: WP6ContentListener.cpp:169
void setLeaderCharacter(const unsigned character, const unsigned char numSpaces) override
Definition: WP6ContentListener.cpp:393
void displayNumberReferenceGroupOn(const unsigned char subGroup, const unsigned char level) override
Definition: WP6ContentListener.cpp:1028
std::unique_ptr< WP6ContentParsingState > m_parseState
Definition: WP6ContentListener.h:276
void defineTable(const unsigned char position, const unsigned short leftOffset) override
Definition: WP6ContentListener.cpp:1272
~WP6ContentListener() override
Definition: WP6ContentListener.cpp:165
void suppressPageCharacteristics(const unsigned char) override
Definition: WP6ContentListener.h:228
void _changeList() override
Definition: WP6ContentListener.cpp:1976
void highlightChange(const bool isOn, const RGBSColor &color) override
Definition: WP6ContentListener.cpp:689
void lineSpacingChange(const double lineSpacing) override
Definition: WP6ContentListener.h:193
void styleGroupOn(const unsigned char subGroup) override
Definition: WP6ContentListener.cpp:1125
std::map< unsigned short, WP6OutlineDefinition > m_outlineDefineHash
Definition: WP6ContentListener.h:278
void endTable() override
Definition: WP6ContentListener.cpp:1435
void endSubDocument() override
Definition: WP6ContentListener.h:235
void endDocument() override
Definition: WP6ContentListener.h:231
void globalOn(const unsigned char systemStyle) override
Definition: WP6ContentListener.cpp:1184
void startSubDocument() override
Definition: WP6ContentListener.h:171
void addTableColumnDefinition(const unsigned width, const unsigned leftGutter, const unsigned rightGutter, const unsigned attributes, const unsigned char alignment) override
Definition: WP6ContentListener.cpp:1325
void paragraphNumberOff() override
Definition: WP6ContentListener.cpp:1014
void _flushText() override
Definition: WP6ContentListener.cpp:1826
void insertTextBox(const WP6SubDocument *subDocument) override
Definition: WP6ContentListener.cpp:1726
void pageNumberingChange(const WPXPageNumberPosition, const unsigned short, const unsigned short) override
Definition: WP6ContentListener.h:207
void setPageNumber(const unsigned short) override
Definition: WP6ContentListener.h:229
void marginChange(const unsigned char side, const unsigned short margin) override
Definition: WP6ContentListener.cpp:814
void columnChange(const WPXTextColumnType columnType, const unsigned char numColumns, const std::vector< double > &columnWidth, const std::vector< bool > &isFixedWidth) override
Definition: WP6ContentListener.cpp:920
void commentAnnotation(const unsigned short textPID) override
Definition: WP6ContentListener.cpp:1742
void startTable() override
Definition: WP6ContentListener.cpp:1350
void insertTab(const unsigned char tabType, double tabPosition) override
Definition: WP6ContentListener.cpp:475
void attributeChange(const bool isOn, const unsigned char attribute) override
Definition: WP6ContentListener.cpp:725
void undoChange(const unsigned char undoType, const unsigned short undoLevel) override
Definition: WP6ContentListener.cpp:1985
void justificationChange(const unsigned char justification) override
Definition: WP6ContentListener.h:197
void headerFooterGroup(const unsigned char, const unsigned char, const unsigned short) override
Definition: WP6ContentListener.h:227
void insertRow(const unsigned short rowHeight, const bool isMinimumHeight, const bool isHeaderRow) override
Definition: WP6ContentListener.cpp:1377
void styleGroupOff(const unsigned char subGroup) override
Definition: WP6ContentListener.cpp:1160
void updateOutlineDefinition(const unsigned short outlineHash, const unsigned char *numberingMethods, const unsigned char tabBehaviourFlag) override
Definition: WP6ContentListener.cpp:998
void noteOn(const unsigned short textPID) override
Definition: WP6ContentListener.cpp:1202
void boxOff() override
Definition: WP6ContentListener.cpp:1692
WP6ContentListener & operator=(const WP6ContentListener &)
void insertCell(const unsigned char colSpan, const unsigned char rowSpan, const unsigned char borderBits, const RGBSColor *cellFgColor, const RGBSColor *cellBgColor, const RGBSColor *cellBorderColor, const WPXVerticalAlignment cellVerticalAlignment, const bool useCellAttributes, const unsigned cellAttributes) override
Definition: WP6ContentListener.cpp:1387
void defineTabStops(const bool isRelative, const std::vector< WPXTabStop > &tabStops, const std::vector< bool > &usePreWP9LeaderMethods) override
Definition: WP6ContentListener.cpp:458
WP6ContentListener(const WP6ContentListener &)
WP6ContentListener(std::list< WPXPageSpan > &pageList, WPXTableList tableList, librevenge::RVNGTextInterface *documentInterface)
Definition: WP6ContentListener.cpp:157
void _paragraphNumberOn(const unsigned short outlineHash, const unsigned char level)
Definition: WP6ContentListener.cpp:1815
void characterShadingChange(const unsigned char shading) override
Definition: WP6ContentListener.cpp:680
void displayNumberReferenceGroupOff(const unsigned char subGroup) override
Definition: WP6ContentListener.cpp:1068
void paragraphNumberOn(const unsigned short outlineHash, const unsigned char level, const unsigned char flag) override
Definition: WP6ContentListener.cpp:1006
void fontChange(const unsigned short matchedFontPointSize, const unsigned short fontPID, const librevenge::RVNGString &fontName) override
Definition: WP6ContentListener.cpp:700
void paragraphMarginChange(const unsigned char side, const signed short margin) override
Definition: WP6ContentListener.cpp:861
void insertEOL() override
Definition: WP6ContentListener.cpp:655
void boxOn(const unsigned char anchoringType, const unsigned char generalPositioningFlags, const unsigned char horizontalPositioningFlags, const signed short horizontalOffset, const unsigned char leftColumn, const unsigned char rightColumn, const unsigned char verticalPositioningFlags, const signed short verticalOffset, const unsigned char widthFlags, const unsigned short width, const unsigned char heightFlags, const unsigned short height, const unsigned char boxContentType, const unsigned short nativeWidth, const unsigned short nativeHeight, const librevenge::RVNGString &linkTarget) override
Definition: WP6ContentListener.cpp:1447
void pageFormChange(const unsigned short, const unsigned short, const WPXFormOrientation) override
Definition: WP6ContentListener.h:209
void insertCharacter(unsigned character) override
Definition: WP6ContentListener.cpp:413
std::map< unsigned, librevenge::RVNGPropertyList > m_listDefinitions
Definition: WP6ContentListener.h:279
void handleLineBreak() override
Definition: WP6ContentListener.cpp:636
Definition: WP6Listener.h:41
Definition: WP6ContentListener.h:141
WP6OutlineDefinition()
Definition: WP6ContentListener.cpp:54
void _updateNumberingMethods(const unsigned char *numberingMethods)
Definition: WP6ContentListener.cpp:72
WPXNumberingType getListType(int level)
Definition: WP6ContentListener.h:147
WPXNumberingType m_listTypes[WP6_NUM_LIST_LEVELS]
Definition: WP6ContentListener.h:158
void update(const unsigned char *numberingMethods, const unsigned char tabBehaviourFlag)
Definition: WP6ContentListener.cpp:67
Definition: WP6ContentListener.h:55
void clear()
Definition: WP6ContentListener.h:74
WP6StyleState getPreviousState() const
Definition: WP6ContentListener.h:70
WP6StyleState getCurrentState() const
Definition: WP6ContentListener.h:66
std::vector< WP6StyleState > m_stateSequence
Definition: WP6ContentListener.h:81
void setCurrentState(WP6StyleState state)
Definition: WP6ContentListener.h:61
WP6StyleStateSequence()
Definition: WP6ContentListener.h:57
Definition: WP6SubDocument.h:34
Definition: WPXContentListener.h:148
void lineSpacingChange(const double lineSpacing)
Definition: WPXContentListener.cpp:1297
void endSubDocument()
Definition: WPXContentListener.cpp:181
void endDocument()
Definition: WPXContentListener.cpp:160
void insertBreak(const unsigned char breakType)
Definition: WPXContentListener.cpp:1243
void startSubDocument()
Definition: WPXContentListener.cpp:154
void justificationChange(const unsigned char justification)
Definition: WPXContentListener.cpp:1305
void startDocument()
Definition: WPXContentListener.cpp:139
Definition: WPXSubDocument.h:37
Definition: WPXTableList.h:36
Definition: WPXTable.h:50
WPXFormOrientation
Definition: libwpd_internal.h:105
WPXPageNumberPosition
Definition: libwpd_internal.h:97
#define WPD_NUM_ELEMENTS(array)
Definition: libwpd_internal.h:53
WPXTextColumnType
Definition: libwpd_internal.h:109
WPXNumberingType
Definition: libwpd_internal.h:92
WPXSubDocumentType
Definition: libwpd_internal.h:111
WPXVerticalAlignment
Definition: libwpd_internal.h:107
WPXNoteType
Definition: libwpd_internal.h:93
Definition: libwpd_internal.h:167
Definition: WP6ContentListener.h:85
unsigned m_noteTextPID
Definition: WP6ContentListener.h:115
WP6ContentParsingState & operator=(const WP6ContentParsingState &)
librevenge::RVNGString m_textAfterDisplayReference
Definition: WP6ContentListener.h:92
librevenge::RVNGString m_numberText
Definition: WP6ContentListener.h:91
librevenge::RVNGString m_textBeforeNumber
Definition: WP6ContentListener.h:89
unsigned char m_leaderNumSpaces
Definition: WP6ContentListener.h:123
bool m_isLinkOpened
Definition: WP6ContentListener.h:120
bool m_putativeListElementHasDisplayReferenceNumber
Definition: WP6ContentListener.h:113
double m_paragraphMarginBottomRelative
Definition: WP6ContentListener.h:95
WP6ContentParsingState(const WP6ContentParsingState &)
librevenge::RVNGString m_textBeforeDisplayReference
Definition: WP6ContentListener.h:90
unsigned m_numListExtraTabs
Definition: WP6ContentListener.h:100
std::vector< WPXTabStop > m_tempTabStops
Definition: WP6ContentListener.h:124
std::vector< bool > m_tempUsePreWP9LeaderMethod
Definition: WP6ContentListener.h:125
WPXTableList m_tableList
Definition: WP6ContentListener.h:103
double m_paragraphMarginBottomAbsolute
Definition: WP6ContentListener.h:96
unsigned char m_oldListLevel
Definition: WP6ContentListener.h:110
librevenge::RVNGString m_bodyText
Definition: WP6ContentListener.h:88
bool m_putativeListElementHasParagraphNumber
Definition: WP6ContentListener.h:112
~WP6ContentParsingState()
Definition: WP6ContentListener.cpp:152
std::stack< WP6ListType > m_listTypeStack
Definition: WP6ContentListener.h:108
WP6StyleStateSequence m_styleStateSequence
Definition: WP6ContentListener.h:111
std::shared_ptr< WPXTable > m_currentTable
Definition: WP6ContentListener.h:104
bool m_isListReference
Definition: WP6ContentListener.h:101
WP6ContentParsingState(WPXTableList tableList, unsigned nextTableIndice=0)
Definition: WP6ContentListener.cpp:105
WPXNumberingType m_currentPageNumberingType
Definition: WP6ContentListener.h:127
librevenge::RVNGString m_textAfterNumber
Definition: WP6ContentListener.h:93
bool m_isFrameOpened
Definition: WP6ContentListener.h:118
std::stack< unsigned > m_listLevelStack
Definition: WP6ContentListener.h:107
unsigned m_numNestedNotes
Definition: WP6ContentListener.h:116
unsigned m_numRemovedParagraphBreaks
Definition: WP6ContentListener.h:98
unsigned m_leaderCharacter
Definition: WP6ContentListener.h:122
unsigned short m_currentOutlineHash
Definition: WP6ContentListener.h:109
unsigned m_nextTableIndice
Definition: WP6ContentListener.h:105
Definition: WP6ContentListener.h:135
bool m_isListElementOpenAtLevel
Definition: WP6ContentListener.h:137
int m_level
Definition: WP6ContentListener.h:136

Generated for libwpd by doxygen 1.9.1