libetonyek::IWAParser Class Referenceabstract

#include <IWAParser.h>

Inheritance diagram for libetonyek::IWAParser:
libetonyek::KEY6Parser libetonyek::NUM3Parser libetonyek::PAG5Parser

Classes

class  ObjectMessage
 
struct  ObjectRecord
 
struct  TableHeader
 
struct  TableInfo
 

Public Types

typedef std::map< unsigned, std::pair< std::string, RVNGInputStreamPtr_t > > FileMap_t
 
typedef std::map< unsigned, std::pair< unsigned, ObjectRecord > > RecordMap_t
 

Public Member Functions

 IWAParser (const RVNGInputStreamPtr_t &fragments, const RVNGInputStreamPtr_t &package, IWORKCollector &collector)
 
bool parse ()
 

Protected Types

typedef std::map< unsigned, IWORKStylePtr_tStyleMap_t
 
typedef std::function< void(unsigned, IWORKStylePtr_t &)> StyleParseFun_t
 

Protected Member Functions

bool readFill (const IWAMessage &msg, IWORKFill &fill)
 
bool dispatchShape (unsigned id)
 
bool parseText (unsigned id)
 
void parseComment (unsigned id)
 
bool parseShapePlacement (const IWAMessage &msg, IWORKGeometryPtr_t &geometry)
 
const IWORKStylePtr_t queryCharacterStyle (unsigned id) const
 
const IWORKStylePtr_t queryParagraphStyle (unsigned id) const
 
const IWORKStylePtr_t queryGraphicStyle (unsigned id) const
 
const IWORKStylePtr_t queryCellStyle (unsigned id) const
 
const IWORKStylePtr_t queryTableStyle (unsigned id) const
 
const IWORKStylePtr_t queryListStyle (unsigned id) const
 
const IWORKStylePtr_t queryStyle (unsigned id, StyleMap_t &styleMap, StyleParseFun_t parse) const
 

Static Protected Member Functions

static boost::optional< unsigned > readRef (const IWAMessage &msg, unsigned field)
 
static std::deque< unsigned > readRefs (const IWAMessage &msg, unsigned field)
 
static boost::optional< IWORKPositionreadPosition (const IWAMessage &msg, unsigned field)
 
static boost::optional< IWORKSizereadSize (const IWAMessage &msg, unsigned field)
 
static boost::optional< IWORKColorreadColor (const IWAMessage &msg, unsigned field)
 
static void readStroke (const IWAMessage &msg, IWORKStroke &stroke)
 
static void readGradient (const IWAMessage &msg, IWORKGradient &gradient)
 
static void readShadow (const IWAMessage &msg, IWORKShadow &shadow)
 
static void readPadding (const IWAMessage &msg, IWORKPadding &padding)
 

Protected Attributes

IWORKLanguageManager m_langManager
 
std::shared_ptr< IWORKTextm_currentText
 

Private Types

typedef std::map< unsigned, boost::variant< std::string, unsigned > > DataList_t
 

Private Member Functions

 IWAParser (const IWAParser &)
 
IWAParseroperator= (const IWAParser &)
 
virtual bool parseDocument ()=0
 
void queryObject (unsigned id, unsigned &type, boost::optional< IWAMessage > &msg) const
 
const RVNGInputStreamPtr_t queryFile (unsigned id) const
 
void parseObjectIndex ()
 
void scanFragment (unsigned id)
 
void scanFragment (unsigned id, const RVNGInputStreamPtr_t &stream)
 
void parseCharacterStyle (unsigned id, IWORKStylePtr_t &style)
 
void parseParagraphStyle (unsigned id, IWORKStylePtr_t &style)
 
void parseGraphicStyle (unsigned id, IWORKStylePtr_t &style)
 
void parseCellStyle (unsigned id, IWORKStylePtr_t &style)
 
void parseTableStyle (unsigned id, IWORKStylePtr_t &style)
 
void parseListStyle (unsigned id, IWORKStylePtr_t &style)
 
