WP6ContentListener.h
Go to the documentation of this file.
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
/* libwpd
* Version: MPL 2.0 / LGPLv2.1+
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* Major Contributor(s):
* Copyright (C) 2002 William Lachance (wrlach@gmail.com)
* Copyright (C) 2002 Marc Maurer (uwog@uwog.net)
* Copyright (C) 2005-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
*
* For minor contributions see the git repository.
*
* Alternatively, the contents of this file may be used under the terms
* of the GNU Lesser General Public License Version 2.1 or later
* (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
* applicable instead of those above.
*
* For further information visit http://libwpd.sourceforge.net
*/
/* "This product is not manufactured, approved, or supported by
* Corel Corporation or Corel Corporation Limited."
*/
#ifndef WP6CONTENTLISTENER_H
#define WP6CONTENTLISTENER_H
#include <librevenge/librevenge.h>
#include "WP6Listener.h"
#include "WPXContentListener.h"
#include "WP6FileStructure.h"
#include <stack>
#include <map>
#include <memory>
#include <vector>
class WPXTable;
enum WP6StyleState { NORMAL, DOCUMENT_NOTE, DOCUMENT_NOTE_GLOBAL,
BEGIN_BEFORE_NUMBERING,
BEGIN_NUMBERING_BEFORE_DISPLAY_REFERENCING,
DISPLAY_REFERENCING,
BEGIN_NUMBERING_AFTER_DISPLAY_REFERENCING,
BEGIN_AFTER_NUMBERING, STYLE_BODY, STYLE_END
};
enum WP6ListType { ORDERED, UNORDERED };
const int STATE_MEMORY = 3;
class WP6StyleStateSequence
{
public:
WP6StyleStateSequence() : m_stateSequence()
{
clear();
}
void setCurrentState(WP6StyleState state)
{
for (unsigned i=(STATE_MEMORY-1); i>0; i--) m_stateSequence[i] = m_stateSequence[i-1];
m_stateSequence[0]=state;
}
WP6StyleState getCurrentState() const
{
return m_stateSequence[0];
}
WP6StyleState getPreviousState() const
{
return m_stateSequence[1];
}
void clear()
{
m_stateSequence.clear();
for (int i=0; i<STATE_MEMORY; i++) m_stateSequence.push_back(NORMAL);
}
private:
std::vector<WP6StyleState> m_stateSequence;
};
struct WP6ContentParsingState
{
WP6ContentParsingState(WPXTableList tableList, unsigned nextTableIndice = 0);
~WP6ContentParsingState();
librevenge::RVNGString m_bodyText;
librevenge::RVNGString m_textBeforeNumber;
librevenge::RVNGString m_textBeforeDisplayReference;
librevenge::RVNGString m_numberText;
librevenge::RVNGString m_textAfterDisplayReference;
librevenge::RVNGString m_textAfterNumber;
double m_paragraphMarginBottomRelative;
double m_paragraphMarginBottomAbsolute;
unsigned m_numRemovedParagraphBreaks;
unsigned m_numListExtraTabs;
bool m_isListReference;
WPXTableList m_tableList;
std::shared_ptr<WPXTable> m_currentTable;
unsigned m_nextTableIndice;
std::stack<unsigned> m_listLevelStack;
std::stack<WP6ListType> m_listTypeStack;
unsigned short m_currentOutlineHash; // probably should replace Hash with Key in these sorts of cases
unsigned char m_oldListLevel;
WP6StyleStateSequence m_styleStateSequence;
bool m_putativeListElementHasParagraphNumber;
bool m_putativeListElementHasDisplayReferenceNumber;
unsigned m_noteTextPID;
unsigned m_numNestedNotes;
bool m_isFrameOpened;
bool m_isLinkOpened;
unsigned m_leaderCharacter;
unsigned char m_leaderNumSpaces;
std::vector<WPXTabStop> m_tempTabStops;
std::vector<bool> m_tempUsePreWP9LeaderMethod;
WPXNumberingType m_currentPageNumberingType;
private:
WP6ContentParsingState(const WP6ContentParsingState &);
WP6ContentParsingState &operator=(const WP6ContentParsingState &);
};
struct WP6ListLevel
{
int m_level;
bool m_isListElementOpenAtLevel;
};
class WP6OutlineDefinition
{
public:
WP6OutlineDefinition();
WP6OutlineDefinition(const unsigned char *numberingMethods, const unsigned char tabBehaviourFlag);
void update(const unsigned char *numberingMethods, const unsigned char tabBehaviourFlag);
WPXNumberingType getListType(int level)
{
if (level >= 0 && unsigned(level) < WPD_NUM_ELEMENTS(m_listTypes))
return m_listTypes[level];
return WPXNumberingType();
}
protected:
void _updateNumberingMethods(const unsigned char *numberingMethods);
private:
WPXNumberingType m_listTypes[WP6_NUM_LIST_LEVELS];
};
class WP6ContentListener : public WP6Listener, protected WPXContentListener
{
public:
WP6ContentListener(std::list<WPXPageSpan> &pageList, WPXTableList tableList, librevenge::RVNGTextInterface *documentInterface);
~WP6ContentListener() override;
void startDocument() override
{
WPXContentListener::startDocument();
}
void startSubDocument() override
{
WPXContentListener::startSubDocument();
}
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;
void setExtendedInformation(const unsigned short type, const librevenge::RVNGString &data) override;
void setAlignmentCharacter(const unsigned character) override;
void setLeaderCharacter(const unsigned character, const unsigned char numSpaces) override;
void defineTabStops(const bool isRelative, const std::vector<WPXTabStop> &tabStops,
const std::vector<bool> &usePreWP9LeaderMethods) override;
void insertCharacter(unsigned character) override;
void insertTab(const unsigned char tabType, double tabPosition) override;
void handleLineBreak() override;
void insertEOL() override;
void insertBreak(const unsigned char breakType) override
{
WPXContentListener::insertBreak(breakType);
}
void lineSpacingChange(const double lineSpacing) override
{
WPXContentListener::lineSpacingChange(lineSpacing);
}
void justificationChange(const unsigned char justification) override
{
WPXContentListener::justificationChange(justification);
}
void characterColorChange(const unsigned char red, const unsigned char green, const unsigned char blue) override;
void characterShadingChange(const unsigned char shading) override;
void highlightChange(const bool isOn, const RGBSColor &color) override;
void fontChange(const unsigned short matchedFontPointSize, const unsigned short fontPID, const librevenge::RVNGString &fontName) override;
void attributeChange(const bool isOn, const unsigned char attribute) override;
void spacingAfterParagraphChange(const double spacingRelative, const double spacingAbsolute) override;
void pageNumberingChange(const WPXPageNumberPosition /* page numbering position */, const unsigned short /* matchedFontPointSize */, const unsigned short /* fontPID */) override {}
void pageMarginChange(const unsigned char /* side */, const unsigned short /* margin */) override {}
void pageFormChange(const unsigned short /* length */, const unsigned short /* width */, const WPXFormOrientation /* orientation */) override {}
void marginChange(const unsigned char side, const unsigned short margin) override;
void paragraphMarginChange(const unsigned char side, const signed short margin) override;
void indentFirstLineChange(const signed short offset) override;
void columnChange(const WPXTextColumnType columnType, const unsigned char numColumns, const std::vector<double> &columnWidth,
const std::vector<bool> &isFixedWidth) override;
void updateOutlineDefinition(const unsigned short outlineHash, const unsigned char *numberingMethods, const unsigned char tabBehaviourFlag) override;
void paragraphNumberOn(const unsigned short outlineHash, const unsigned char level, const unsigned char flag) override;
void paragraphNumberOff() override;
void displayNumberReferenceGroupOn(const unsigned char subGroup, const unsigned char level) override;
void displayNumberReferenceGroupOff(const unsigned char subGroup) override;
void styleGroupOn(const unsigned char subGroup) override;
void styleGroupOff(const unsigned char subGroup) override;
void globalOn(const unsigned char systemStyle) override;
void globalOff() override;
void noteOn(const unsigned short textPID) override;
void noteOff(const WPXNoteType noteType) override;
void headerFooterGroup(const unsigned char /* headerFooterType */, const unsigned char /* occurrenceBits */, const unsigned short /* textPID */) override {}
void suppressPageCharacteristics(const unsigned char /* suppressCode */) override {}
void setPageNumber(const unsigned short /* pageNumber */) override {}
void setPageNumberingType(const WPXNumberingType pageNumberingType) override;
void endDocument() override
{
WPXContentListener::endDocument();
}
void endSubDocument() override
{
WPXContentListener::endSubDocument();
}
void defineTable(const unsigned char position, const unsigned short leftOffset) override;
void addTableColumnDefinition(const unsigned width, const unsigned leftGutter, const unsigned rightGutter,
const unsigned attributes, const unsigned char alignment) override;
void startTable() override;
void insertRow(const unsigned short rowHeight, const bool isMinimumHeight, const bool isHeaderRow) override;
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;
void endTable() override;
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;
void boxOff() override;
void insertGraphicsData(const unsigned short packetId) override;
void insertTextBox(const WP6SubDocument *subDocument) override;
void commentAnnotation(const unsigned short textPID) override;
void undoChange(const unsigned char undoType, const unsigned short undoLevel) override;
protected:
void _handleSubDocument(const WPXSubDocument *subDocument, WPXSubDocumentType subDocumentType, WPXTableList tableList, unsigned nextTableIndice = 0) override;
//void _handleLineBreakElementBegin();
void _paragraphNumberOn(const unsigned short outlineHash, const unsigned char level);
void _flushText() override;
void _handleListChange(const unsigned short outlineHash);
void _changeList() override;
private:
WP6ContentListener(const WP6ContentListener &);
WP6ContentListener &operator=(const WP6ContentListener &);
std::unique_ptr<WP6ContentParsingState> m_parseState;
std::map<unsigned short,WP6OutlineDefinition> m_outlineDefineHash;
std::map<unsigned, librevenge::RVNGPropertyList> m_listDefinitions;
};
#endif /* WP6CONTENTLISTENER_H */
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
STATE_MEMORY
const int STATE_MEMORY
Definition WP6ContentListener.h:53
WP6ListType
WP6ListType
Definition WP6ContentListener.h:51
ORDERED
@ ORDERED
Definition WP6ContentListener.h:51
UNORDERED
@ UNORDERED
Definition WP6ContentListener.h:51
WP6StyleState
WP6StyleState
Definition WP6ContentListener.h:43
STYLE_END
@ STYLE_END
Definition WP6ContentListener.h:48
DOCUMENT_NOTE_GLOBAL
@ DOCUMENT_NOTE_GLOBAL
Definition WP6ContentListener.h:43
NORMAL
@ NORMAL
Definition WP6ContentListener.h:43
BEGIN_NUMBERING_BEFORE_DISPLAY_REFERENCING
@ BEGIN_NUMBERING_BEFORE_DISPLAY_REFERENCING
Definition WP6ContentListener.h:45
STYLE_BODY
@ STYLE_BODY
Definition WP6ContentListener.h:48
BEGIN_AFTER_NUMBERING
@ BEGIN_AFTER_NUMBERING
Definition WP6ContentListener.h:48
BEGIN_NUMBERING_AFTER_DISPLAY_REFERENCING
@ BEGIN_NUMBERING_AFTER_DISPLAY_REFERENCING
Definition WP6ContentListener.h:47
DOCUMENT_NOTE
@ DOCUMENT_NOTE
Definition WP6ContentListener.h:43
BEGIN_BEFORE_NUMBERING
@ BEGIN_BEFORE_NUMBERING
Definition WP6ContentListener.h:44
DISPLAY_REFERENCING
@ DISPLAY_REFERENCING
Definition WP6ContentListener.h:46
WP6FileStructure.h
WP6_NUM_LIST_LEVELS
#define WP6_NUM_LIST_LEVELS
Definition WP6FileStructure.h:36
WP6Listener.h
WPXContentListener.h
WP6ContentListener::indentFirstLineChange
void indentFirstLineChange(const signed short offset) override
Definition WP6ContentListener.cpp:903
WP6ContentListener::setPageNumberingType
void setPageNumberingType(const WPXNumberingType pageNumberingType) override
Definition WP6ContentListener.cpp:1264
WP6ContentListener::noteOff
void noteOff(const WPXNoteType noteType) override
Definition WP6ContentListener.cpp:1227
WP6ContentListener::setExtendedInformation
void setExtendedInformation(const unsigned short type, const librevenge::RVNGString &data) override
Definition WP6ContentListener.cpp:238
WP6ContentListener::characterColorChange
void characterColorChange(const unsigned char red, const unsigned char green, const unsigned char blue) override
Definition WP6ContentListener.cpp:669
WP6ContentListener::setAlignmentCharacter
void setAlignmentCharacter(const unsigned character) override
Definition WP6ContentListener.cpp:385
WP6ContentListener::insertGraphicsData
void insertGraphicsData(const unsigned short packetId) override
Definition WP6ContentListener.cpp:1709
WP6ContentListener::insertBreak
void insertBreak(const unsigned char breakType) override
Definition WP6ContentListener.h:189
WP6ContentListener::globalOff
void globalOff() override
Definition WP6ContentListener.cpp:1193
WP6ContentListener::_handleListChange
void _handleListChange(const unsigned short outlineHash)
Definition WP6ContentListener.cpp:1888
WP6ContentListener::startDocument
void startDocument() override
Definition WP6ContentListener.h:167
WP6ContentListener::pageMarginChange
void pageMarginChange(const unsigned char, const unsigned short) override
Definition WP6ContentListener.h:208
WP6ContentListener::spacingAfterParagraphChange
void spacingAfterParagraphChange(const double spacingRelative, const double spacingAbsolute) override
Definition WP6ContentListener.cpp:798
WP6ContentListener::_handleSubDocument
void _handleSubDocument(const WPXSubDocument *subDocument, WPXSubDocumentType subDocumentType, WPXTableList tableList, unsigned nextTableIndice=0) override
Definition WP6ContentListener.cpp:1768
WP6ContentListener::setDate
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
WP6ContentListener::setLeaderCharacter
void setLeaderCharacter(const unsigned character, const unsigned char numSpaces) override
Definition WP6ContentListener.cpp:393
WP6ContentListener::displayNumberReferenceGroupOn
void displayNumberReferenceGroupOn(const unsigned char subGroup, const unsigned char level) override
Definition WP6ContentListener.cpp:1028
WP6ContentListener::m_parseState
std::unique_ptr< WP6ContentParsingState > m_parseState
Definition WP6ContentListener.h:276
WP6ContentListener::defineTable
void defineTable(const unsigned char position, const unsigned short leftOffset) override
Definition WP6ContentListener.cpp:1272
WP6ContentListener::~WP6ContentListener
~WP6ContentListener() override
Definition WP6ContentListener.cpp:165
WP6ContentListener::suppressPageCharacteristics
void suppressPageCharacteristics(const unsigned char) override
Definition WP6ContentListener.h:228
WP6ContentListener::_changeList
void _changeList() override
Definition WP6ContentListener.cpp:1976
WP6ContentListener::highlightChange
void highlightChange(const bool isOn, const RGBSColor &color) override
Definition WP6ContentListener.cpp:689
WP6ContentListener::lineSpacingChange
void lineSpacingChange(const double lineSpacing) override
Definition WP6ContentListener.h:193
WP6ContentListener::styleGroupOn
void styleGroupOn(const unsigned char subGroup) override
Definition WP6ContentListener.cpp:1125
WP6ContentListener::m_outlineDefineHash
std::map< unsigned short, WP6OutlineDefinition > m_outlineDefineHash
Definition WP6ContentListener.h:278
WP6ContentListener::endTable
void endTable() override
Definition WP6ContentListener.cpp:1435
WP6ContentListener::endSubDocument
void endSubDocument() override
Definition WP6ContentListener.h:235
WP6ContentListener::endDocument
void endDocument() override
Definition WP6ContentListener.h:231
WP6ContentListener::globalOn
void globalOn(const unsigned char systemStyle) override
Definition WP6ContentListener.cpp:1184
WP6ContentListener::operator=
WP6ContentListener & operator=(const WP6ContentListener &)
WP6ContentListener::startSubDocument
void startSubDocument() override
Definition WP6ContentListener.h:171
WP6ContentListener::addTableColumnDefinition
void addTableColumnDefinition(const unsigned width, const unsigned leftGutter, const unsigned rightGutter, const unsigned attributes, const unsigned char alignment) override
Definition WP6ContentListener.cpp:1325
WP6ContentListener::paragraphNumberOff
void paragraphNumberOff() override
Definition WP6ContentListener.cpp:1014
WP6ContentListener::_flushText
void _flushText() override
Definition WP6ContentListener.cpp:1826
WP6ContentListener::insertTextBox
void insertTextBox(const WP6SubDocument *subDocument) override
Definition WP6ContentListener.cpp:1726
WP6ContentListener::pageNumberingChange
void pageNumberingChange(const WPXPageNumberPosition, const unsigned short, const unsigned short) override
Definition WP6ContentListener.h:207
WP6ContentListener::setPageNumber
void setPageNumber(const unsigned short) override
Definition WP6ContentListener.h:229
WP6ContentListener::marginChange
void marginChange(const unsigned char side, const unsigned short margin) override
Definition WP6ContentListener.cpp:814
WP6ContentListener::columnChange
void columnChange(const WPXTextColumnType columnType, const unsigned char numColumns, const std::vector< double > &columnWidth, const std::vector< bool > &isFixedWidth) override
Definition WP6ContentListener.cpp:920
WP6ContentListener::commentAnnotation
void commentAnnotation(const unsigned short textPID) override
Definition WP6ContentListener.cpp:1742
WP6ContentListener::startTable
void startTable() override
Definition WP6ContentListener.cpp:1350
WP6ContentListener::insertTab
void insertTab(const unsigned char tabType, double tabPosition) override
Definition WP6ContentListener.cpp:475
WP6ContentListener::attributeChange
void attributeChange(const bool isOn, const unsigned char attribute) override
Definition WP6ContentListener.cpp:725
WP6ContentListener::undoChange
void undoChange(const unsigned char undoType, const unsigned short undoLevel) override
Definition WP6ContentListener.cpp:1985
WP6ContentListener::justificationChange
void justificationChange(const unsigned char justification) override
Definition WP6ContentListener.h:197
WP6ContentListener::headerFooterGroup
void headerFooterGroup(const unsigned char, const unsigned char, const unsigned short) override
Definition WP6ContentListener.h:227
WP6ContentListener::insertRow
void insertRow(const unsigned short rowHeight, const bool isMinimumHeight, const bool isHeaderRow) override
Definition WP6ContentListener.cpp:1377
WP6ContentListener::styleGroupOff
void styleGroupOff(const unsigned char subGroup) override
Definition WP6ContentListener.cpp:1160
WP6ContentListener::updateOutlineDefinition
void updateOutlineDefinition(const unsigned short outlineHash, const unsigned char *numberingMethods, const unsigned char tabBehaviourFlag) override
Definition WP6ContentListener.cpp:998
WP6ContentListener::noteOn
void noteOn(const unsigned short textPID) override
Definition WP6ContentListener.cpp:1202
WP6ContentListener::boxOff
void boxOff() override
Definition WP6ContentListener.cpp:1692
WP6ContentListener::insertCell
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
WP6ContentListener::defineTabStops
void defineTabStops(const bool isRelative, const std::vector< WPXTabStop > &tabStops, const std::vector< bool > &usePreWP9LeaderMethods) override
Definition WP6ContentListener.cpp:458
WP6ContentListener::WP6ContentListener
WP6ContentListener(const WP6ContentListener &)
WP6ContentListener::WP6ContentListener
WP6ContentListener(std::list< WPXPageSpan > &pageList, WPXTableList tableList, librevenge::RVNGTextInterface *documentInterface)
Definition WP6ContentListener.cpp:157
WP6ContentListener::_paragraphNumberOn
void _paragraphNumberOn(const unsigned short outlineHash, const unsigned char level)
Definition WP6ContentListener.cpp:1815
WP6ContentListener::characterShadingChange
void characterShadingChange(const unsigned char shading) override
Definition WP6ContentListener.cpp:680
WP6ContentListener::displayNumberReferenceGroupOff
void displayNumberReferenceGroupOff(const unsigned char subGroup) override
Definition WP6ContentListener.cpp:1068
WP6ContentListener::paragraphNumberOn
void paragraphNumberOn(const unsigned short outlineHash, const unsigned char level, const unsigned char flag) override
Definition WP6ContentListener.cpp:1006
WP6ContentListener::fontChange
void fontChange(const unsigned short matchedFontPointSize, const unsigned short fontPID, const librevenge::RVNGString &fontName) override
Definition WP6ContentListener.cpp:700
WP6ContentListener::paragraphMarginChange
void paragraphMarginChange(const unsigned char side, const signed short margin) override
Definition WP6ContentListener.cpp:861
WP6ContentListener::insertEOL
void insertEOL() override
Definition WP6ContentListener.cpp:655
WP6ContentListener::boxOn
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
WP6ContentListener::pageFormChange
void pageFormChange(const unsigned short, const unsigned short, const WPXFormOrientation) override
Definition WP6ContentListener.h:209
WP6ContentListener::insertCharacter
void insertCharacter(unsigned character) override
Definition WP6ContentListener.cpp:413
WP6ContentListener::m_listDefinitions
std::map< unsigned, librevenge::RVNGPropertyList > m_listDefinitions
Definition WP6ContentListener.h:279
WP6ContentListener::handleLineBreak
void handleLineBreak() override
Definition WP6ContentListener.cpp:636
WP6Listener::WP6Listener
WP6Listener()
Definition WP6Listener.cpp:39
WP6OutlineDefinition::WP6OutlineDefinition
WP6OutlineDefinition()
Definition WP6ContentListener.cpp:54
WP6OutlineDefinition::_updateNumberingMethods
void _updateNumberingMethods(const unsigned char *numberingMethods)
Definition WP6ContentListener.cpp:72
WP6OutlineDefinition::getListType
WPXNumberingType getListType(int level)
Definition WP6ContentListener.h:147
WP6OutlineDefinition::m_listTypes
WPXNumberingType m_listTypes[WP6_NUM_LIST_LEVELS]
Definition WP6ContentListener.h:158
WP6OutlineDefinition::update
void update(const unsigned char *numberingMethods, const unsigned char tabBehaviourFlag)
Definition WP6ContentListener.cpp:67
WP6StyleStateSequence
Definition WP6ContentListener.h:55
WP6StyleStateSequence::clear
void clear()
Definition WP6ContentListener.h:74
WP6StyleStateSequence::getPreviousState
WP6StyleState getPreviousState() const
Definition WP6ContentListener.h:70
WP6StyleStateSequence::getCurrentState
WP6StyleState getCurrentState() const
Definition WP6ContentListener.h:66
WP6StyleStateSequence::m_stateSequence
std::vector< WP6StyleState > m_stateSequence
Definition WP6ContentListener.h:81
WP6StyleStateSequence::setCurrentState
void setCurrentState(WP6StyleState state)
Definition WP6ContentListener.h:61
WP6StyleStateSequence::WP6StyleStateSequence
WP6StyleStateSequence()
Definition WP6ContentListener.h:57
WP6SubDocument
Definition WP6SubDocument.h:34
WPXContentListener::lineSpacingChange
void lineSpacingChange(const double lineSpacing)
Definition WPXContentListener.cpp:1296
WPXContentListener::endSubDocument
void endSubDocument()
Definition WPXContentListener.cpp:180
WPXContentListener::endDocument
void endDocument()
Definition WPXContentListener.cpp:159
WPXContentListener::insertBreak
void insertBreak(const unsigned char breakType)
Definition WPXContentListener.cpp:1242
WPXContentListener::startSubDocument
void startSubDocument()
Definition WPXContentListener.cpp:153
WPXContentListener::WPXContentListener
WPXContentListener(std::list< WPXPageSpan > &pageList, librevenge::RVNGTextInterface *documentInterface)
Definition WPXContentListener.cpp:126
WPXContentListener::justificationChange
void justificationChange(const unsigned char justification)
Definition WPXContentListener.cpp:1304
WPXContentListener::startDocument
void startDocument()
Definition WPXContentListener.cpp:138
WPXSubDocument
Definition WPXSubDocument.h:37
WPXTableList
Definition WPXTableList.h:36
WPXTable
Definition WPXTable.h:51
WPXFormOrientation
WPXFormOrientation
Definition libwpd_internal.h:105
WPXPageNumberPosition
WPXPageNumberPosition
Definition libwpd_internal.h:97
WPD_NUM_ELEMENTS
#define WPD_NUM_ELEMENTS(array)
Definition libwpd_internal.h:53
WPXTextColumnType
WPXTextColumnType
Definition libwpd_internal.h:109
WPXNumberingType
WPXNumberingType
Definition libwpd_internal.h:92
WPXSubDocumentType
WPXSubDocumentType
Definition libwpd_internal.h:111
WPXVerticalAlignment
WPXVerticalAlignment
Definition libwpd_internal.h:107
WPXNoteType
WPXNoteType
Definition libwpd_internal.h:93
RGBSColor
Definition libwpd_internal.h:167
WP6ContentParsingState::m_noteTextPID
unsigned m_noteTextPID
Definition WP6ContentListener.h:115
WP6ContentParsingState::m_textAfterDisplayReference
librevenge::RVNGString m_textAfterDisplayReference
Definition WP6ContentListener.h:92
WP6ContentParsingState::m_numberText
librevenge::RVNGString m_numberText
Definition WP6ContentListener.h:91
WP6ContentParsingState::m_textBeforeNumber
librevenge::RVNGString m_textBeforeNumber
Definition WP6ContentListener.h:89
WP6ContentParsingState::m_leaderNumSpaces
unsigned char m_leaderNumSpaces
Definition WP6ContentListener.h:123
WP6ContentParsingState::m_isLinkOpened
bool m_isLinkOpened
Definition WP6ContentListener.h:120
WP6ContentParsingState::m_putativeListElementHasDisplayReferenceNumber
bool m_putativeListElementHasDisplayReferenceNumber
Definition WP6ContentListener.h:113
WP6ContentParsingState::m_paragraphMarginBottomRelative
double m_paragraphMarginBottomRelative
Definition WP6ContentListener.h:95
WP6ContentParsingState::WP6ContentParsingState
WP6ContentParsingState(const WP6ContentParsingState &)
WP6ContentParsingState::m_textBeforeDisplayReference
librevenge::RVNGString m_textBeforeDisplayReference
Definition WP6ContentListener.h:90
WP6ContentParsingState::m_numListExtraTabs
unsigned m_numListExtraTabs
Definition WP6ContentListener.h:100
WP6ContentParsingState::m_tempTabStops
std::vector< WPXTabStop > m_tempTabStops
Definition WP6ContentListener.h:124
WP6ContentParsingState::m_tempUsePreWP9LeaderMethod
std::vector< bool > m_tempUsePreWP9LeaderMethod
Definition WP6ContentListener.h:125
WP6ContentParsingState::m_tableList
WPXTableList m_tableList
Definition WP6ContentListener.h:103
WP6ContentParsingState::m_paragraphMarginBottomAbsolute
double m_paragraphMarginBottomAbsolute
Definition WP6ContentListener.h:96
WP6ContentParsingState::m_oldListLevel
unsigned char m_oldListLevel
Definition WP6ContentListener.h:110
WP6ContentParsingState::m_bodyText
librevenge::RVNGString m_bodyText
Definition WP6ContentListener.h:88
WP6ContentParsingState::m_putativeListElementHasParagraphNumber
bool m_putativeListElementHasParagraphNumber
Definition WP6ContentListener.h:112
WP6ContentParsingState::~WP6ContentParsingState
~WP6ContentParsingState()
Definition WP6ContentListener.cpp:152
WP6ContentParsingState::m_listTypeStack
std::stack< WP6ListType > m_listTypeStack
Definition WP6ContentListener.h:108
WP6ContentParsingState::m_styleStateSequence
WP6StyleStateSequence m_styleStateSequence
Definition WP6ContentListener.h:111
WP6ContentParsingState::m_currentTable
std::shared_ptr< WPXTable > m_currentTable
Definition WP6ContentListener.h:104
WP6ContentParsingState::m_isListReference
bool m_isListReference
Definition WP6ContentListener.h:101
WP6ContentParsingState::WP6ContentParsingState
WP6ContentParsingState(WPXTableList tableList, unsigned nextTableIndice=0)
Definition WP6ContentListener.cpp:105
WP6ContentParsingState::m_currentPageNumberingType
WPXNumberingType m_currentPageNumberingType
Definition WP6ContentListener.h:127
WP6ContentParsingState::m_textAfterNumber
librevenge::RVNGString m_textAfterNumber
Definition WP6ContentListener.h:93
WP6ContentParsingState::m_isFrameOpened
bool m_isFrameOpened
Definition WP6ContentListener.h:118
WP6ContentParsingState::m_listLevelStack
std::stack< unsigned > m_listLevelStack
Definition WP6ContentListener.h:107
WP6ContentParsingState::m_numNestedNotes
unsigned m_numNestedNotes
Definition WP6ContentListener.h:116
WP6ContentParsingState::m_numRemovedParagraphBreaks
unsigned m_numRemovedParagraphBreaks
Definition WP6ContentListener.h:98
WP6ContentParsingState::m_leaderCharacter
unsigned m_leaderCharacter
Definition WP6ContentListener.h:122
WP6ContentParsingState::m_currentOutlineHash
unsigned short m_currentOutlineHash
Definition WP6ContentListener.h:109
WP6ContentParsingState::m_nextTableIndice
unsigned m_nextTableIndice
Definition WP6ContentListener.h:105
WP6ContentParsingState::operator=
WP6ContentParsingState & operator=(const WP6ContentParsingState &)
WP6ListLevel
Definition WP6ContentListener.h:135
WP6ListLevel::m_isListElementOpenAtLevel
bool m_isListElementOpenAtLevel
Definition WP6ContentListener.h:137
WP6ListLevel::m_level
int m_level
Definition WP6ContentListener.h:136