void parseTabularModel (unsigned id)
 
void parseDataList (unsigned id, DataList_t &dataList)
 
void parseTile (unsigned id)
 
void parseHeaders (unsigned id, TableHeader &header)
 
void parseLink (unsigned id, std::string &url)
 
bool parseDrawableShape (const IWAMessage &msg)
 
bool parseGroup (const IWAMessage &msg)
 
bool parseShapePlacement (const IWAMessage &msg)
 
void parseCharacterProperties (const IWAMessage &msg, IWORKPropertyMap &props)
 
bool parseImage (const IWAMessage &msg)
 
bool parseTabularInfo (const IWAMessage &msg)
 

Private Attributes

const RVNGInputStreamPtr_t m_fragments
 
const RVNGInputStreamPtr_t m_package
 
IWORKCollectorm_collector
 
FileMap_t m_fragmentMap
 
RecordMap_t m_fragmentObjectMap
 
FileMap_t m_fileMap
 
std::deque< unsigned > m_visited
 
StyleMap_t m_charStyles
 
StyleMap_t m_paraStyles
 
StyleMap_t m_graphicStyles
 
StyleMap_t m_cellStyles
 
StyleMap_t m_tableStyles
 
StyleMap_t m_listStyles
 
IWORKTableNameMapPtr_t m_tableNameMap
 
std::shared_ptr< TableInfom_currentTable
 

Friends

class ObjectMessage
 

Member Typedef Documentation

◆ DataList_t

typedef std::map<unsigned, boost::variant<std::string, unsigned> > libetonyek::IWAParser::DataList_t
private

◆ FileMap_t

typedef std::map<unsigned, std::pair<std::string, RVNGInputStreamPtr_t> > libetonyek::IWAParser::FileMap_t

◆ RecordMap_t

typedef std::map<unsigned, std::pair<unsigned, ObjectRecord> > libetonyek::IWAParser::RecordMap_t

◆ StyleMap_t

typedef std::map<unsigned, IWORKStylePtr_t> libetonyek::IWAParser::StyleMap_t
protected

◆ StyleParseFun_t

typedef std::function<void(unsigned, IWORKStylePtr_t &)> libetonyek::IWAParser::StyleParseFun_t
protected

Constructor & Destructor Documentation

◆ IWAParser() [1/2]

libetonyek::IWAParser::IWAParser ( const IWAParser )
private

◆ IWAParser() [2/2]

libetonyek::IWAParser::IWAParser ( const RVNGInputStreamPtr_t fragments,
const RVNGInputStreamPtr_t package,
IWORKCollector collector 
)

Member Function Documentation

◆ dispatchShape()

bool libetonyek::IWAParser::dispatchShape ( unsigned  id)
protected

◆ operator=()

IWAParser& libetonyek::IWAParser::operator= ( const IWAParser )
private

◆ parse()

bool libetonyek::IWAParser::parse ( )

◆ parseCellStyle()

void libetonyek::IWAParser::parseCellStyle ( unsigned  id,
IWORKStylePtr_t style 
)
private

Referenced by queryCellStyle().

◆ parseCharacterProperties()

void libetonyek::IWAParser::parseCharacterProperties ( const IWAMessage msg,
IWORKPropertyMap props 
)
private

◆ parseCharacterStyle()

void libetonyek::IWAParser::parseCharacterStyle ( unsigned  id,
IWORKStylePtr_t style 
)
private

Referenced by queryCharacterStyle().

◆ parseComment()

void libetonyek::IWAParser::parseComment ( unsigned  id)
protected

◆ parseDataList()

void libetonyek::IWAParser::parseDataList ( unsigned  id,
DataList_t dataList 
)
private

Referenced by parseTabularModel().

◆ parseDocument()

virtual bool libetonyek::IWAParser::parseDocument ( )
privatepure virtual

◆ parseDrawableShape()

bool libetonyek::IWAParser::parseDrawableShape ( const IWAMessage msg)
private

Referenced by dispatchShape().

◆ parseGraphicStyle()

void libetonyek::IWAParser::parseGraphicStyle ( unsigned  id,
IWORKStylePtr_t style 
)
private

Referenced by queryGraphicStyle().

◆ parseGroup()

bool libetonyek::IWAParser::parseGroup ( const IWAMessage msg)
private

Referenced by dispatchShape().

◆ parseHeaders()

void libetonyek::IWAParser::parseHeaders ( unsigned  id,
TableHeader header 
)
private

Referenced by parseTabularModel().

◆ parseImage()

bool libetonyek::IWAParser::parseImage ( const IWAMessage msg)
private

Referenced by dispatchShape().

◆ parseLink()

void libetonyek::IWAParser::parseLink ( unsigned  id,
std::string &  url 
)
private

Referenced by parseText().

◆ parseListStyle()

void libetonyek::IWAParser::parseListStyle ( unsigned  id,
IWORKStylePtr_t style 
)
private

Referenced by queryListStyle().

◆ parseObjectIndex()

void libetonyek::IWAParser::parseObjectIndex ( )
private

Referenced by parse().

◆ parseParagraphStyle()

void libetonyek::IWAParser::parseParagraphStyle ( unsigned  id,
IWORKStylePtr_t style 
)
private

Referenced by queryParagraphStyle().

◆ parseShapePlacement() [1/2]

bool libetonyek::IWAParser::parseShapePlacement ( const IWAMessage msg,
IWORKGeometryPtr_t geometry 
)
protected

◆ parseShapePlacement() [2/2]

bool libetonyek::IWAParser::parseShapePlacement ( const IWAMessage msg)
private

◆ parseTableStyle()

void libetonyek::IWAParser::parseTableStyle ( unsigned  id,
IWORKStylePtr_t style 
)
private

Referenced by queryTableStyle().

◆ parseTabularInfo()

bool libetonyek::IWAParser::parseTabularInfo ( const IWAMessage msg)
private

Referenced by dispatchShape().

◆ parseTabularModel()

void libetonyek::IWAParser::parseTabularModel ( unsigned  id)
private

Referenced by parseTabularInfo().

◆ parseText()

◆ parseTile()

void libetonyek::IWAParser::parseTile ( unsigned  id)
private

Referenced by parseTabularModel().

◆ queryCellStyle()

const IWORKStylePtr_t libetonyek::IWAParser::queryCellStyle ( unsigned  id) const
protected

◆ queryCharacterStyle()

const IWORKStylePtr_t libetonyek::IWAParser::queryCharacterStyle ( unsigned  id) const
protected

Referenced by parseCharacterStyle(), and parseText().

◆ queryFile()

const RVNGInputStreamPtr_t libetonyek::IWAParser::queryFile ( unsigned  id) const
private

Referenced by parseImage(), and readFill().

◆ queryGraphicStyle()

const IWORKStylePtr_t libetonyek::IWAParser::queryGraphicStyle ( unsigned  id) const
protected

◆ queryListStyle()

const IWORKStylePtr_t libetonyek::IWAParser::queryListStyle ( unsigned  id) const
protected

Referenced by parseListStyle(), and parseText().

◆ queryObject()

void libetonyek::IWAParser::queryObject ( unsigned  id,
unsigned &  type,
boost::optional< IWAMessage > &  msg 
) const
private

◆ queryParagraphStyle()

const IWORKStylePtr_t libetonyek::IWAParser::queryParagraphStyle ( unsigned  id) const
protected

◆ queryStyle()

const IWORKStylePtr_t libetonyek::IWAParser::queryStyle ( unsigned  id,
StyleMap_t styleMap,
StyleParseFun_t  parse 
) const
protected

◆ queryTableStyle()

const IWORKStylePtr_t libetonyek::IWAParser::queryTableStyle ( unsigned  id) const
protected

◆ readColor()

boost::optional< IWORKColor > libetonyek::IWAParser::readColor ( const IWAMessage msg,
unsigned  field 
)
staticprotected

◆ readFill()

bool libetonyek::IWAParser::readFill ( const IWAMessage msg,
IWORKFill fill 
)
protected

◆ readGradient()

void libetonyek::IWAParser::readGradient ( const IWAMessage msg,
IWORKGradient gradient 
)
staticprotected

Referenced by readFill().

◆ readPadding()

void libetonyek::IWAParser::readPadding ( const IWAMessage msg,
IWORKPadding padding 
)
staticprotected

Referenced by parseCellStyle().

◆ readPosition()

boost::optional< IWORKPosition > libetonyek::IWAParser::readPosition ( const IWAMessage msg,
unsigned  field 
)
staticprotected

◆ readRef()

◆ readRefs()

std::deque< unsigned > libetonyek::IWAParser::readRefs ( const IWAMessage msg,
unsigned  field 
)
staticprotected

◆ readShadow()

void libetonyek::IWAParser::readShadow ( const IWAMessage msg,
IWORKShadow shadow 
)
staticprotected

◆ readSize()

boost::optional< IWORKSize > libetonyek::IWAParser::readSize ( const IWAMessage msg,
unsigned  field 
)
staticprotected

◆ readStroke()

void libetonyek::IWAParser::readStroke ( const IWAMessage msg,
IWORKStroke stroke 
)
staticprotected

◆ scanFragment() [1/2]

void libetonyek::IWAParser::scanFragment ( unsigned  id)
private

Referenced by parseObjectIndex(), and queryObject().

◆ scanFragment() [2/2]

void libetonyek::IWAParser::scanFragment ( unsigned  id,
const RVNGInputStreamPtr_t stream 
)
private

Friends And Related Function Documentation

◆ ObjectMessage

friend class ObjectMessage
friend

Member Data Documentation

◆ m_cellStyles

StyleMap_t libetonyek::IWAParser::m_cellStyles
mutableprivate

Referenced by queryCellStyle().

◆ m_charStyles

StyleMap_t libetonyek::IWAParser::m_charStyles
mutableprivate

Referenced by queryCharacterStyle().

◆ m_collector

◆ m_currentTable

std::shared_ptr<TableInfo> libetonyek::IWAParser::m_currentTable
private

Referenced by parseTabularModel(), and parseTile().

◆ m_currentText

◆ m_fileMap

FileMap_t libetonyek::IWAParser::m_fileMap
mutableprivate

Referenced by parseObjectIndex(), and queryFile().

◆ m_fragmentMap

FileMap_t libetonyek::IWAParser::m_fragmentMap
private

Referenced by parseObjectIndex(), and scanFragment().

◆ m_fragmentObjectMap

RecordMap_t libetonyek::IWAParser::m_fragmentObjectMap
mutableprivate

◆ m_fragments

const RVNGInputStreamPtr_t libetonyek::IWAParser::m_fragments
private

Referenced by scanFragment().

◆ m_graphicStyles

StyleMap_t libetonyek::IWAParser::m_graphicStyles
mutableprivate

Referenced by queryGraphicStyle().

◆ m_langManager

◆ m_listStyles

StyleMap_t libetonyek::IWAParser::m_listStyles
mutableprivate

◆ m_package

const RVNGInputStreamPtr_t libetonyek::IWAParser::m_package
private

Referenced by parseObjectIndex(), and queryFile().

◆ m_paraStyles

StyleMap_t libetonyek::IWAParser::m_paraStyles
mutableprivate

Referenced by queryParagraphStyle().

◆ m_tableNameMap

IWORKTableNameMapPtr_t libetonyek::IWAParser::m_tableNameMap
private

Referenced by parseTabularModel().

◆ m_tableStyles

StyleMap_t libetonyek::IWAParser::m_tableStyles
mutableprivate

Referenced by queryListStyle(), and queryTableStyle().

◆ m_visited

std::deque<unsigned> libetonyek::IWAParser::m_visited
private

The documentation for this class was generated from the following files:

Generated for libetonyek by doxygen 1.8.13